@@ -1515,10 +1515,8 @@ define void @test_trunc_bittest(i8 %a) {
15151515; CHECK-NEXT: [[TRUNC:%.*]] = trunc i8 [[A:%.*]] to i1
15161516; CHECK-NEXT: br i1 [[TRUNC]], label [[IF_TRUE:%.*]], label [[IF_FALSE:%.*]]
15171517; 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)
15221520; CHECK-NEXT: ret void
15231521; CHECK: if.false:
15241522; CHECK-NEXT: ret void
@@ -1543,10 +1541,8 @@ define void @test_trunc_not_bittest(i8 %a) {
15431541; CHECK-NEXT: [[NOT:%.*]] = xor i1 [[TRUNC]], true
15441542; CHECK-NEXT: br i1 [[NOT]], label [[IF_FALSE:%.*]], label [[IF_TRUE:%.*]]
15451543; CHECK: if.true:
1546- ; CHECK-NEXT: [[CMP1:%.*]] = icmp ne i8 [[A]], -1
1547- ; CHECK-NEXT: call void @check1(i1 [[CMP1]])
1548- ; CHECK-NEXT: [[CMP2:%.*]] = icmp eq i8 [[A]], -1
1549- ; CHECK-NEXT: call void @check1(i1 [[CMP2]])
1544+ ; CHECK-NEXT: call void @check1(i1 true)
1545+ ; CHECK-NEXT: call void @check1(i1 false)
15501546; CHECK-NEXT: ret void
15511547; CHECK: if.false:
15521548; CHECK-NEXT: ret void
@@ -1565,51 +1561,3 @@ if.true:
15651561if.false:
15661562 ret void
15671563}
1568-
1569- define void @test_icmp_trunc (i8 %a ) {
1570- ; CHECK-LABEL: @test_icmp_trunc(
1571- ; CHECK-NEXT: [[CMP1:%.*]] = icmp ne i8 [[A:%.*]], 0
1572- ; CHECK-NEXT: br i1 [[CMP1]], label [[IF_TRUE:%.*]], label [[IF_FALSE:%.*]]
1573- ; CHECK: if.true:
1574- ; CHECK-NEXT: [[TRUNC:%.*]] = trunc i8 [[A]] to i1
1575- ; CHECK-NEXT: call void @check1(i1 [[TRUNC]])
1576- ; CHECK-NEXT: ret void
1577- ; CHECK: if.false:
1578- ; CHECK-NEXT: ret void
1579- ;
1580- %cmp1 = icmp ne i8 %a , 0
1581- br i1 %cmp1 , label %if.true , label %if.false
1582-
1583- if.true:
1584- %trunc = trunc i8 %a to i1
1585- call void @check1 (i1 %trunc )
1586- ret void
1587-
1588- if.false:
1589- ret void
1590- }
1591-
1592- define void @test_icmp_trunc_not (i8 %a ) {
1593- ; CHECK-LABEL: @test_icmp_trunc_not(
1594- ; CHECK-NEXT: [[CMP1:%.*]] = icmp eq i8 [[A:%.*]], -1
1595- ; CHECK-NEXT: br i1 [[CMP1]], label [[IF_TRUE:%.*]], label [[IF_FALSE:%.*]]
1596- ; CHECK: if.true:
1597- ; CHECK-NEXT: [[TRUNC:%.*]] = trunc i8 [[A]] to i1
1598- ; CHECK-NEXT: [[NOT:%.*]] = xor i1 [[TRUNC]], true
1599- ; CHECK-NEXT: call void @check1(i1 [[TRUNC]])
1600- ; CHECK-NEXT: ret void
1601- ; CHECK: if.false:
1602- ; CHECK-NEXT: ret void
1603- ;
1604- %cmp1 = icmp eq i8 %a , -1
1605- br i1 %cmp1 , label %if.true , label %if.false
1606-
1607- if.true:
1608- %trunc = trunc i8 %a to i1
1609- %not = xor i1 %trunc , true
1610- call void @check1 (i1 %trunc )
1611- ret void
1612-
1613- if.false:
1614- ret void
1615- }
0 commit comments