[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / CodeGen / PowerPC / xray-attribute-instrumentation.ll
blob875c1775216bce10a17e16fc836932f838fb2cc0
1 ; RUN: llc -filetype=asm -o - -mtriple=powerpc64le-unknown-linux-gnu < %s | FileCheck %s
2 ; RUN: llc -filetype=asm -o - -mtriple=powerpc64le-unknown-linux-gnu \
3 ; RUN:    -relocation-model=pic < %s | FileCheck %s
5 define i32 @foo() nounwind noinline uwtable "function-instrument"="xray-always" {
6 ; CHECK-LABEL: .Ltmp0:
7 ; CHECK:              b .Ltmp1
8 ; CHECK-NEXT:         nop
9 ; CHECK-NEXT:         std 0, -8(1)
10 ; CHECK-NEXT:         mflr 0
11 ; CHECK-NEXT:         bl __xray_FunctionEntry
12 ; CHECK-NEXT:         nop
13 ; CHECK-NEXT:         mtlr 0
14 ; CHECK-LABEL: .Ltmp1:
15   ret i32 0
16 ; CHECK-LABEL: .Ltmp2:
17 ; CHECK:              blr
18 ; CHECK-NEXT:         nop
19 ; CHECK-NEXT:         std 0, -8(1)
20 ; CHECK-NEXT:         mflr 0
21 ; CHECK-NEXT:         bl __xray_FunctionExit
22 ; CHECK-NEXT:         nop
23 ; CHECK-NEXT:         mtlr 0
25 ; CHECK-LABEL: xray_instr_map,"awo",@progbits,foo,unique,1
26 ; CHECK:      .Lxray_sleds_start0:
27 ; CHECK-NEXT:         .quad   .Ltmp0
28 ; CHECK-NEXT:         .quad   foo
29 ; CHECK-NEXT:         .byte   0x00
30 ; CHECK-NEXT:         .byte   0x01
31 ; CHECK-NEXT:         .byte   0x00
32 ; CHECK-NEXT:         .space  13
33 ; CHECK-NEXT:         .quad   .Ltmp2
34 ; CHECK-NEXT:         .quad   foo
35 ; CHECK-NEXT:         .byte   0x01
36 ; CHECK-NEXT:         .byte   0x01
37 ; CHECK-NEXT:         .byte   0x00
38 ; CHECK-NEXT:         .space  13
39 ; CHECK-NEXT: .Lxray_sleds_end0:
40 ; CHECK-LABEL: xray_fn_idx,"awo",@progbits,foo,unique,1
41 ; CHECK:              .p2align        4
42 ; CHECK-NEXT:         .quad   .Lxray_sleds_start0
43 ; CHECK-NEXT:         .quad   .Lxray_sleds_end0
44 ; CHECK-NEXT:         .text