diff options
-rw-r--r-- | llvm/lib/Target/X86/X86InstrAVX512.td | 20 | ||||
-rw-r--r-- | llvm/lib/Target/X86/X86InstrSSE.td | 4 |
2 files changed, 13 insertions, 11 deletions
diff --git a/llvm/lib/Target/X86/X86InstrAVX512.td b/llvm/lib/Target/X86/X86InstrAVX512.td index bd0f47cb300..d83f9f6ff05 100644 --- a/llvm/lib/Target/X86/X86InstrAVX512.td +++ b/llvm/lib/Target/X86/X86InstrAVX512.td @@ -3252,18 +3252,20 @@ let SchedRW = [WriteLoad] in { SSEPackedInt>, EVEX, T8PD, EVEX_V512, EVEX_CD8<64, CD8VF>; - let Predicates = [HasAVX512, HasVLX] in { + let Predicates = [HasVLX] in { def VMOVNTDQAZ256rm : AVX512PI<0x2A, MRMSrcMem, (outs VR256X:$dst), - (ins i256mem:$src), - "vmovntdqa\t{$src, $dst|$dst, $src}", [], - SSEPackedInt>, EVEX, T8PD, EVEX_V256, - EVEX_CD8<64, CD8VF>; + (ins i256mem:$src), + "vmovntdqa\t{$src, $dst|$dst, $src}", + [(set VR256X:$dst, (int_x86_avx2_movntdqa addr:$src))], + SSEPackedInt>, EVEX, T8PD, EVEX_V256, + EVEX_CD8<64, CD8VF>; def VMOVNTDQAZ128rm : AVX512PI<0x2A, MRMSrcMem, (outs VR128X:$dst), - (ins i128mem:$src), - "vmovntdqa\t{$src, $dst|$dst, $src}", [], - SSEPackedInt>, EVEX, T8PD, EVEX_V128, - EVEX_CD8<64, CD8VF>; + (ins i128mem:$src), + "vmovntdqa\t{$src, $dst|$dst, $src}", + [(set VR128X:$dst, (int_x86_sse41_movntdqa addr:$src))], + SSEPackedInt>, EVEX, T8PD, EVEX_V128, + EVEX_CD8<64, CD8VF>; } } diff --git a/llvm/lib/Target/X86/X86InstrSSE.td b/llvm/lib/Target/X86/X86InstrSSE.td index 5a5eb2093ff..e7921a7b43c 100644 --- a/llvm/lib/Target/X86/X86InstrSSE.td +++ b/llvm/lib/Target/X86/X86InstrSSE.td @@ -7246,12 +7246,12 @@ let Predicates = [UseSSE41] in { } let SchedRW = [WriteLoad] in { -let Predicates = [HasAVX] in +let Predicates = [HasAVX, NoVLX] in def VMOVNTDQArm : SS48I<0x2A, MRMSrcMem, (outs VR128:$dst), (ins i128mem:$src), "vmovntdqa\t{$src, $dst|$dst, $src}", [(set VR128:$dst, (int_x86_sse41_movntdqa addr:$src))]>, VEX; -let Predicates = [HasAVX2] in +let Predicates = [HasAVX2, NoVLX] in def VMOVNTDQAYrm : SS48I<0x2A, MRMSrcMem, (outs VR256:$dst), (ins i256mem:$src), "vmovntdqa\t{$src, $dst|$dst, $src}", [(set VR256:$dst, (int_x86_avx2_movntdqa addr:$src))]>, |