@@ -22,7 +22,7 @@ define i32 @test2(i32 %A) {
22
22
23
23
define i32 @sdiv_by_minus1 (i32 %A ) {
24
24
; CHECK-LABEL: @sdiv_by_minus1(
25
- ; CHECK-NEXT: [[B:%.*]] = sub i32 0, [[A:%.*]]
25
+ ; CHECK-NEXT: [[B:%.*]] = sub nsw i32 0, [[A:%.*]]
26
26
; CHECK-NEXT: ret i32 [[B]]
27
27
;
28
28
%B = sdiv i32 %A , -1
@@ -31,7 +31,7 @@ define i32 @sdiv_by_minus1(i32 %A) {
31
31
32
32
define <2 x i64 > @sdiv_by_minus1_vec (<2 x i64 > %x ) {
33
33
; CHECK-LABEL: @sdiv_by_minus1_vec(
34
- ; CHECK-NEXT: [[DIV:%.*]] = sub <2 x i64> zeroinitializer, [[X:%.*]]
34
+ ; CHECK-NEXT: [[DIV:%.*]] = sub nsw <2 x i64> zeroinitializer, [[X:%.*]]
35
35
; CHECK-NEXT: ret <2 x i64> [[DIV]]
36
36
;
37
37
%div = sdiv <2 x i64 > %x , <i64 -1 , i64 -1 >
@@ -48,7 +48,7 @@ define <2 x i64> @sdiv_by_minus1_vec_poison_elt(<2 x i64> %x) {
48
48
49
49
define i32 @sdiv_by_sext_minus1 (i1 %x , i32 %y ) {
50
50
; CHECK-LABEL: @sdiv_by_sext_minus1(
51
- ; CHECK-NEXT: [[DIV:%.*]] = sub i32 0, [[Y:%.*]]
51
+ ; CHECK-NEXT: [[DIV:%.*]] = sub nsw i32 0, [[Y:%.*]]
52
52
; CHECK-NEXT: ret i32 [[DIV]]
53
53
;
54
54
%sext = sext i1 %x to i32
@@ -58,7 +58,7 @@ define i32 @sdiv_by_sext_minus1(i1 %x, i32 %y) {
58
58
59
59
define <2 x i32 > @sdiv_by_sext_minus1_vec (<2 x i1 > %x , <2 x i32 > %y ) {
60
60
; CHECK-LABEL: @sdiv_by_sext_minus1_vec(
61
- ; CHECK-NEXT: [[DIV:%.*]] = sub <2 x i32> zeroinitializer, [[Y:%.*]]
61
+ ; CHECK-NEXT: [[DIV:%.*]] = sub nsw <2 x i32> zeroinitializer, [[Y:%.*]]
62
62
; CHECK-NEXT: ret <2 x i32> [[DIV]]
63
63
;
64
64
%sext = sext <2 x i1 > %x to <2 x i32 >
@@ -1308,8 +1308,8 @@ define i32 @udiv_select_of_constants_divisor(i1 %b, i32 %x) {
1308
1308
define i1 @sdiv_one_icmpeq_one (i32 %x ) {
1309
1309
; CHECK-LABEL: @sdiv_one_icmpeq_one(
1310
1310
; CHECK-NEXT: [[X_FR:%.*]] = freeze i32 [[X:%.*]]
1311
- ; CHECK-NEXT: [[B :%.*]] = icmp eq i32 [[X_FR]], 1
1312
- ; CHECK-NEXT: ret i1 [[B ]]
1311
+ ; CHECK-NEXT: [[B1 :%.*]] = icmp eq i32 [[X_FR]], 1
1312
+ ; CHECK-NEXT: ret i1 [[B1 ]]
1313
1313
;
1314
1314
%A = sdiv i32 1 , %x
1315
1315
%B = icmp eq i32 %A , 1
@@ -1319,8 +1319,8 @@ define i1 @sdiv_one_icmpeq_one(i32 %x) {
1319
1319
define i1 @sdiv_one_icmpeq_negone (i32 %x ) {
1320
1320
; CHECK-LABEL: @sdiv_one_icmpeq_negone(
1321
1321
; CHECK-NEXT: [[X_FR:%.*]] = freeze i32 [[X:%.*]]
1322
- ; CHECK-NEXT: [[B :%.*]] = icmp eq i32 [[X_FR]], -1
1323
- ; CHECK-NEXT: ret i1 [[B ]]
1322
+ ; CHECK-NEXT: [[B1 :%.*]] = icmp eq i32 [[X_FR]], -1
1323
+ ; CHECK-NEXT: ret i1 [[B1 ]]
1324
1324
;
1325
1325
%A = sdiv i32 1 , %x
1326
1326
%B = icmp eq i32 %A , -1
0 commit comments