[X86] combineTargetShuffle - commute VPERMV3 shuffles so any load is on the RHS
[llvm-project.git] / llvm / test / CodeGen / SystemZ / xray.ll
blobac4c7b8493ba6dc0d6188388904c24e60c1c39b6
1 ; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck --check-prefixes=CHECK,NOVECTOR %s
2 ; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z15 | FileCheck --check-prefixes=CHECK,VECTOR %s
3 ; RUN: llc < %s -mtriple=s390x-linux-gnu -mcpu=z15 -mattr=+soft-float | FileCheck --check-prefixes=CHECK,NOVECTOR %s
6 define signext i32 @foo() "function-instrument"="xray-always" {
7 ; CHECK-LABEL: .Lxray_sled_0:
8 ; CHECK:         j      .Ltmp[[#l:]]
9 ; CHECK:         bcr    0, %r0
10 ; CHECK:         llilf  %r2, 0
11 ; NOVECTOR:      brasl  %r14, __xray_FunctionEntry@PLT
12 ; VECTOR:        brasl  %r14, __xray_FunctionEntryVec@PLT
13 ; CHECK:       .Ltmp[[#l]]:
14   ret i32 0
15 ; CHECK-LABEL: .Lxray_sled_1:
16 ; CHECK:         br     %r14
17 ; CHECK:         bc     0, 0
18 ; CHECK:         llilf  %r2, 0
19 ; NOVECtOR:      j      __xray_FunctionExit@PLT
20 ; VECTOR:        j      __xray_FunctionExitVec@PLT
23 ; CHECK:        .section        xray_instr_map,"ao",@progbits,foo
24 ; CHECK: .Lxray_sleds_start0:
25 ; CHECK: [[TMP1:.Ltmp[0-9]+]]:
26 ; CHECK:        .quad   .Lxray_sled_0-[[TMP1]]
27 ; CHECK:        .quad   .Lfunc_begin0-([[TMP1]]+8)
28 ; CHECK:        .byte   0x00
29 ; CHECK:        .byte   0x01
30 ; CHECK:        .byte   0x02
31 ; CHECK:  .space        13
32 ; CHECK: [[TMP2:.Ltmp[0-9]+]]:
33 ; CHECK:        .quad   .Lxray_sled_1-[[TMP2]]
34 ; CHECK:        .quad   .Lfunc_begin0-([[TMP2]]+8)
35 ; CHECK:        .byte   0x01
36 ; CHECK:        .byte   0x01
37 ; CHECK:        .byte   0x02
38 ; CHECK:        .space  13
39 ; CHECK: .Lxray_sleds_end0:
40 ; CHECK:        .section        xray_fn_idx,"ao",@progbits,foo
41 ; CHECK:        .p2align        4
42 ; CHECK: .Lxray_fn_idx0:
43 ; CHECK:        .quad   .Lxray_sleds_start0-.Lxray_fn_idx0
44 ; CHECK:        .quad   2