[FastISel][AArch64 and X86] Don't emit stores for UNDEF arguments during function...
[oota-llvm.git] / test / CodeGen / X86 / pr2659.ll
index 01bb9f14f64183225c50d5697b3b2d577b43e1d4..8003588a2e84c720c19a8bb4479216a5b6a5b652 100644 (file)
@@ -1,4 +1,4 @@
-; RUN: llc < %s -march=x86 -mtriple=i686-apple-darwin9.4.0 | grep movl | count 6
+; RUN: llc < %s -march=x86 -mtriple=i686-apple-darwin9.4.0 -disable-branch-fold | FileCheck %s
 ; PR2659
 
 target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128"
@@ -13,6 +13,18 @@ forcond.preheader:              ; preds = %entry
   %cmp44 = icmp eq i32 %k, 0            ; <i1> [#uses=1]
   br i1 %cmp44, label %afterfor, label %forbody
 
+; CHECK: %forcond.preheader
+; CHECK: movl $1
+; CHECK-NOT: xorl
+; CHECK-NOT: movl
+; CHECK-NOT: LBB
+; CHECK: je
+
+; There should be no moves required in the for loop body.
+; CHECK: %forbody
+; CHECK-NOT: mov
+; CHECK: jbe
+
 ifthen:         ; preds = %entry
   ret i32 0