summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorAndrew V. Tischenko <andrew.v.tischenko@gmail.com>2017-10-30 12:02:06 +0000
committerAndrew V. Tischenko <andrew.v.tischenko@gmail.com>2017-10-30 12:02:06 +0000
commitf94da596a7b410ef6915cffd7104e832bebb477b (patch)
tree67dba4f27d44aff4ab8e9a11824fff561538ba86 /llvm/lib
parent6e41e6ac6c2c38047355d765c2e372e56f4609e2 (diff)
downloadbcm5719-llvm-f94da596a7b410ef6915cffd7104e832bebb477b.tar.gz
bcm5719-llvm-f94da596a7b410ef6915cffd7104e832bebb477b.zip
Invalid used of 'w' suffix on push and pop using 64-bit register.
Differential Revision: https://reviews.llvm.org/D38626 llvm-svn: 316898
Diffstat (limited to 'llvm/lib')
-rw-r--r--llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp b/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp
index 709fc630633..843d037ad3c 100644
--- a/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp
+++ b/llvm/lib/Target/X86/Disassembler/X86DisassemblerDecoder.cpp
@@ -949,8 +949,10 @@ static int getID(struct InternalInstruction* insn, const void *miiArg) {
}
}
- if (insn->rexPrefix & 0x08)
+ if (insn->rexPrefix & 0x08) {
attrMask |= ATTR_REXW;
+ attrMask &= ~ATTR_ADSIZE;
+ }
/*
* JCXZ/JECXZ need special handling for 16-bit mode because the meaning
OpenPOWER on IntegriCloud