summaryrefslogtreecommitdiffstats
path: root/llvm/test/Analysis/ScalarEvolution/div-overflow.ll
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2009-05-08 23:11:16 +0000
committerDan Gohman <gohman@apple.com>2009-05-08 23:11:16 +0000
commit35dc9b65edab933134a9998aa04042e6aa42c9cc (patch)
treecbcf0b94e349d7f8ae61ba81b95df509ddd7ce68 /llvm/test/Analysis/ScalarEvolution/div-overflow.ll
parent884a8996c53d173b9f53ec150cb8117c36364e1d (diff)
downloadbcm5719-llvm-35dc9b65edab933134a9998aa04042e6aa42c9cc.tar.gz
bcm5719-llvm-35dc9b65edab933134a9998aa04042e6aa42c9cc.zip
Fix bogus overflow checks by replacing them with actual
overflow checks. llvm-svn: 71284
Diffstat (limited to 'llvm/test/Analysis/ScalarEvolution/div-overflow.ll')
-rw-r--r--llvm/test/Analysis/ScalarEvolution/div-overflow.ll10
1 files changed, 10 insertions, 0 deletions
diff --git a/llvm/test/Analysis/ScalarEvolution/div-overflow.ll b/llvm/test/Analysis/ScalarEvolution/div-overflow.ll
new file mode 100644
index 00000000000..cb64b856a77
--- /dev/null
+++ b/llvm/test/Analysis/ScalarEvolution/div-overflow.ll
@@ -0,0 +1,10 @@
+; RUN: llvm-as < %s | opt -scalar-evolution -analyze -disable-output \
+; RUN: | grep {\\--> ((-128 \\* %a) /u -128)}
+
+; Don't let ScalarEvolution fold this div away.
+
+define i8 @foo(i8 %a) {
+ %t0 = shl i8 %a, 7
+ %t1 = lshr i8 %t0, 7
+ ret i8 %t1
+}
OpenPOWER on IntegriCloud