aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Dunbar <daniel@zuster.org>2010-05-06 22:39:14 +0000
committerDaniel Dunbar <daniel@zuster.org>2010-05-06 22:39:14 +0000
commitc26ae5ab7e2d65b67c97524e66f50ce86445dec7 (patch)
tree952a94163a92266239b6c5cd8fe304e165248de1
parente1611f26e332045272923d4e540b055c1c08be4d (diff)
downloadexternal_llvm-c26ae5ab7e2d65b67c97524e66f50ce86445dec7.zip
external_llvm-c26ae5ab7e2d65b67c97524e66f50ce86445dec7.tar.gz
external_llvm-c26ae5ab7e2d65b67c97524e66f50ce86445dec7.tar.bz2
MC/X86: X86AbsMemAsmOperand is subclass of X86NoSegMemAsmOperand.
- This fixes "leal 0, %eax", for example. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103205 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/X86/X86InstrInfo.td8
-rw-r--r--test/MC/AsmParser/X86/x86_instructions.s3
2 files changed, 7 insertions, 4 deletions
diff --git a/lib/Target/X86/X86InstrInfo.td b/lib/Target/X86/X86InstrInfo.td
index 5b1f44d..4bb8cd2 100644
--- a/lib/Target/X86/X86InstrInfo.td
+++ b/lib/Target/X86/X86InstrInfo.td
@@ -197,14 +197,14 @@ def X86MemAsmOperand : AsmOperandClass {
let Name = "Mem";
let SuperClass = ?;
}
-def X86AbsMemAsmOperand : AsmOperandClass {
- let Name = "AbsMem";
- let SuperClass = X86MemAsmOperand;
-}
def X86NoSegMemAsmOperand : AsmOperandClass {
let Name = "NoSegMem";
let SuperClass = X86MemAsmOperand;
}
+def X86AbsMemAsmOperand : AsmOperandClass {
+ let Name = "AbsMem";
+ let SuperClass = X86NoSegMemAsmOperand;
+}
class X86MemOperand<string printMethod> : Operand<iPTR> {
let PrintMethod = printMethod;
let MIOperandInfo = (ops ptr_rc, i8imm, ptr_rc_nosp, i32imm, i8imm);
diff --git a/test/MC/AsmParser/X86/x86_instructions.s b/test/MC/AsmParser/X86/x86_instructions.s
index b558c2e..16a8046 100644
--- a/test/MC/AsmParser/X86/x86_instructions.s
+++ b/test/MC/AsmParser/X86/x86_instructions.s
@@ -143,3 +143,6 @@
fadd %st(0)
fadd %st(1)
fadd %st(7)
+
+// CHECK: leal 0, %eax
+ leal 0, %eax