summaryrefslogtreecommitdiff
path: root/lib/Target/X86/Disassembler
diff options
context:
space:
mode:
authorCraig Topper <craig.topper@gmail.com>2012-03-04 02:16:41 +0000
committerCraig Topper <craig.topper@gmail.com>2012-03-04 02:16:41 +0000
commit991271d9c454c9d599b63e4ebdd27b546e1782a1 (patch)
tree383f77f380386d34d4ba8abfbf96ea123a3b14d8 /lib/Target/X86/Disassembler
parentb08bb34a6f49c79e963aac52030c0cbeb0526f86 (diff)
downloadllvm-991271d9c454c9d599b63e4ebdd27b546e1782a1.tar.gz
llvm-991271d9c454c9d599b63e4ebdd27b546e1782a1.tar.bz2
llvm-991271d9c454c9d599b63e4ebdd27b546e1782a1.tar.xz
Use uint8_t instead of enums to store values in X86 disassembler table. Shaves 150k off the size of X86DisassemblerDecoder.o
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@151995 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/Disassembler')
-rw-r--r--lib/Target/X86/Disassembler/X86Disassembler.cpp2
-rw-r--r--lib/Target/X86/Disassembler/X86DisassemblerDecoderCommon.h6
2 files changed, 4 insertions, 4 deletions
diff --git a/lib/Target/X86/Disassembler/X86Disassembler.cpp b/lib/Target/X86/Disassembler/X86Disassembler.cpp
index 963bdd1537..8278bde7c2 100644
--- a/lib/Target/X86/Disassembler/X86Disassembler.cpp
+++ b/lib/Target/X86/Disassembler/X86Disassembler.cpp
@@ -320,7 +320,7 @@ static void translateImmediate(MCInst &mcInst, uint64_t immediate,
const MCDisassembler *Dis) {
// Sign-extend the immediate if necessary.
- OperandType type = operand.type;
+ OperandType type = (OperandType)operand.type;
if (type == TYPE_RELv) {
switch (insn.displacementSize) {
diff --git a/lib/Target/X86/Disassembler/X86DisassemblerDecoderCommon.h b/lib/Target/X86/Disassembler/X86DisassemblerDecoderCommon.h
index d5e7c69019..d2e30f1766 100644
--- a/lib/Target/X86/Disassembler/X86DisassemblerDecoderCommon.h
+++ b/lib/Target/X86/Disassembler/X86DisassemblerDecoderCommon.h
@@ -343,8 +343,8 @@ typedef enum {
* operand.
*/
struct OperandSpecifier {
- OperandEncoding encoding;
- OperandType type;
+ uint8_t encoding;
+ uint8_t type;
};
/*
@@ -371,7 +371,7 @@ typedef enum {
* its operands.
*/
struct InstructionSpecifier {
- ModifierType modifierType;
+ uint8_t modifierType;
uint8_t modifierBase;
struct OperandSpecifier operands[X86_MAX_OPERANDS];