diff options
| author | Kevin Enderby <enderby@apple.com> | 2013-03-11 21:17:13 +0000 |
|---|---|---|
| committer | Kevin Enderby <enderby@apple.com> | 2013-03-11 21:17:13 +0000 |
| commit | f15856ebb473747e9f8ede72101053a38aaf8629 (patch) | |
| tree | b378c660c0e42a04c8188fb0b5ae49cf1854d18f /llvm/utils | |
| parent | 9534d8885f9b35975987ff04fc02befcbc98de7f (diff) | |
| download | bcm5719-llvm-f15856ebb473747e9f8ede72101053a38aaf8629.tar.gz bcm5719-llvm-f15856ebb473747e9f8ede72101053a38aaf8629.zip | |
Fixes disassembler crashes on 2013 Haswell RTM instructions.
rdar://13318048
llvm-svn: 176828
Diffstat (limited to 'llvm/utils')
| -rw-r--r-- | llvm/utils/TableGen/X86RecognizableInstr.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/llvm/utils/TableGen/X86RecognizableInstr.cpp b/llvm/utils/TableGen/X86RecognizableInstr.cpp index b00f7ea2bad..8471faaaf62 100644 --- a/llvm/utils/TableGen/X86RecognizableInstr.cpp +++ b/llvm/utils/TableGen/X86RecognizableInstr.cpp @@ -764,6 +764,17 @@ void RecognizableInstr::emitInstructionSpecifier(DisassemblerTables &tables) { HANDLE_OPERAND(immediate) HANDLE_OPERAND(immediate) break; + case X86Local::MRM_F8: + if (Opcode == 0xc6) { + assert(numPhysicalOperands == 1 && + "Unexpected number of operands for X86Local::MRM_F8"); + HANDLE_OPERAND(immediate) + } else if (Opcode == 0xc7) { + assert(numPhysicalOperands == 1 && + "Unexpected number of operands for X86Local::MRM_F8"); + HANDLE_OPERAND(relocation) + } + break; case X86Local::MRMInitReg: // Ignored. break; |

