diff options
author | Craig Topper <craig.topper@intel.com> | 2018-03-29 03:14:57 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@intel.com> | 2018-03-29 03:14:57 +0000 |
commit | 7456af88f4bf6c68291e9175565cdd87b94f907f (patch) | |
tree | c30f123cfd2aa4da21b678eb92f33f2d887bbc1b | |
parent | 7441ffff84c1afee3d3d4bfef04021c2549ed474 (diff) | |
download | bcm5719-llvm-7456af88f4bf6c68291e9175565cdd87b94f907f.tar.gz bcm5719-llvm-7456af88f4bf6c68291e9175565cdd87b94f907f.zip |
[X86] Rename RIi64_NOREX tblgen class to just Ii64. Make RIi64 inherit from it. NFC
This feels more consistent with the other classes. We don't need to say _NOREX if we didn't start it with an R in the first place.
llvm-svn: 328757
-rw-r--r-- | llvm/lib/Target/X86/X86InstrFormats.td | 22 | ||||
-rw-r--r-- | llvm/lib/Target/X86/X86InstrInfo.td | 20 |
2 files changed, 19 insertions, 23 deletions
diff --git a/llvm/lib/Target/X86/X86InstrFormats.td b/llvm/lib/Target/X86/X86InstrFormats.td index 6cf6781e038..8779940cbfc 100644 --- a/llvm/lib/Target/X86/X86InstrFormats.td +++ b/llvm/lib/Target/X86/X86InstrFormats.td @@ -403,6 +403,13 @@ class Ii32S<bits<8> o, Format f, dag outs, dag ins, string asm, let CodeSize = 3; } +class Ii64<bits<8> o, Format f, dag outs, dag ins, string asm, + list<dag> pattern, InstrItinClass itin = NoItinerary> + : X86Inst<o, f, Imm64, outs, ins, asm, itin> { + let Pattern = pattern; + let CodeSize = 3; +} + class Ii16PCRel<bits<8> o, Format f, dag outs, dag ins, string asm, list<dag> pattern, InstrItinClass itin = NoItinerary> : X86Inst<o, f, Imm16PCRel, outs, ins, asm, itin> { @@ -929,20 +936,9 @@ class RIi32 <bits<8> o, Format F, dag outs, dag ins, string asm, class RIi32S <bits<8> o, Format F, dag outs, dag ins, string asm, list<dag> pattern, InstrItinClass itin = NoItinerary> : Ii32S<o, F, outs, ins, asm, pattern, itin>, REX_W; - -class RIi64<bits<8> o, Format f, dag outs, dag ins, string asm, - list<dag> pattern, InstrItinClass itin = NoItinerary> - : X86Inst<o, f, Imm64, outs, ins, asm, itin>, REX_W { - let Pattern = pattern; - let CodeSize = 3; -} - -class RIi64_NOREX<bits<8> o, Format f, dag outs, dag ins, string asm, +class RIi64<bits<8> o, Format F, dag outs, dag ins, string asm, list<dag> pattern, InstrItinClass itin = NoItinerary> - : X86Inst<o, f, Imm64, outs, ins, asm, itin> { - let Pattern = pattern; - let CodeSize = 3; -} + : Ii64<o, F, outs, ins, asm, pattern, itin>, REX_W; class RS2I<bits<8> o, Format F, dag outs, dag ins, string asm, list<dag> pattern, InstrItinClass itin = NoItinerary> diff --git a/llvm/lib/Target/X86/X86InstrInfo.td b/llvm/lib/Target/X86/X86InstrInfo.td index 5a09785e0e8..5eaf55b09f2 100644 --- a/llvm/lib/Target/X86/X86InstrInfo.td +++ b/llvm/lib/Target/X86/X86InstrInfo.td @@ -1581,15 +1581,15 @@ def MOV32o16a : Ii16<0xA3, RawFrmMemOffs, (outs), (ins offset16_32:$dst), // and use the movabs mnemonic to indicate this specific form. let mayLoad = 1 in { let Defs = [AL] in -def MOV8ao64 : RIi64_NOREX<0xA0, RawFrmMemOffs, (outs), (ins offset64_8:$src), - "movabs{b}\t{$src, %al|al, $src}", [], IIC_MOV_MEM>, - AdSize64; +def MOV8ao64 : Ii64<0xA0, RawFrmMemOffs, (outs), (ins offset64_8:$src), + "movabs{b}\t{$src, %al|al, $src}", [], IIC_MOV_MEM>, + AdSize64; let Defs = [AX] in -def MOV16ao64 : RIi64_NOREX<0xA1, RawFrmMemOffs, (outs), (ins offset64_16:$src), +def MOV16ao64 : Ii64<0xA1, RawFrmMemOffs, (outs), (ins offset64_16:$src), "movabs{w}\t{$src, %ax|ax, $src}", [], IIC_MOV_MEM>, OpSize16, AdSize64; let Defs = [EAX] in -def MOV32ao64 : RIi64_NOREX<0xA1, RawFrmMemOffs, (outs), (ins offset64_32:$src), +def MOV32ao64 : Ii64<0xA1, RawFrmMemOffs, (outs), (ins offset64_32:$src), "movabs{l}\t{$src, %eax|eax, $src}", [], IIC_MOV_MEM>, OpSize32, AdSize64; let Defs = [RAX] in @@ -1600,15 +1600,15 @@ def MOV64ao64 : RIi64<0xA1, RawFrmMemOffs, (outs), (ins offset64_64:$src), let mayStore = 1 in { let Uses = [AL] in -def MOV8o64a : RIi64_NOREX<0xA2, RawFrmMemOffs, (outs), (ins offset64_8:$dst), - "movabs{b}\t{%al, $dst|$dst, al}", [], IIC_MOV_MEM>, - AdSize64; +def MOV8o64a : Ii64<0xA2, RawFrmMemOffs, (outs), (ins offset64_8:$dst), + "movabs{b}\t{%al, $dst|$dst, al}", [], IIC_MOV_MEM>, + AdSize64; let Uses = [AX] in -def MOV16o64a : RIi64_NOREX<0xA3, RawFrmMemOffs, (outs), (ins offset64_16:$dst), +def MOV16o64a : Ii64<0xA3, RawFrmMemOffs, (outs), (ins offset64_16:$dst), "movabs{w}\t{%ax, $dst|$dst, ax}", [], IIC_MOV_MEM>, OpSize16, AdSize64; let Uses = [EAX] in -def MOV32o64a : RIi64_NOREX<0xA3, RawFrmMemOffs, (outs), (ins offset64_32:$dst), +def MOV32o64a : Ii64<0xA3, RawFrmMemOffs, (outs), (ins offset64_32:$dst), "movabs{l}\t{%eax, $dst|$dst, eax}", [], IIC_MOV_MEM>, OpSize32, AdSize64; let Uses = [RAX] in |