@@ -1515,10 +1515,8 @@ define void @test_trunc_bittest(i8 %a) {
1515
1515
; CHECK-NEXT: [[TRUNC:%.*]] = trunc i8 [[A:%.*]] to i1
1516
1516
; CHECK-NEXT: br i1 [[TRUNC]], label [[IF_TRUE:%.*]], label [[IF_FALSE:%.*]]
1517
1517
; CHECK: if.true:
1518
- ; CHECK-NEXT: [[CMP1:%.*]] = icmp ne i8 [[A]], 0
1519
- ; CHECK-NEXT: call void @check1(i1 [[CMP1]])
1520
- ; CHECK-NEXT: [[CMP2:%.*]] = icmp eq i8 [[A]], 0
1521
- ; CHECK-NEXT: call void @check1(i1 [[CMP2]])
1518
+ ; CHECK-NEXT: call void @check1(i1 true)
1519
+ ; CHECK-NEXT: call void @check1(i1 false)
1522
1520
; CHECK-NEXT: [[CMP3:%.*]] = icmp ne i8 [[A]], 1
1523
1521
; CHECK-NEXT: call void @check1(i1 [[CMP3]])
1524
1522
; CHECK-NEXT: [[CMP4:%.*]] = icmp eq i8 [[A]], 1
@@ -1559,10 +1557,8 @@ define void @test_trunc_not_bittest(i8 %a) {
1559
1557
; CHECK-NEXT: [[NOT:%.*]] = xor i1 [[TRUNC]], true
1560
1558
; CHECK-NEXT: br i1 [[NOT]], label [[IF_FALSE:%.*]], label [[IF_TRUE:%.*]]
1561
1559
; CHECK: if.true:
1562
- ; CHECK-NEXT: [[CMP1:%.*]] = icmp ne i8 [[A]], -1
1563
- ; CHECK-NEXT: call void @check1(i1 [[CMP1]])
1564
- ; CHECK-NEXT: [[CMP2:%.*]] = icmp eq i8 [[A]], -1
1565
- ; CHECK-NEXT: call void @check1(i1 [[CMP2]])
1560
+ ; CHECK-NEXT: call void @check1(i1 true)
1561
+ ; CHECK-NEXT: call void @check1(i1 false)
1566
1562
; CHECK-NEXT: [[CMP3:%.*]] = icmp ne i8 [[A]], 0
1567
1563
; CHECK-NEXT: call void @check1(i1 [[CMP3]])
1568
1564
; CHECK-NEXT: [[CMP4:%.*]] = icmp eq i8 [[A]], 0
@@ -1603,14 +1599,10 @@ define void @test_trunc_nuw_bittest(i8 %a) {
1603
1599
; CHECK-NEXT: [[TRUNC:%.*]] = trunc nuw i8 [[A:%.*]] to i1
1604
1600
; CHECK-NEXT: br i1 [[TRUNC]], label [[IF_TRUE:%.*]], label [[IF_FALSE:%.*]]
1605
1601
; CHECK: if.true:
1606
- ; CHECK-NEXT: [[CMP1:%.*]] = icmp ne i8 [[A]], 0
1607
- ; CHECK-NEXT: call void @check1(i1 [[CMP1]])
1608
- ; CHECK-NEXT: [[CMP2:%.*]] = icmp eq i8 [[A]], 0
1609
- ; CHECK-NEXT: call void @check1(i1 [[CMP2]])
1610
- ; CHECK-NEXT: [[CMP3:%.*]] = icmp ne i8 [[A]], 1
1611
- ; CHECK-NEXT: call void @check1(i1 [[CMP3]])
1612
- ; CHECK-NEXT: [[CMP4:%.*]] = icmp eq i8 [[A]], 1
1613
- ; CHECK-NEXT: call void @check1(i1 [[CMP4]])
1602
+ ; CHECK-NEXT: call void @check1(i1 true)
1603
+ ; CHECK-NEXT: call void @check1(i1 false)
1604
+ ; CHECK-NEXT: call void @check1(i1 false)
1605
+ ; CHECK-NEXT: call void @check1(i1 true)
1614
1606
; CHECK-NEXT: ret void
1615
1607
; CHECK: if.false:
1616
1608
; CHECK-NEXT: ret void
@@ -1639,14 +1631,10 @@ define void @test_trunc_nuw_not_bittest(i8 %a) {
1639
1631
; CHECK-NEXT: [[NOT:%.*]] = xor i1 [[TRUNC]], true
1640
1632
; CHECK-NEXT: br i1 [[NOT]], label [[IF_TRUE:%.*]], label [[IF_FALSE:%.*]]
1641
1633
; CHECK: if.true:
1642
- ; CHECK-NEXT: [[CMP1:%.*]] = icmp ne i8 [[A]], 0
1643
- ; CHECK-NEXT: call void @check1(i1 [[CMP1]])
1644
- ; CHECK-NEXT: [[CMP2:%.*]] = icmp eq i8 [[A]], 0
1645
- ; CHECK-NEXT: call void @check1(i1 [[CMP2]])
1646
- ; CHECK-NEXT: [[CMP3:%.*]] = icmp ne i8 [[A]], 1
1647
- ; CHECK-NEXT: call void @check1(i1 [[CMP3]])
1648
- ; CHECK-NEXT: [[CMP4:%.*]] = icmp eq i8 [[A]], 1
1649
- ; CHECK-NEXT: call void @check1(i1 [[CMP4]])
1634
+ ; CHECK-NEXT: call void @check1(i1 false)
1635
+ ; CHECK-NEXT: call void @check1(i1 true)
1636
+ ; CHECK-NEXT: call void @check1(i1 true)
1637
+ ; CHECK-NEXT: call void @check1(i1 false)
1650
1638
; CHECK-NEXT: ret void
1651
1639
; CHECK: if.false:
1652
1640
; CHECK-NEXT: ret void
0 commit comments