diff options
author | Craig Topper <craig.topper@gmail.com> | 2011-10-07 05:35:38 +0000 |
---|---|---|
committer | Craig Topper <craig.topper@gmail.com> | 2011-10-07 05:35:38 +0000 |
commit | 25f6dfd108801d1dc5877c420ef0dd47131aeda7 (patch) | |
tree | 19b85532007f5e2d8b574e7029b8c10d31010c14 /utils/TableGen/X86DisassemblerTables.cpp | |
parent | 217f0e9ca494a1752c591f50f04b4143eb1763c5 (diff) |
Revert part of r141274. Only need to change encoding for xchg %eax, %eax in 64-bit mode. This is because in 64-bit mode xchg %eax, %eax implies zeroing the upper 32-bits of RAX which makes it not a NOP. In 32-bit mode using NOP encoding is fine.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141353 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'utils/TableGen/X86DisassemblerTables.cpp')
-rw-r--r-- | utils/TableGen/X86DisassemblerTables.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/utils/TableGen/X86DisassemblerTables.cpp b/utils/TableGen/X86DisassemblerTables.cpp index 218a1a227c..f42119c074 100644 --- a/utils/TableGen/X86DisassemblerTables.cpp +++ b/utils/TableGen/X86DisassemblerTables.cpp @@ -620,6 +620,7 @@ void DisassemblerTables::setTableFields(ModRMDecision &decision, if(previousInfo.name == "NOOP" && (newInfo.name == "XCHG16ar" || newInfo.name == "XCHG32ar" || + newInfo.name == "XCHG32ar64" || newInfo.name == "XCHG64ar")) continue; // special case for XCHG*ar and NOOP |