aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2009-07-09 20:06:27 +0000
committerDale Johannesen <dalej@apple.com>2009-07-09 20:06:27 +0000
commit39f59d82504ab4b955a258f31b59c90b6454ae09 (patch)
tree7e7139620165ddc2696863d0ac68527820baee6f
parent98a39613ec6df88464ba2b4803901e7e6c1cb049 (diff)
Handle 'A' modifier in inline asms.
gcc.apple/asm-block-13.c gcc.apple/asm-block-57.c git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@75169 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp b/lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp
index 44d1e25461..4d1d17f374 100644
--- a/lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp
+++ b/lib/Target/X86/AsmPrinter/X86ATTAsmPrinter.cpp
@@ -656,6 +656,15 @@ bool X86ATTAsmPrinter::PrintAsmOperand(const MachineInstr *MI, unsigned OpNo,
case 'c': // Don't print "$" before a global var name or constant.
printOperand(MI, OpNo, "mem");
return false;
+
+ case 'A': // Print '*' before a register (it must be a register)
+ if (MI->getOperand(OpNo).isReg()) {
+ O << '*';
+ printOperand(MI, OpNo);
+ return false;
+ }
+ return true;
+
case 'b': // Print QImode register
case 'h': // Print QImode high register
case 'w': // Print HImode register