mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-12-13 04:30:23 +00:00
Remove some instructions that seem to only exist to trick the filtering checks in the disassembler table creation. Just fix up the filter to let the real instruction through instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@192090 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
510fb362a8
commit
e778f82a1e
@ -4774,18 +4774,6 @@ def VMOVQd64rr_alt : VS2I<0x7E, MRMDestReg, (outs GR64:$dst), (ins VR128:$src),
|
||||
IIC_SSE_MOVDQ>, VEX, VEX_W;
|
||||
} // SchedRW
|
||||
|
||||
// Instructions for the disassembler
|
||||
// xr = XMM register
|
||||
// xm = mem64
|
||||
|
||||
let SchedRW = [WriteMove] in {
|
||||
let Predicates = [UseAVX] in
|
||||
def VMOVQxrxr: I<0x7E, MRMSrcReg, (outs VR128:$dst), (ins VR128:$src),
|
||||
"vmovq\t{$src, $dst|$dst, $src}", []>, VEX, XS;
|
||||
def MOVQxrxr : I<0x7E, MRMSrcReg, (outs VR128:$dst), (ins VR128:$src),
|
||||
"movq\t{$src, $dst|$dst, $src}", [], IIC_SSE_MOVQ_RR>, XS;
|
||||
} // SchedRW
|
||||
|
||||
//===---------------------------------------------------------------------===//
|
||||
// SSE3 - Replicate Single FP - MOVSHDUP and MOVSLDUP
|
||||
//===---------------------------------------------------------------------===//
|
||||
|
@ -690,3 +690,9 @@
|
||||
|
||||
# CHECK: decl %ecx
|
||||
0x49
|
||||
|
||||
# CHECK: movq %xmm0, %xmm0
|
||||
0xf3 0x0f 0x7e 0xc0
|
||||
|
||||
# CHECK: vmovq %xmm0, %xmm0
|
||||
0xc5 0xfa 0x7e 0xc0
|
||||
|
@ -223,3 +223,9 @@
|
||||
|
||||
# CHECK: decq %rcx
|
||||
0x48 0xff 0xc9
|
||||
|
||||
# CHECK: movq %xmm0, %xmm0
|
||||
0xf3 0x0f 0x7e 0xc0
|
||||
|
||||
# CHECK: vmovq %xmm0, %xmm0
|
||||
0xc5 0xfa 0x7e 0xc0
|
||||
|
@ -538,7 +538,8 @@ RecognizableInstr::filter_ret RecognizableInstr::filter() const {
|
||||
|
||||
if (Name.find("MOV") != Name.npos && Name.find("r0") != Name.npos)
|
||||
return FILTER_WEAK;
|
||||
if (Name.find("MOVZ") != Name.npos && Name.find("MOVZX") == Name.npos)
|
||||
if (Name.find("MOVZ") != Name.npos && Name.find("MOVZX") == Name.npos &&
|
||||
Name != "MOVZPQILo2PQIrr")
|
||||
return FILTER_WEAK;
|
||||
if (Name.find("Fs") != Name.npos)
|
||||
return FILTER_WEAK;
|
||||
|
Loading…
Reference in New Issue
Block a user