brintos

brintos / llvm-project-archived public Read only

0
0
Text · 6.5 KiB · 4b01814 Raw
122 lines · plain
1; RUN: llc < %s -mtriple x86_64-unknown-linux-gnu -mattr +avx512vl | FileCheck %s2 3define <4 x float> @testxmm_1(<4 x float> %_xmm0, i64 %_l) {4entry:5; CHECK: vmovhlps  %xmm17, %xmm16, %xmm166  %0 = tail call <4 x float> asm "vmovhlps $1, $2, $0", "=v,v,v,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{dirflag},~{fpsr},~{flags}"(i64 %_l, <4 x float> %_xmm0)7  ret <4 x float> %08}9 10define <4 x float> @testxmm_2(<4 x float> %_xmm0, i64 %_l) {11entry:12; CHECK: vmovapd %xmm16, %xmm1613  %0 = tail call <4 x float> asm "vmovapd $1, $0", "=v,v,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{dirflag},~{fpsr},~{flags}"(i64 %_l)14  ret <4 x float> %015}16 17define <4 x float> @testxmm_3(<4 x float> %_xmm0, i64 %_l) {18entry:19; CHECK: vminpd  %xmm16, %xmm16, %xmm1620  %0 = tail call <4 x float> asm "vminpd $1, $2, $0", "=v,v,v,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{dirflag},~{fpsr},~{flags}"(i64 %_l, i64 %_l)21  ret <4 x float> %022}23 24define i64 @testxmm_4(<4 x float> %_xmm0, i64 %_l) {25entry:26; CHECK: vmulsd  %xmm17, %xmm16, %xmm1627  %0 = tail call i64 asm "vmulsd $1, $2, $0", "=v,v,v,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{dirflag},~{fpsr},~{flags}"(i64 %_l, <4 x float> %_xmm0)28  ret i64 %029}30 31define <4 x float> @testxmm_5(<4 x float> %_xmm0, i64 %_l) {32entry:33; CHECK: vpabsq  %xmm16, %xmm1634  %0 = tail call <4 x float> asm "vpabsq $1, $0", "=v,v,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{dirflag},~{fpsr},~{flags}"(i64 %_l)35  ret <4 x float> %036}37 38define <4 x float> @testxmm_6(<4 x float> %_xmm0, i64 %_l) {39entry:40; CHECK: vpandd  %xmm16, %xmm17, %xmm1641  %0 = tail call <4 x float> asm "vpandd $1, $2, $0", "=v,v,v,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{dirflag},~{fpsr},~{flags}"(<4 x float> %_xmm0, i64 %_l)42  ret <4 x float> %043}44 45define <4 x float> @testxmm_7(<4 x float> %_xmm0, i64 %_l) {46entry:47; CHECK: vpandnd %xmm16, %xmm17, %xmm1648  %0 = tail call <4 x float> asm "vpandnd $1, $2, $0", "=v,v,v,~{xmm0},~{xmm1},~{xmm2},~{xmm3},~{xmm4},~{xmm5},~{xmm6},~{xmm7},~{xmm8},~{xmm9},~{xmm10},~{xmm11},~{xmm12},~{xmm13},~{xmm14},~{xmm15},~{dirflag},~{fpsr},~{flags}"(<4 x float> %_xmm0, i64 %_l)49  ret <4 x float> %050}51 52define <8 x float> @testymm_1(<8 x float> %_ymm0, <8 x float> %_ymm1) {53entry:54; CHECK: vmovsldup %ymm16, %ymm1655  %0 = tail call <8 x float> asm "vmovsldup $1, $0", "=v,v,~{ymm0},~{ymm1},~{ymm2},~{ymm3},~{ymm4},~{ymm5},~{ymm6},~{ymm7},~{ymm8},~{ymm9},~{ymm10},~{ymm11},~{ymm12},~{ymm13},~{ymm14},~{ymm15},~{dirflag},~{fpsr},~{flags}"(<8 x float> %_ymm1)56  ret <8 x float> %057}58 59define <8 x float> @testymm_2(<8 x float> %_ymm0, <8 x float> %_ymm1) {60entry:61; CHECK: vmovapd %ymm16, %ymm1662  %0 = tail call <8 x float> asm "vmovapd $1, $0", "=v,v,~{ymm0},~{ymm1},~{ymm2},~{ymm3},~{ymm4},~{ymm5},~{ymm6},~{ymm7},~{ymm8},~{ymm9},~{ymm10},~{ymm11},~{ymm12},~{ymm13},~{ymm14},~{ymm15},~{dirflag},~{fpsr},~{flags}"(<8 x float> %_ymm1)63  ret <8 x float> %064}65 66define <8 x float> @testymm_3(<8 x float> %_ymm0, <8 x float> %_ymm1) {67entry:68; CHECK: vminpd  %ymm16, %ymm16, %ymm1669  %0 = tail call <8 x float> asm "vminpd $1, $2, $0", "=v,v,v,~{ymm0},~{ymm1},~{ymm2},~{ymm3},~{ymm4},~{ymm5},~{ymm6},~{ymm7},~{ymm8},~{ymm9},~{ymm10},~{ymm11},~{ymm12},~{ymm13},~{ymm14},~{ymm15},~{dirflag},~{fpsr},~{flags}"(<8 x float> %_ymm1, <8 x float> %_ymm1)70  ret <8 x float> %071}72 73define <8 x float> @testymm_4(<8 x float> %_ymm0, <8 x float> %_ymm1) {74entry:75; CHECK: vpabsq  %ymm16, %ymm1676  %0 = tail call <8 x float> asm "vpabsq $1, $0", "=v,v,~{ymm0},~{ymm1},~{ymm2},~{ymm3},~{ymm4},~{ymm5},~{ymm6},~{ymm7},~{ymm8},~{ymm9},~{ymm10},~{ymm11},~{ymm12},~{ymm13},~{ymm14},~{ymm15},~{dirflag},~{fpsr},~{flags}"(<8 x float> %_ymm1)77  ret <8 x float> %078}79 80define <8 x float> @testymm_5(<8 x float> %_ymm0, <8 x float> %_ymm1) {81entry:82; CHECK: vpandd  %ymm16, %ymm17, %ymm1683  %0 = tail call <8 x float> asm "vpandd $1, $2, $0", "=v,v,v,~{ymm0},~{ymm1},~{ymm2},~{ymm3},~{ymm4},~{ymm5},~{ymm6},~{ymm7},~{ymm8},~{ymm9},~{ymm10},~{ymm11},~{ymm12},~{ymm13},~{ymm14},~{ymm15},~{dirflag},~{fpsr},~{flags}"(<8 x float> %_ymm1, <8 x float> %_ymm0)84  ret <8 x float> %085}86 87define <8 x float> @testymm_6(<8 x float> %_ymm0, <8 x float> %_ymm1) {88entry:89; CHECK: vpandnd %ymm16, %ymm17, %ymm1690  %0 = tail call <8 x float> asm "vpandnd $1, $2, $0", "=v,v,v,~{ymm0},~{ymm1},~{ymm2},~{ymm3},~{ymm4},~{ymm5},~{ymm6},~{ymm7},~{ymm8},~{ymm9},~{ymm10},~{ymm11},~{ymm12},~{ymm13},~{ymm14},~{ymm15},~{dirflag},~{fpsr},~{flags}"(<8 x float> %_ymm1, <8 x float> %_ymm0)91  ret <8 x float> %092}93 94define <8 x float> @testymm_7(<8 x float> %_ymm0, <8 x float> %_ymm1) {95entry:96; CHECK: vpminud %ymm16, %ymm17, %ymm1697  %0 = tail call <8 x float> asm "vpminud $1, $2, $0", "=v,v,v,~{ymm0},~{ymm1},~{ymm2},~{ymm3},~{ymm4},~{ymm5},~{ymm6},~{ymm7},~{ymm8},~{ymm9},~{ymm10},~{ymm11},~{ymm12},~{ymm13},~{ymm14},~{ymm15},~{dirflag},~{fpsr},~{flags}"(<8 x float> %_ymm1, <8 x float> %_ymm0)98  ret <8 x float> %099}100 101define <8 x float> @testymm_8(<8 x float> %_ymm0, <8 x float> %_ymm1) {102entry:103; CHECK: vpmaxsd %ymm16, %ymm17, %ymm16104  %0 = tail call <8 x float> asm "vpmaxsd $1, $2, $0", "=v,v,v,~{ymm0},~{ymm1},~{ymm2},~{ymm3},~{ymm4},~{ymm5},~{ymm6},~{ymm7},~{ymm8},~{ymm9},~{ymm10},~{ymm11},~{ymm12},~{ymm13},~{ymm14},~{ymm15},~{dirflag},~{fpsr},~{flags}"(<8 x float> %_ymm1, <8 x float> %_ymm0)105  ret <8 x float> %0106}107 108define <8 x float> @testymm_9(<8 x float> %_ymm0, <8 x float> %_ymm1) {109entry:110; CHECK: vmovups %ymm16, %ymm16111  %0 = tail call <8 x float> asm "vmovups $1, $0", "=v,v,~{ymm0},~{ymm1},~{ymm2},~{ymm3},~{ymm4},~{ymm5},~{ymm6},~{ymm7},~{ymm8},~{ymm9},~{ymm10},~{ymm11},~{ymm12},~{ymm13},~{ymm14},~{ymm15},~{dirflag},~{fpsr},~{flags}"(<8 x float> %_ymm1)112  ret <8 x float> %0113}114 115define <8 x float> @testymm_10(<8 x float> %_ymm0, <8 x float> %_ymm1) {116entry:117; CHECK: vmovupd %ymm16, %ymm16118  %0 = tail call <8 x float> asm "vmovupd $1, $0", "=v,v,~{ymm0},~{ymm1},~{ymm2},~{ymm3},~{ymm4},~{ymm5},~{ymm6},~{ymm7},~{ymm8},~{ymm9},~{ymm10},~{ymm11},~{ymm12},~{ymm13},~{ymm14},~{ymm15},~{dirflag},~{fpsr},~{flags}"(<8 x float> %_ymm1)119  ret <8 x float> %0120}121 122