fix PR6533 by updating the br(xor) code to remember the case
[oota-llvm.git] / test / CodeGen / PowerPC / cmp-cmp.ll
index 5a9e8e8269472b84a99bf0967ed136c87f4772c3..35a5e427853e4b27f7af0b6209e04f547002a733 100644 (file)
@@ -1,16 +1,13 @@
-; RUN: llvm-as < %s | llc -march=ppc32 &&
-; RUN: llvm-as < %s | llc -march=ppc32 | not grep mfcr
-
-void %test(long %X) {
-        %tmp1 = and long %X, 3          ; <long> [#uses=1]
-        %tmp = setgt long %tmp1, 2              ; <bool> [#uses=1]
-        br bool %tmp, label %UnifiedReturnBlock, label %cond_true
-
-cond_true:              ; preds = %entry
-        tail call void %test(long 0)
+; RUN: llc < %s -march=ppc32 | not grep mfcr
+
+define void @test(i64 %X) {
+        %tmp1 = and i64 %X, 3           ; <i64> [#uses=1]
+        %tmp = icmp sgt i64 %tmp1, 2            ; <i1> [#uses=1]
+        br i1 %tmp, label %UnifiedReturnBlock, label %cond_true
+cond_true:              ; preds = %0
+        tail call void @test( i64 0 )
         ret void
-
-UnifiedReturnBlock:             ; preds = %entry
+UnifiedReturnBlock:             ; preds = %0
         ret void
 }