diff options
| author | Craig Topper <craig.topper@gmail.com> | 2012-02-09 08:58:07 +0000 |
|---|---|---|
| committer | Craig Topper <craig.topper@gmail.com> | 2012-02-09 08:58:07 +0000 |
| commit | a0cd970b81ea0a292f0fbbe7f0113746bfe8de5a (patch) | |
| tree | 4607198da6f42169bf15c5981ed92de796f6c786 /llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c | |
| parent | 410d6af9949ba556985c3b0ba5ea186cdecf2e02 (diff) | |
| download | bcm5719-llvm-a0cd970b81ea0a292f0fbbe7f0113746bfe8de5a.tar.gz bcm5719-llvm-a0cd970b81ea0a292f0fbbe7f0113746bfe8de5a.zip | |
More tweaks to get the size of the X86 disassembler tables down.
llvm-svn: 150167
Diffstat (limited to 'llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c')
| -rw-r--r-- | llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c b/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c index 9a628f2163d..a7becdb2c70 100644 --- a/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c +++ b/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.c @@ -136,6 +136,10 @@ static InstrUID decode(OpcodeType type, if (modFromModRM(modRM) == 0x3) return modRMTable[dec->instructionIDs+1]; return modRMTable[dec->instructionIDs]; + case MODRM_SPLITREG: + if (modFromModRM(modRM) == 0x3) + return modRMTable[dec->instructionIDs+((modRM & 0x38) >> 3)+8]; + return modRMTable[dec->instructionIDs+((modRM & 0x38) >> 3)]; case MODRM_FULL: return modRMTable[dec->instructionIDs+modRM]; } |

