Bump version to 19.1.0-rc3
[llvm-project.git] / llvm / test / CodeGen / ARM / xray-armv6-attribute-instrumentation.ll
blob425ffc33bf810f4d96da7624959c91ee048b777b
1 ; RUN: llc -mtriple=armv6-unknown-linux-gnu < %s | FileCheck %s --check-prefixes=CHECK,CHECK-LINUX
2 ; RUN: llc -mtriple=armv6-apple-ios6.0.0    < %s | FileCheck %s --check-prefixes=CHECK,CHECK-IOS
4 define i32 @foo() nounwind noinline uwtable "function-instrument"="xray-always" {
5 ; CHECK-LABEL: Lxray_sled_0:
6 ; CHECK-NEXT:  b  #20
7 ; CHECK-NEXT:  mov      r0, r0
8 ; CHECK-NEXT:  mov      r0, r0
9 ; CHECK-NEXT:  mov      r0, r0
10 ; CHECK-NEXT:  mov      r0, r0
11 ; CHECK-NEXT:  mov      r0, r0
12 ; CHECK-NEXT:  mov      r0, r0
13 ; CHECK-NEXT:  Ltmp[[#]]:
14   ret i32 0
15 ; CHECK-LABEL: Lxray_sled_1:
16 ; CHECK-NEXT:  b  #20
17 ; CHECK-NEXT:  mov      r0, r0
18 ; CHECK-NEXT:  mov      r0, r0
19 ; CHECK-NEXT:  mov      r0, r0
20 ; CHECK-NEXT:  mov      r0, r0
21 ; CHECK-NEXT:  mov      r0, r0
22 ; CHECK-NEXT:  mov      r0, r0
23 ; CHECK-NEXT:  Ltmp[[#]]:
24 ; CHECK-NEXT:  bx       lr
27 ; CHECK-LINUX-LABEL: .section xray_instr_map,"ao",%progbits,foo{{$}}
28 ; CHECK-LINUX-LABEL: .Lxray_sleds_start0:
29 ; CHECK-LINUX:         .long .Lxray_sled_0
30 ; CHECK-LINUX:         .long .Lxray_sled_1
31 ; CHECK-LINUX-LABEL: .Lxray_sleds_end0:
32 ; CHECK-LINUX-LABEL: .section xray_fn_idx,"ao",%progbits,foo{{$}}
33 ; CHECK-LINUX:         .long .Lxray_sleds_start0-.Lxray_fn_idx0
34 ; CHECK-LINUX-NEXT:    .long 2
36 ; CHECK-IOS-LABEL: .section __DATA,xray_instr_map,regular,live_support{{$}}
37 ; CHECK-IOS-LABEL: lxray_sleds_start0:
38 ; CHECK-IOS:         .long Lxray_sled_0
39 ; CHECK-IOS:         .long Lxray_sled_1
40 ; CHECK-IOS-LABEL: Lxray_sleds_end0:
41 ; CHECK-IOS-LABEL: .section __DATA,xray_fn_idx,regular,live_support{{$}}
42 ; CHECK-IOS:         .long lxray_sleds_start0-lxray_fn_idx0
43 ; CHECK-IOS-NEXT:    .long 2