1 ; RUN: llc -filetype=asm -o - -mtriple=armv7-unknown-linux-gnu < %s | FileCheck %s 2 ; RUN: llc -filetype=asm -o - -mtriple=armv7-apple-ios6.0.0 < %s | FileCheck %s 3 4 define i32 @callee() nounwind noinline uwtable "function-instrument"="xray-always" { 5 ; CHECK: .p2align 2 6 ; CHECK-LABEL: Lxray_sled_0: 7 ; CHECK-NEXT: b #20 8 ; CHECK-NEXT: nop 9 ; CHECK-NEXT: nop 10 ; CHECK-NEXT: nop 11 ; CHECK-NEXT: nop 12 ; CHECK-NEXT: nop 13 ; CHECK-NEXT: nop 14 ; CHECK-LABEL: Ltmp0: 15 ret i32 0 16 ; CHECK-NEXT: mov r0, #0 17 ; CHECK-NEXT: .p2align 2 18 ; CHECK-LABEL: Lxray_sled_1: 19 ; CHECK-NEXT: b #20 20 ; CHECK-NEXT: nop 21 ; CHECK-NEXT: nop 22 ; CHECK-NEXT: nop 23 ; CHECK-NEXT: nop 24 ; CHECK-NEXT: nop 25 ; CHECK-NEXT: nop 26 ; CHECK-LABEL: Ltmp1: 27 ; CHECK-NEXT: bx lr 28 } 29 30 define i32 @caller() nounwind noinline uwtable "function-instrument"="xray-always" { 31 ; CHECK: .p2align 2 32 ; CHECK-LABEL: Lxray_sled_2: 33 ; CHECK-NEXT: b #20 34 ; CHECK-NEXT: nop 35 ; CHECK-NEXT: nop 36 ; CHECK-NEXT: nop 37 ; CHECK-NEXT: nop 38 ; CHECK-NEXT: nop 39 ; CHECK-NEXT: nop 40 ; CHECK-LABEL: Ltmp2: 41 ; CHECK: .p2align 2 42 ; CHECK-LABEL: Lxray_sled_3: 43 ; CHECK-NEXT: b #20 44 ; CHECK-NEXT: nop 45 ; CHECK-NEXT: nop 46 ; CHECK-NEXT: nop 47 ; CHECK-NEXT: nop 48 ; CHECK-NEXT: nop 49 ; CHECK-NEXT: nop 50 ; CHECK-LABEL: Ltmp3: 51 %retval = tail call i32 @callee() 52 ; CHECK: b {{.*}}callee 53 ret i32 %retval 54 } 55