define i32 @test1(i32 %a, i32 %b) nounwind ssp {
entry:
-; CHECK: test1:
+; CHECK-LABEL: test1:
; CHECK: xorb
; CHECK-NOT: andb
; CHECK-NOT: shrb
return: ; preds = %entry
ret i32 192
-; CHECK: test2:
+; CHECK-LABEL: test2:
; CHECK: movl 4(%esp), %eax
; CHECK-NEXT: orl 8(%esp), %eax
; CHECK-NEXT: jne LBB1_2
return: ; preds = %entry
ret i32 192
-; CHECK: test3:
+; CHECK-LABEL: test3:
; CHECK: movl 4(%esp), %eax
; CHECK-NEXT: orl 8(%esp), %eax
; CHECK-NEXT: je LBB2_2
define <4 x float> @test5(<4 x float> %a, <4 x float> %b) nounwind {
entry:
-; CHECK: test5:
+; CHECK-LABEL: test5:
; CHECK: ptest
; CHECK-NEXT: jne
; CHECK: ret
ret <4 x float> %e
}
-define <4 x float> @test6(<4 x float> %a, <4 x float> %b) nounwind {
-entry:
-; CHECK: test6:
-; CHECK: ptest
-; CHECK-NEXT: je
-; CHECK: ret
-
- %res = call i32 @llvm.x86.sse41.ptestz(<4 x float> %a, <4 x float> %a) nounwind
- %one = icmp eq i32 %res, 0
- br i1 %one, label %bb1, label %bb2
-
-bb1:
- %c = fadd <4 x float> %b, < float 1.000000e+002, float 2.000000e+002, float 3.000000e+002, float 4.000000e+002 >
- br label %return
-
-bb2:
- %d = fdiv <4 x float> %b, < float 1.000000e+002, float 2.000000e+002, float 3.000000e+002, float 4.000000e+002 >
- br label %return
-
-return:
- %e = phi <4 x float> [%c, %bb1], [%d, %bb2]
- ret <4 x float> %e
-}
-
define <4 x float> @test7(<4 x float> %a, <4 x float> %b) nounwind {
entry:
-; CHECK: test7:
+; CHECK-LABEL: test7:
; CHECK: ptest
; CHECK-NEXT: jne
; CHECK: ret
define <4 x float> @test8(<4 x float> %a, <4 x float> %b) nounwind {
entry:
-; CHECK: test8:
+; CHECK-LABEL: test8:
; CHECK: ptest
; CHECK-NEXT: jae
; CHECK: ret
ret <4 x float> %e
}
-define <4 x float> @test9(<4 x float> %a, <4 x float> %b) nounwind {
-entry:
-; CHECK: test9:
-; CHECK: ptest
-; CHECK-NEXT: jb
-; CHECK: ret
-
- %res = call i32 @llvm.x86.sse41.ptestc(<4 x float> %a, <4 x float> %a) nounwind
- %one = icmp eq i32 %res, 0
- br i1 %one, label %bb1, label %bb2
-
-bb1:
- %c = fadd <4 x float> %b, < float 1.000000e+002, float 2.000000e+002, float 3.000000e+002, float 4.000000e+002 >
- br label %return
-
-bb2:
- %d = fdiv <4 x float> %b, < float 1.000000e+002, float 2.000000e+002, float 3.000000e+002, float 4.000000e+002 >
- br label %return
-
-return:
- %e = phi <4 x float> [%c, %bb1], [%d, %bb2]
- ret <4 x float> %e
-}
-
define <4 x float> @test10(<4 x float> %a, <4 x float> %b) nounwind {
entry:
-; CHECK: test10:
+; CHECK-LABEL: test10:
; CHECK: ptest
; CHECK-NEXT: jae
; CHECK: ret
define <4 x float> @test11(<4 x float> %a, <4 x float> %b) nounwind {
entry:
-; CHECK: test11:
+; CHECK-LABEL: test11:
; CHECK: ptest
; CHECK-NEXT: jne
; CHECK: ret
define <4 x float> @test12(<4 x float> %a, <4 x float> %b) nounwind {
entry:
-; CHECK: test12:
+; CHECK-LABEL: test12:
; CHECK: ptest
; CHECK-NEXT: je
; CHECK: ret
ret <4 x float> %e
}
-define <4 x float> @test13(<4 x float> %a, <4 x float> %b) nounwind {
-entry:
-; CHECK: test13:
-; CHECK: ptest
-; CHECK-NEXT: jae
-; CHECK: ret
-
- %res = call i32 @llvm.x86.sse41.ptestc(<4 x float> %a, <4 x float> %a) nounwind
- %one = icmp eq i32 %res, 1
- br i1 %one, label %bb1, label %bb2
-
-bb1:
- %c = fadd <4 x float> %b, < float 1.000000e+002, float 2.000000e+002, float 3.000000e+002, float 4.000000e+002 >
- br label %return
-
-bb2:
- %d = fdiv <4 x float> %b, < float 1.000000e+002, float 2.000000e+002, float 3.000000e+002, float 4.000000e+002 >
- br label %return
-
-return:
- %e = phi <4 x float> [%c, %bb1], [%d, %bb2]
- ret <4 x float> %e
-}
-
-define <4 x float> @test14(<4 x float> %a, <4 x float> %b) nounwind {
-entry:
-; CHECK: test14:
-; CHECK: ptest
-; CHECK-NEXT: jb
-; CHECK: ret
-
- %res = call i32 @llvm.x86.sse41.ptestc(<4 x float> %a, <4 x float> %a) nounwind
- %one = icmp ne i32 %res, 1
- br i1 %one, label %bb1, label %bb2
-
-bb1:
- %c = fadd <4 x float> %b, < float 1.000000e+002, float 2.000000e+002, float 3.000000e+002, float 4.000000e+002 >
- br label %return
-
-bb2:
- %d = fdiv <4 x float> %b, < float 1.000000e+002, float 2.000000e+002, float 3.000000e+002, float 4.000000e+002 >
- br label %return
-
-return:
- %e = phi <4 x float> [%c, %bb1], [%d, %bb2]
- ret <4 x float> %e
-}