@@ -1621,49 +1621,37 @@ cont6: ; preds = %cont1, %if.then
1621
1621
br label %for.cond
1622
1622
}
1623
1623
1624
- ; TODO: once D111180 lands, remove the udiv from these *-basic tests.
1625
- ; noundef really should be enough
1626
-
1627
1624
define noundef i32 @add-basic (i32 %a , i32 %b ) {
1628
1625
; CHECK-LABEL: 'add-basic'
1629
1626
; CHECK-NEXT: Classifying expressions for: @add-basic
1630
1627
; CHECK-NEXT: %res = add nuw nsw i32 %a, %b
1631
1628
; CHECK-NEXT: --> (%a + %b)<nuw><nsw> U: full-set S: full-set
1632
- ; CHECK-NEXT: %res2 = udiv i32 255, %res
1633
- ; CHECK-NEXT: --> (255 /u (%a + %b)<nuw><nsw>) U: [0,256) S: [0,256)
1634
1629
; CHECK-NEXT: Determining loop execution counts for: @add-basic
1635
1630
;
1636
1631
%res = add nuw nsw i32 %a , %b
1637
- %res2 = udiv i32 255 , %res
1638
- ret i32 %res2
1632
+ ret i32 %res
1639
1633
}
1640
1634
1641
1635
define noundef i32 @sub-basic (i32 %a , i32 %b ) {
1642
1636
; CHECK-LABEL: 'sub-basic'
1643
1637
; CHECK-NEXT: Classifying expressions for: @sub-basic
1644
1638
; CHECK-NEXT: %res = sub nuw nsw i32 %a, %b
1645
1639
; CHECK-NEXT: --> ((-1 * %b) + %a) U: full-set S: full-set
1646
- ; CHECK-NEXT: %res2 = udiv i32 255, %res
1647
- ; CHECK-NEXT: --> (255 /u ((-1 * %b) + %a)) U: [0,256) S: [0,256)
1648
1640
; CHECK-NEXT: Determining loop execution counts for: @sub-basic
1649
1641
;
1650
1642
%res = sub nuw nsw i32 %a , %b
1651
- %res2 = udiv i32 255 , %res
1652
- ret i32 %res2
1643
+ ret i32 %res
1653
1644
}
1654
1645
1655
1646
define noundef i32 @mul-basic (i32 %a , i32 %b ) {
1656
1647
; CHECK-LABEL: 'mul-basic'
1657
1648
; CHECK-NEXT: Classifying expressions for: @mul-basic
1658
1649
; CHECK-NEXT: %res = mul nuw nsw i32 %a, %b
1659
1650
; CHECK-NEXT: --> (%a * %b)<nuw><nsw> U: full-set S: full-set
1660
- ; CHECK-NEXT: %res2 = udiv i32 255, %res
1661
- ; CHECK-NEXT: --> (255 /u (%a * %b)<nuw><nsw>) U: [0,256) S: [0,256)
1662
1651
; CHECK-NEXT: Determining loop execution counts for: @mul-basic
1663
1652
;
1664
1653
%res = mul nuw nsw i32 %a , %b
1665
- %res2 = udiv i32 255 , %res
1666
- ret i32 %res2
1654
+ ret i32 %res
1667
1655
}
1668
1656
1669
1657
@gA = external global i32
@@ -1746,9 +1734,9 @@ define noundef i32 @mul-recurse() {
1746
1734
; CHECK-NEXT: %d = load i32, i32* @gD, align 4
1747
1735
; CHECK-NEXT: --> %d U: full-set S: full-set
1748
1736
; CHECK-NEXT: %x = mul nuw i32 %a, %b
1749
- ; CHECK-NEXT: --> (%a * %b) U: full-set S: full-set
1737
+ ; CHECK-NEXT: --> (%a * %b)<nuw> U: full-set S: full-set
1750
1738
; CHECK-NEXT: %y = mul nuw i32 %c, %d
1751
- ; CHECK-NEXT: --> (%c * %d) U: full-set S: full-set
1739
+ ; CHECK-NEXT: --> (%c * %d)<nuw> U: full-set S: full-set
1752
1740
; CHECK-NEXT: %res = mul nuw i32 %x, %y
1753
1741
; CHECK-NEXT: --> (%a * %b * %c * %d) U: full-set S: full-set
1754
1742
; CHECK-NEXT: Determining loop execution counts for: @mul-recurse
0 commit comments