mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-24 03:33:20 +01:00
Flip the arguments when converting vpermd/vpermps intrinsics into instructions. The intrinsic has the mask as the last operand, but the instruction has it as the second.
llvm-svn: 154797
This commit is contained in:
parent
3514c015bd
commit
129dccdc84
@ -7740,13 +7740,13 @@ multiclass avx2_perm<bits<8> opc, string OpcodeStr, PatFrag mem_frag,
|
||||
(ins VR256:$src1, VR256:$src2),
|
||||
!strconcat(OpcodeStr,
|
||||
"\t{$src2, $src1, $dst|$dst, $src1, $src2}"),
|
||||
[(set VR256:$dst, (Int VR256:$src1, VR256:$src2))]>, VEX_4V;
|
||||
[(set VR256:$dst, (Int VR256:$src2, VR256:$src1))]>, VEX_4V;
|
||||
def Yrm : AVX28I<opc, MRMSrcMem, (outs VR256:$dst),
|
||||
(ins VR256:$src1, i256mem:$src2),
|
||||
!strconcat(OpcodeStr,
|
||||
"\t{$src2, $src1, $dst|$dst, $src1, $src2}"),
|
||||
[(set VR256:$dst, (Int VR256:$src1,
|
||||
(bitconvert (mem_frag addr:$src2))))]>,
|
||||
[(set VR256:$dst, (Int (bitconvert (mem_frag addr:$src2)),
|
||||
VR256:$src1))]>,
|
||||
VEX_4V;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user