summaryrefslogtreecommitdiffstats
path: root/test/Transforms/Reassociate/absorption.ll
diff options
context:
space:
mode:
Diffstat (limited to 'test/Transforms/Reassociate/absorption.ll')
-rw-r--r--test/Transforms/Reassociate/absorption.ll11
1 files changed, 11 insertions, 0 deletions
diff --git a/test/Transforms/Reassociate/absorption.ll b/test/Transforms/Reassociate/absorption.ll
new file mode 100644
index 0000000..2ccc2b5
--- /dev/null
+++ b/test/Transforms/Reassociate/absorption.ll
@@ -0,0 +1,11 @@
+; RUN: opt -S -reassociate < %s | FileCheck %s
+
+; Check that if constants combine to an absorbing value then the expression is
+; evaluated as the absorbing value.
+define i8 @foo(i8 %x) {
+ %tmp1 = or i8 %x, 127
+ %tmp2 = or i8 %tmp1, 128
+ ret i8 %tmp2
+; CHECK: @foo
+; CHECK: ret i8 -1
+}
OpenPOWER on IntegriCloud