CodeGen peephole: fold redundant phys reg copies
[oota-llvm.git] / test / CodeGen / X86 / pr5145.ll
index d048db8a850d52bced2915e61010833e2afe9c54..4dee5f8d7d2a8b60b124a58439bc3c04c8ec5a32 100644 (file)
@@ -5,31 +5,27 @@ define void @atomic_maxmin_i8() {
 ; CHECK: atomic_maxmin_i8
   %1 = atomicrmw max  i8* @sc8, i8 5 acquire
 ; CHECK: [[LABEL1:\.?LBB[0-9]+_[0-9]+]]:
-; CHECK: cmpb
-; CHECK: cmovl
-; CHECK: lock
-; CHECK-NEXT: cmpxchgb
+; CHECK: movsbl
+; CHECK: cmpl
+; CHECK: lock cmpxchgb
 ; CHECK: jne [[LABEL1]]
   %2 = atomicrmw min  i8* @sc8, i8 6 acquire
 ; CHECK: [[LABEL3:\.?LBB[0-9]+_[0-9]+]]:
-; CHECK: cmpb
-; CHECK: cmovg
-; CHECK: lock
-; CHECK-NEXT: cmpxchgb
+; CHECK: movsbl
+; CHECK: cmpl
+; CHECK: lock cmpxchgb
 ; CHECK: jne [[LABEL3]]
   %3 = atomicrmw umax i8* @sc8, i8 7 acquire
 ; CHECK: [[LABEL5:\.?LBB[0-9]+_[0-9]+]]:
-; CHECK: cmpb
-; CHECK: cmovb
-; CHECK: lock
-; CHECK-NEXT: cmpxchgb
+; CHECK: movzbl
+; CHECK: cmpl
+; CHECK: lock cmpxchgb
 ; CHECK: jne [[LABEL5]]
   %4 = atomicrmw umin i8* @sc8, i8 8 acquire
 ; CHECK: [[LABEL7:\.?LBB[0-9]+_[0-9]+]]:
-; CHECK: cmpb
-; CHECK: cmova
-; CHECK: lock
-; CHECK-NEXT: cmpxchgb
+; CHECK: movzbl
+; CHECK: cmpl
+; CHECK: lock cmpxchgb
 ; CHECK: jne [[LABEL7]]
   ret void
 }