Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / Analysis / CostModel / SystemZ / huge-immediates.ll
blob9260ae88e2ae342b0c7e0459a04d8d5df098935c
1 ; RUN: opt < %s -passes="print<cost-model>" 2>&1 -disable-output -mtriple=systemz-unknown -mcpu=z13
3 ; Test that cost functions can handle immediates of more than 64 bits without crashing.
5 ; Cost of a load which is checked for folding into a compare w/ memory.
6 define i32 @fun0(ptr %Src) {
7   %L = load i72, ptr %Src
8   %B = icmp ult i72 %L, 166153499473114484112
9   %Res = zext i1 %B to i32
10   ret i32 %Res
13 ; Cost of a compare which is checked for elimination by Load and Test.
14 define i32 @fun1(ptr %Src, ptr %Dst) {
15   %L = load i72, ptr %Src
16   store i72 %L, ptr %Dst
17   %B = icmp ult i72 %L, 166153499473114484112
18   %Res = zext i1 %B to i32
19   ret i32 %Res