We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent a4baf2c commit 8d3a30cCopy full SHA for 8d3a30c
llvm/test/Transforms/SCCP/assume-mul-nuw-square.ll
@@ -0,0 +1,21 @@
1
+; NOTE: Assertions have been autogenerated by utils/update_test_checks.py
2
+; RUN: opt -passes=sccp -S < %s | FileCheck %s
3
+
4
+declare void @llvm.assume(i1)
5
6
+define i1 @src(i16 %num, i16 %s) {
7
+; CHECK-LABEL: @src(
8
+; CHECK-NEXT: start:
9
+; CHECK-NEXT: [[MUL:%.*]] = mul nuw i16 [[S:%.*]], [[S]]
10
+; CHECK-NEXT: [[COND:%.*]] = icmp ule i16 [[MUL]], [[NUM:%.*]]
11
+; CHECK-NEXT: call void @llvm.assume(i1 [[COND]])
12
+; CHECK-NEXT: [[CMP:%.*]] = icmp ult i16 [[S]], 256
13
+; CHECK-NEXT: ret i1 [[CMP]]
14
+;
15
+start:
16
+ %mul = mul nuw i16 %s, %s
17
+ %cond = icmp ule i16 %mul, %num
18
+ call void @llvm.assume(i1 %cond)
19
+ %cmp = icmp ult i16 %s, 256
20
+ ret i1 %cmp
21
+}
0 commit comments