xref: /llvm-project/llvm/test/Transforms/SCCP/latticeval-invalidate.ll (revision 0991da36906bdb29b8f1030d5123bafb58fee79e)
1; RUN: opt -S -passes=sccp %s
2
3@A = external constant i32
4
5define void @test1() {
6BB4:
7  %A20 = alloca i1
8  %A15 = alloca i64
9  %A7 = alloca i64
10  %A3 = alloca ptr
11  %B = ptrtoint ptr @A to i64
12  %B8 = shl i64 %B, 9223372036854775807
13  %G10 = getelementptr ptr, ptr undef, i64 %B
14  %B10 = urem i64 %B, %B8
15  %B12 = shl i64 %B, %B
16  %BB = and i64 %B, %B8
17  %B1 = xor i64 %B, %B
18  %B23 = lshr i64 %B8, undef
19  %C5 = icmp uge i64 %B, %B10
20  %C17 = fcmp ord double 4.940660e-324, 0x7FEFFFFFFFFFFFFF
21  %C2 = icmp uge i1 %C17, false
22  %G = getelementptr i32, ptr @A, i1 %C17
23  %X = select i1 false, i712 0, i712 1
24  %C4 = icmp ule i1 true, false
25  %B3 = xor i1 %C17, %C2
26  %C33 = icmp slt i1 false, %C5
27  %B15 = sub i64 %B8, %B23
28  %C18 = icmp slt i64 undef, %BB
29  %G29 = getelementptr ptr, ptr undef, i64 %B15
30  %C35 = icmp eq i1 %C17, undef
31  %C31 = icmp ult i1 %C35, %C5
32  %C29 = icmp sle i1 true, %C5
33  %C16 = icmp ne i16 -1, -32768
34  %A24 = alloca i1
35  %A21 = alloca i1
36  %A25 = alloca ptr
37  %C7 = icmp ule i1 %C4, %B3
38  %C14 = icmp slt i64 %B8, 0
39  ret void
40}
41