mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-13 23:18:58 +00:00
Add the "vbroadcasti128" instruction back.
This is a follow-up to r231182. This adds the "vbroadcasti128" instruction back, but without the intrinsic mapping. Also add a test to check the instriction encoding. This is related to rdar://problem/18742778. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@231945 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
87e6561f34
commit
9814f7b92c
@ -7833,6 +7833,11 @@ def VBROADCASTSDYrr : avx2_broadcast_reg<0x19, "vbroadcastsd", VR256,
|
||||
int_x86_avx2_vbroadcast_sd_pd_256,
|
||||
WriteFShuffle256>, VEX_L;
|
||||
|
||||
let Predicates = [HasAVX2] in
|
||||
def VBROADCASTI128 : avx_broadcast_no_int<0x5A, "vbroadcasti128", VR256,
|
||||
i128mem, v4i64, loadv2i64,
|
||||
WriteLoad>, VEX_L;
|
||||
|
||||
let Predicates = [HasAVX] in
|
||||
def : Pat<(int_x86_avx_vbroadcastf128_ps_256 addr:$src),
|
||||
(VBROADCASTF128 addr:$src)>;
|
||||
|
@ -3724,6 +3724,10 @@ vdivpd -4(%rcx,%rbx,8), %xmm10, %xmm11
|
||||
// CHECK: encoding: [0xc4,0x63,0x2d,0x40,0x18,0x03]
|
||||
vdpps $3, (%rax), %ymm10, %ymm11
|
||||
|
||||
// CHECK: vbroadcasti128 (%rax), %ymm12
|
||||
// CHECK: encoding: [0xc4,0x62,0x7d,0x5a,0x20]
|
||||
vbroadcasti128 (%rax), %ymm12
|
||||
|
||||
// CHECK: vbroadcastf128 (%rax), %ymm12
|
||||
// CHECK: encoding: [0xc4,0x62,0x7d,0x1a,0x20]
|
||||
vbroadcastf128 (%rax), %ymm12
|
||||
|
Loading…
Reference in New Issue
Block a user