AArch64: use default asm operand printing when modifier inapplicable
authorTim Northover <tnorthover@apple.com>
Mon, 4 Nov 2013 23:04:07 +0000 (23:04 +0000)
committerTim Northover <tnorthover@apple.com>
Mon, 4 Nov 2013 23:04:07 +0000 (23:04 +0000)
commit627ef0cf5e3d1989eadab38e491268847b32869f
tree396f0964cbd75dc3c48d3f47cb8f22e6ad640533
parentba29378fdc8aa184c0d7fa08022790b7ec7d8acf
AArch64: use default asm operand printing when modifier inapplicable

If an inline assembly operand has multiple constraints (e.g. "Ir" for immediate
or register) and an operand modifier (E.g. "w" for "print register as wN") then
we need to decide behaviour when the modifier doesn't apply to the constraint.

Previousely produced some combination of an assertion failure and a fatal
error. GCC's behaviour appears to be to ignore the modifier and print the
operand in the default way. This patch should implement that.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194024 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AArch64/AArch64AsmPrinter.cpp
test/CodeGen/AArch64/inline-asm-modifiers.ll