[llvm-commits] [llvm] r76526 - /llvm/trunk/test/Analysis/ScalarEvolution/zext-wrap.ll

Dan Gohman gohman at apple.com
Mon Jul 20 17:51:18 PDT 2009


Author: djg
Date: Mon Jul 20 19:50:52 2009
New Revision: 76526

URL: http://llvm.org/viewvc/llvm-project?rev=76526&view=rev
Log:
Add a testcase for PR4569, which is now fixed.

Added:
    llvm/trunk/test/Analysis/ScalarEvolution/zext-wrap.ll

Added: llvm/trunk/test/Analysis/ScalarEvolution/zext-wrap.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Analysis/ScalarEvolution/zext-wrap.ll?rev=76526&view=auto

==============================================================================
--- llvm/trunk/test/Analysis/ScalarEvolution/zext-wrap.ll (added)
+++ llvm/trunk/test/Analysis/ScalarEvolution/zext-wrap.ll Mon Jul 20 19:50:52 2009
@@ -0,0 +1,24 @@
+; RUN: llvm-as < %s | opt -analyze -scalar-evolution -disable-output \
+; RUN:  | FileCheck %s
+; PR4569
+
+define i16 @main() nounwind {
+entry:
+        br label %bb.i
+
+bb.i:           ; preds = %bb1.i, %bb.nph
+        %l_95.0.i1 = phi i8 [ %tmp1, %bb.i ], [ 0, %entry ]
+
+; This cast shouldn't be folded into the addrec.
+; CHECK: %tmp = zext i8 %l_95.0.i1 to i16
+; CHECK: -->  (zext i8 {0,+,-1}<bb.i> to i16)    Exits: 2
+
+        %tmp = zext i8 %l_95.0.i1 to i16
+
+        %tmp1 = add i8 %l_95.0.i1, -1
+        %phitmp = icmp eq i8 %tmp1, 1
+        br i1 %phitmp, label %bb1.i.func_36.exit_crit_edge, label %bb.i
+
+bb1.i.func_36.exit_crit_edge:
+        ret i16 %tmp
+}





More information about the llvm-commits mailing list