[WebAssembly] Don't perform the returned-argument optimization on constants.
[oota-llvm.git] / test / CodeGen / ARM / constant-islands.ll
1 ; RUN: llc -mtriple=thumbv7-linux-gnueabihf -O0 -fast-isel=0 -o - %s | FileCheck %s
2
3 define void @test_no_duplicate_branches(float %in) {
4 ; CHECK-LABEL: test_no_duplicate_branches:
5 ; CHECK: vldr {{s[0-9]+}}, [[CONST:\.LCPI[0-9]+_[0-9]+]]
6 ; CHECK: b .LBB
7 ; CHECK-NOT: b .LBB
8 ; CHECK: [[CONST]]:
9 ; CHECK-NEXT: .long 1150963712
10
11   %tst = fcmp oeq float %in, 1234.5
12
13   %chain = zext i1 %tst to i32
14
15   br i1 %tst, label %true, label %false
16
17 true:
18   call i32 @llvm.arm.space(i32 2000, i32 undef)
19   ret void
20
21 false:
22   ret void
23 }
24
25 declare i32 @llvm.arm.space(i32, i32)