Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / MC / ARM / arm-thumb-tail-call.ll
blob5cb1ee95e08747f981f58738915a88e28426c358
1 ; RUN: llc -O0 < %s -mtriple armv7-linux-gnueabi -o - \
2 ; RUN:   | llvm-mc -triple armv7-linux-gnueabi -filetype=obj -o - \
3 ; RUN:    | llvm-readobj -r - | FileCheck %s
5 target datalayout = "e-m:e-p:32:32-i64:64-v128:64:128-a:0:32-n32-S64"
6 target triple = "armv7--linux-gnueabihf"
8 define internal i32 @arm_fn() #1 {
9   %1 = tail call i32 @thumb_fn()
10   ret i32 %1
13 define internal i32 @thumb_fn() #2 {
14   %1 = tail call i32 @arm_fn()
15   ret i32 %1
18 attributes #1 = { "target-features"="-thumb-mode" }
19 attributes #2 = { "target-features"="+thumb-mode" }
21 ; CHECK: Relocations [
22 ; CHECK-NEXT: Section (3) .rel.text {
23 ; CHECK-NEXT: 0x0 R_ARM_JUMP24 thumb_fn
24 ; CHECK-NEXT: 0x4 R_ARM_THM_JUMP24 arm_fn
25 ; CHECK-NEXT: }