[ARM] Better OR's for MVE compares
[llvm-core.git] / test / LTO / ARM / link-arm-and-thumb.ll
blob743e3f66194f0d9498b9036b82cc6435b7626d39
1 ; Testcase to check that functions from a Thumb module can be inlined in an
2 ; ARM function.
4 ; RUN: llvm-as %s -o %t1.bc
5 ; RUN: llvm-as %p/Inputs/thumb.ll -o %t2.bc
6 ; RUN: llvm-lto -exported-symbol main \
7 ; RUN:          -exported-symbol bar \
8 ; RUN:          -filetype=asm \
9 ; RUN:          -o - \
10 ; RUN:          %t1.bc %t2.bc 2> %t3.out| FileCheck %s
11 ; RUN: FileCheck --allow-empty --input-file %t3.out --check-prefix STDERR %s
13 target triple = "armv7-linux-gnueabihf"
15 ; CHECK: .code  32
16 ; CHECK-NEXT: main
17 ; CHECK-NEXT: .fnstart
18 ; CHECK-NEXT: mov r0, #30
20 ; CHECK: .code  16
21 ; CHECK-NEXT: .thumb_func
22 ; CHECK-NEXT: bar
24 declare i32 @foo(i32 %a, i32 %b);
26 define i32 @main() {
27 entry:
28   %add = call i32 @foo(i32 10, i32 20)
29   ret i32 %add
32 ; STDERR-NOT: warning: Linking two modules of different target triples: