/external/llvm-project/llvm/test/CodeGen/PowerPC/ |
D | machine-pre.ll | 4 ; RUN: --check-prefix=CHECK-P9 7 ; CHECK-P9-LABEL: t: 8 ; CHECK-P9: # %bb.0: # %entry 9 ; CHECK-P9-NEXT: lis r7, 0 10 ; CHECK-P9-NEXT: li r6, 0 11 ; CHECK-P9-NEXT: li r8, 0 12 ; CHECK-P9-NEXT: li r9, 0 13 ; CHECK-P9-NEXT: ori r7, r7, 65535 14 ; CHECK-P9-NEXT: .p2align 5 15 ; CHECK-P9-NEXT: .LBB0_1: # %header [all …]
|
D | constant-pool.ll | 7 ; RUN: -mcpu=pwr9 -ppc-asm-full-reg-names < %s | FileCheck %s --check-prefix=CHECK-P9 15 ; CHECK-P9-LABEL: FloatConstantPool: 16 ; CHECK-P9: # %bb.0: # %entry 17 ; CHECK-P9-NEXT: addis r3, r2, .LCPI0_0@toc@ha 18 ; CHECK-P9-NEXT: lfs f1, .LCPI0_0@toc@l(r3) 19 ; CHECK-P9-NEXT: blr 30 ; CHECK-P9-LABEL: DoubleConstantPool: 31 ; CHECK-P9: # %bb.0: # %entry 32 ; CHECK-P9-NEXT: addis r3, r2, .LCPI1_0@toc@ha 33 ; CHECK-P9-NEXT: lfd f1, .LCPI1_0@toc@l(r3) [all …]
|
D | sched-addi.ll | 2 …instrs -mtriple=powerpc64le-unknown-linux-gnu -mcpu=pwr9 < %s | FileCheck -check-prefix=CHECK-P9 %s 4 ; RUN: FileCheck -check-prefix=CHECK-P9-NO-HEURISTIC %s 13 ; CHECK-P9-LABEL: test: 14 ; CHECK-P9: # %bb.0: # %entry 15 ; CHECK-P9-NEXT: ld 5, 0(5) 16 ; CHECK-P9-NEXT: addis 6, 2, scalars@toc@ha 17 ; CHECK-P9-NEXT: addi 6, 6, scalars@toc@l 18 ; CHECK-P9-NEXT: addi 6, 6, 16 19 ; CHECK-P9-NEXT: rldicr 5, 5, 0, 58 20 ; CHECK-P9-NEXT: addi 5, 5, -32 [all …]
|
D | scalar_cmp.ll | 11 ; RUN: --check-prefix=FAST-P9 17 ; RUN: --check-prefix=NO-FAST-P9 29 ; FAST-P9-LABEL: select_oeq_float: 30 ; FAST-P9: # %bb.0: # %entry 31 ; FAST-P9-NEXT: xssubsp f0, f2, f1 32 ; FAST-P9-NEXT: xssubsp f1, f1, f2 33 ; FAST-P9-NEXT: fsel f1, f1, f3, f4 34 ; FAST-P9-NEXT: fsel f1, f0, f1, f4 35 ; FAST-P9-NEXT: blr 46 ; NO-FAST-P9-LABEL: select_oeq_float: [all …]
|
D | vector-extend-sign.ll | 3 ; RUN: -mcpu=pwr9 < %s | FileCheck %s --check-prefix=CHECK-P9 5 ; RUN: -mcpu=pwr9 < %s | FileCheck %s --check-prefix=CHECK-P9 8 ; RUN: --check-prefix=CHECK-P9-NOALTIVEC 13 ; CHECK-P9-LABEL: test_vextsh2w: 14 ; CHECK-P9: # %bb.0: # %entry 15 ; CHECK-P9-NEXT: vextsh2w 2, 2 16 ; CHECK-P9-NEXT: blr 18 ; CHECK-P9-NOALTIVEC-LABEL: test_vextsh2w: 19 ; CHECK-P9-NOALTIVEC: # %bb.0: # %entry 20 ; CHECK-P9-NOALTIVEC-NEXT: extsh 6, 6 [all …]
|
D | fp-strict-round.ll | 7 ; RUN: --check-prefix=P9 %s 48 ; P9-LABEL: ceil_f32: 49 ; P9: # %bb.0: 50 ; P9-NEXT: xsrdpip f1, f1 51 ; P9-NEXT: blr 64 ; P9-LABEL: ceil_f64: 65 ; P9: # %bb.0: 66 ; P9-NEXT: xsrdpip f1, f1 67 ; P9-NEXT: blr 80 ; P9-LABEL: ceil_v4f32: [all …]
|
D | extract-and-store.ll | 9 ; RUN: --check-prefix=CHECK-P9 12 ; RUN: --check-prefix=CHECK-P9-BE 28 ; CHECK-P9-LABEL: testllv: 29 ; CHECK-P9: # %bb.0: # %entry 30 ; CHECK-P9-NEXT: xxswapd vs0, vs34 31 ; CHECK-P9-NEXT: sldi r3, r8, 3 32 ; CHECK-P9-NEXT: stfdx f0, r7, r3 33 ; CHECK-P9-NEXT: blr 35 ; CHECK-P9-BE-LABEL: testllv: 36 ; CHECK-P9-BE: # %bb.0: # %entry [all …]
|
D | pr45628.ll | 4 ; RUN: -check-prefix=P9-VSX 7 ; RUN: -check-prefix=P9-NOVSX 16 ; P9-VSX-LABEL: rotl_64: 17 ; P9-VSX: # %bb.0: # %entry 18 ; P9-VSX-NEXT: xxswapd v2, v2 19 ; P9-VSX-NEXT: blr 21 ; P9-NOVSX-LABEL: rotl_64: 22 ; P9-NOVSX: # %bb.0: # %entry 23 ; P9-NOVSX-NEXT: vsldoi v2, v2, v2, 8 24 ; P9-NOVSX-NEXT: blr [all …]
|
D | vsx_insert_extract_le.ll | 8 ; RUN: | FileCheck --check-prefix=CHECK-P9-VECTOR %s 12 ; RUN: --check-prefix=CHECK-P9 --implicit-check-not xxswapd 23 ; CHECK-P9-VECTOR-LABEL: testi0: 24 ; CHECK-P9-VECTOR: # %bb.0: 25 ; CHECK-P9-VECTOR-NEXT: lxvd2x vs0, 0, r3 26 ; CHECK-P9-VECTOR-NEXT: lfdx f1, 0, r4 27 ; CHECK-P9-VECTOR-NEXT: xxswapd vs0, vs0 28 ; CHECK-P9-VECTOR-NEXT: xxmrghd v2, vs0, vs1 29 ; CHECK-P9-VECTOR-NEXT: blr 31 ; CHECK-P9-LABEL: testi0: [all …]
|
D | combine-sext-and-shl-after-isel.ll | 9 ; RUN: --check-prefix=CHECK-P9 12 ; RUN: --check-prefix=CHECK-P9-BE 40 ; CHECK-P9-LABEL: poc: 41 ; CHECK-P9: # %bb.0: # %entry 42 ; CHECK-P9-NEXT: andi. r5, r5, 1 43 ; CHECK-P9-NEXT: bc 4, gt, .LBB0_2 44 ; CHECK-P9-NEXT: # %bb.1: # %true 45 ; CHECK-P9-NEXT: extswsli r4, r4, 2 46 ; CHECK-P9-NEXT: lwzx r3, r3, r4 47 ; CHECK-P9-NEXT: blr [all …]
|
D | swaps-le-6.ll | 7 ; RUN: < %s | FileCheck %s --check-prefix=CHECK-P9 \ 12 ; RUN: -mattr=-power9-vector < %s | FileCheck %s --check-prefix=CHECK-P9-NOVECTOR 34 ; CHECK-P9-NOVECTOR-LABEL: bar0: 35 ; CHECK-P9-NOVECTOR: # %bb.0: # %entry 36 ; CHECK-P9-NOVECTOR: addis r3, r2, .LC0@toc@ha 37 ; CHECK-P9-NOVECTOR: ld r3, .LC0@toc@l(r3) 38 ; CHECK-P9-NOVECTOR: addis r3, r2, .LC1@toc@ha 39 ; CHECK-P9-NOVECTOR: addis r3, r2, .LC2@toc@ha 40 ; CHECK-P9-NOVECTOR: ld r3, .LC2@toc@l(r3) 41 ; CHECK-P9-NOVECTOR: xxmrgld vs0, vs1, vs0 [all …]
|
D | recipest.ll | 4 …nstrs < %s -mtriple=powerpc64le-unknown-linux-gnu -mcpu=pwr9 | FileCheck --check-prefix=CHECK-P9 %s 52 ; CHECK-P9-LABEL: foo_fmf: 53 ; CHECK-P9: # %bb.0: 54 ; CHECK-P9-NEXT: xsrsqrtedp 0, 2 55 ; CHECK-P9-NEXT: addis 3, 2, .LCPI0_0@toc@ha 56 ; CHECK-P9-NEXT: lfs 4, .LCPI0_0@toc@l(3) 57 ; CHECK-P9-NEXT: addis 3, 2, .LCPI0_1@toc@ha 58 ; CHECK-P9-NEXT: xsmuldp 3, 2, 0 59 ; CHECK-P9-NEXT: fmr 5, 4 60 ; CHECK-P9-NEXT: xsmaddadp 5, 3, 0 [all …]
|
D | load-shuffle-and-shuffle-store.ll | 6 ; RUN: -mtriple=powerpc64le-unknown-linux-gnu < %s | FileCheck %s --check-prefix=CHECK-P9 12 ; RUN: -mtriple=powerpc64-unknown-linux-gnu < %s | FileCheck %s --check-prefix=CHECK-P9-BE 20 ; CHECK-P9-LABEL: load_swap00: 21 ; CHECK-P9: # %bb.0: 22 ; CHECK-P9-NEXT: lxvd2x v2, 0, r3 23 ; CHECK-P9-NEXT: blr 31 ; CHECK-P9-BE-LABEL: load_swap00: 32 ; CHECK-P9-BE: # %bb.0: 33 ; CHECK-P9-BE-NEXT: lxv v2, 0(r3) 34 ; CHECK-P9-BE-NEXT: xxswapd v2, v2 [all …]
|
D | toc-float.ll | 2 …instrs -mtriple=powerpc64le-unknown-linux-gnu -mcpu=pwr9 < %s | FileCheck -check-prefix=CHECK-P9 %s 8 ; CHECK-P9-LABEL: doubleConstant1: 9 ; CHECK-P9: # %bb.0: 10 ; CHECK-P9-NEXT: addis 3, 2, .LCPI0_0@toc@ha 11 ; CHECK-P9-NEXT: lfs 1, .LCPI0_0@toc@l(3) 12 ; CHECK-P9-NEXT: blr 25 ; CHECK-P9-LABEL: doubleConstant2: 26 ; CHECK-P9: # %bb.0: 27 ; CHECK-P9-NEXT: addis 3, 2, .LCPI1_0@toc@ha 28 ; CHECK-P9-NEXT: lfd 1, .LCPI1_0@toc@l(3) [all …]
|
D | vec_conv_fp64_to_i16_elts.ll | 7 ; RUN: FileCheck %s --check-prefix=CHECK-P9 27 ; CHECK-P9-LABEL: test2elt: 28 ; CHECK-P9: # %bb.0: # %entry 29 ; CHECK-P9-NEXT: xscvdpsxws f0, v2 30 ; CHECK-P9-NEXT: mffprwz r3, f0 31 ; CHECK-P9-NEXT: xxswapd vs0, v2 32 ; CHECK-P9-NEXT: mtvsrd v3, r3 33 ; CHECK-P9-NEXT: xscvdpsxws f0, f0 34 ; CHECK-P9-NEXT: mffprwz r3, f0 35 ; CHECK-P9-NEXT: mtvsrd v2, r3 [all …]
|
D | vec_conv_fp32_to_i8_elts.ll | 7 ; RUN: FileCheck %s --check-prefix=CHECK-P9 34 ; CHECK-P9-LABEL: test2elt: 35 ; CHECK-P9: # %bb.0: # %entry 36 ; CHECK-P9-NEXT: mtfprd f0, r3 37 ; CHECK-P9-NEXT: xxswapd v2, vs0 38 ; CHECK-P9-NEXT: xscvspdpn f0, vs0 39 ; CHECK-P9-NEXT: xxsldwi vs1, v2, v2, 3 40 ; CHECK-P9-NEXT: xscvdpsxws f0, f0 41 ; CHECK-P9-NEXT: xscvspdpn f1, vs1 42 ; CHECK-P9-NEXT: xscvdpsxws f1, f1 [all …]
|
D | vec_conv_fp32_to_i16_elts.ll | 7 ; RUN: FileCheck %s --check-prefix=CHECK-P9 31 ; CHECK-P9-LABEL: test2elt: 32 ; CHECK-P9: # %bb.0: # %entry 33 ; CHECK-P9-NEXT: mtfprd f0, r3 34 ; CHECK-P9-NEXT: xxswapd v2, vs0 35 ; CHECK-P9-NEXT: xscvspdpn f0, vs0 36 ; CHECK-P9-NEXT: xxsldwi vs1, v2, v2, 3 37 ; CHECK-P9-NEXT: xscvdpsxws f0, f0 38 ; CHECK-P9-NEXT: xscvspdpn f1, vs1 39 ; CHECK-P9-NEXT: xscvdpsxws f1, f1 [all …]
|
D | vec_conv_fp64_to_i8_elts.ll | 7 ; RUN: FileCheck %s --check-prefix=CHECK-P9 30 ; CHECK-P9-LABEL: test2elt: 31 ; CHECK-P9: # %bb.0: # %entry 32 ; CHECK-P9-NEXT: xscvdpsxws f0, v2 33 ; CHECK-P9-NEXT: mffprwz r3, f0 34 ; CHECK-P9-NEXT: xxswapd vs0, v2 35 ; CHECK-P9-NEXT: mtvsrd v3, r3 36 ; CHECK-P9-NEXT: xscvdpsxws f0, f0 37 ; CHECK-P9-NEXT: mffprwz r3, f0 38 ; CHECK-P9-NEXT: mtvsrd v2, r3 [all …]
|
D | fp-strict-conv-f128.ll | 7 ; RUN: -check-prefix=P9 60 ; P9-LABEL: q_to_i128: 61 ; P9: # %bb.0: # %entry 62 ; P9-NEXT: mflr r0 63 ; P9-NEXT: std r0, 16(r1) 64 ; P9-NEXT: stdu r1, -32(r1) 65 ; P9-NEXT: .cfi_def_cfa_offset 32 66 ; P9-NEXT: .cfi_offset lr, 16 67 ; P9-NEXT: bl __fixtfti 68 ; P9-NEXT: nop [all …]
|
D | load-and-splat.ll | 4 ; RUN: -check-prefix=P9 9 ; P9-LABEL: test: 10 ; P9: # %bb.0: # %entry 11 ; P9-NEXT: addi r4, r4, 24 12 ; P9-NEXT: lxvdsx vs0, 0, r4 13 ; P9-NEXT: stxv vs0, 0(r3) 14 ; P9-NEXT: blr 32 ; P9-LABEL: test2: 33 ; P9: # %bb.0: # %entry 34 ; P9-NEXT: addi r4, r4, 12 [all …]
|
D | fp-strict-fcmp.ll | 7 ; RUN: | FileCheck %s -check-prefix=P9 19 ; P9-LABEL: test_f32_oeq_q: 20 ; P9: # %bb.0: 21 ; P9-NEXT: fcmpu cr0, f1, f2 22 ; P9-NEXT: iseleq r3, r3, r4 23 ; P9-NEXT: blr 44 ; P9-LABEL: test_f32_ogt_q: 45 ; P9: # %bb.0: 46 ; P9-NEXT: fcmpu cr0, f1, f2 47 ; P9-NEXT: iselgt r3, r3, r4 [all …]
|
D | vec_conv_fp32_to_i64_elts.ll | 7 ; RUN: FileCheck %s --check-prefix=CHECK-P9 22 ; CHECK-P9-LABEL: test2elt: 23 ; CHECK-P9: # %bb.0: # %entry 24 ; CHECK-P9-NEXT: mtfprd f0, r3 25 ; CHECK-P9-NEXT: xxswapd v2, vs0 26 ; CHECK-P9-NEXT: xxmrglw vs0, v2, v2 27 ; CHECK-P9-NEXT: xvcvspdp vs0, vs0 28 ; CHECK-P9-NEXT: xvcvdpuxds v2, vs0 29 ; CHECK-P9-NEXT: blr 60 ; CHECK-P9-LABEL: test4elt: [all …]
|
D | vsx_shuffle_le.ll | 9 ; RUN: --check-prefix=CHECK-P9 --implicit-check-not xxswapd 21 ; CHECK-P9-LABEL: test00 22 ; CHECK-P9: lxv 0, 0(3) 23 ; CHECK-P9: xxspltd 34, 0, 1 36 ; CHECK-P9-LABEL: test01 37 ; CHECK-P9: lxv 34, 0(3) 53 ; CHECK-P9-LABEL: @test02 54 ; CHECK-P9: lxv 0, 0(3) 55 ; CHECK-P9: lxv 1, 0(4) 56 ; CHECK-P9: xxmrgld 34, 1, 0 [all …]
|
D | vec_conv_fp_to_i_8byte_elts.ll | 7 ; RUN: FileCheck %s --check-prefix=CHECK-P9 18 ; CHECK-P9-LABEL: test2elt: 19 ; CHECK-P9: # %bb.0: # %entry 20 ; CHECK-P9-NEXT: xvcvdpuxds v2, v2 21 ; CHECK-P9-NEXT: blr 44 ; CHECK-P9-LABEL: test4elt: 45 ; CHECK-P9: # %bb.0: # %entry 46 ; CHECK-P9-NEXT: lxv vs0, 16(r4) 47 ; CHECK-P9-NEXT: lxv vs1, 0(r4) 48 ; CHECK-P9-NEXT: xvcvdpuxds vs1, vs1 [all …]
|
D | vec_conv_i_to_fp_8byte_elts.ll | 7 ; RUN: FileCheck %s --check-prefix=CHECK-P9 18 ; CHECK-P9-LABEL: test2elt: 19 ; CHECK-P9: # %bb.0: # %entry 20 ; CHECK-P9-NEXT: xvcvuxddp v2, v2 21 ; CHECK-P9-NEXT: blr 44 ; CHECK-P9-LABEL: test4elt: 45 ; CHECK-P9: # %bb.0: # %entry 46 ; CHECK-P9-NEXT: lxv v2, 16(r4) 47 ; CHECK-P9-NEXT: lxv v3, 0(r4) 48 ; CHECK-P9-NEXT: xvcvuxddp vs0, v3 [all …]
|