Skip to content

Commit b6f4baa

Browse files
committed
Add a test on wrapped set
1 parent ce4cf63 commit b6f4baa

File tree

1 file changed

+34
-0
lines changed
  • llvm/test/Transforms/CorrelatedValuePropagation

1 file changed

+34
-0
lines changed

llvm/test/Transforms/CorrelatedValuePropagation/icmp.ll

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1535,3 +1535,37 @@ bb3:
15351535
%4 = phi i1 [ %3, %bb1 ], [ %2, %bb2 ]
15361536
ret i1 %4
15371537
}
1538+
1539+
define i1 @test_icmp_ne_on_wrapped_set(i8 %x) {
1540+
; CHECK-LABEL: @test_icmp_ne_on_wrapped_set(
1541+
; CHECK-NEXT: [[TMP1:%.*]] = icmp sle i8 [[X:%.*]], -128
1542+
; CHECK-NEXT: [[TMP2:%.*]] = icmp sge i8 [[X]], 127
1543+
; CHECK-NEXT: [[TMP3:%.*]] = or i1 [[TMP1]], [[TMP2]]
1544+
; CHECK-NEXT: br i1 [[TMP3]], label [[BB1:%.*]], label [[BB2:%.*]]
1545+
; CHECK: bb2:
1546+
; CHECK-NEXT: [[TMP4:%.*]] = tail call i1 @get_bool()
1547+
; CHECK-NEXT: br label [[BB3:%.*]]
1548+
; CHECK: bb1:
1549+
; CHECK-NEXT: [[TMP5:%.*]] = trunc i8 [[X]] to i1
1550+
; CHECK-NEXT: br label [[BB3]]
1551+
; CHECK: bb3:
1552+
; CHECK-NEXT: [[TMP6:%.*]] = phi i1 [ [[TMP5]], [[BB1]] ], [ [[TMP4]], [[BB2]] ]
1553+
; CHECK-NEXT: ret i1 [[TMP6]]
1554+
;
1555+
%1 = icmp sle i8 %x, -128
1556+
%2 = icmp sge i8 %x, 127
1557+
%3 = or i1 %1, %2
1558+
br i1 %3, label %bb1, label %bb2
1559+
1560+
bb2:
1561+
%4 = tail call i1 @get_bool()
1562+
br label %bb3
1563+
1564+
bb1:
1565+
%5 = icmp eq i8 %x, 127
1566+
br label %bb3
1567+
1568+
bb3:
1569+
%6 = phi i1 [ %5, %bb1 ], [ %4, %bb2 ]
1570+
ret i1 %6
1571+
}

0 commit comments

Comments
 (0)