forked from OSchip/llvm-project
7ab164c4a4
Summary: Targets like ARM, MSP430, PPC, and SystemZ have complex behavior when printing the address of a MachineOperand::MO_GlobalAddress. Move that handling into a new overriden method in each base class. A virtual method was added to the base class for handling the generic case. Refactors a few subclasses to support the target independent %a, %c, and %n. The patch also contains small cleanups for AVRAsmPrinter and SystemZAsmPrinter. It seems that NVPTXTargetLowering is possibly missing some logic to transform GlobalAddressSDNodes for TargetLowering::LowerAsmOperandForConstraint to handle with "i" extended inline assembly asm constraints. Fixes: - https://bugs.llvm.org/show_bug.cgi?id=41402 - https://github.com/ClangBuiltLinux/linux/issues/449 Reviewers: echristo, void Reviewed By: void Subscribers: void, craig.topper, jholewinski, dschuff, jyknight, dylanmckay, sdardis, nemanjai, javed.absar, sbc100, jgravelle-google, eraman, kristof.beyls, hiraditya, aheejin, kbarton, fedor.sergeev, jrtc27, atanasyan, jsji, llvm-commits, kees, tpimh, nathanchance, peter.smith, srhines Tags: #llvm Differential Revision: https://reviews.llvm.org/D60887 llvm-svn: 359337 |
||
---|---|---|
.. | ||
2009-05-10-CyclicDAG.ll | ||
2009-05-17-Rot.ll | ||
2009-05-17-Shift.ll | ||
2009-05-19-DoubleSplit.ll | ||
2009-08-25-DynamicStackAlloc.ll | ||
2009-09-18-AbsoluteAddr.ll | ||
2009-10-10-OrImpDef.ll | ||
2009-11-08-InvalidResNo.ll | ||
2009-11-20-NewNode.ll | ||
2009-12-21-FrameAddr.ll | ||
2009-12-22-InlineAsm.ll | ||
2010-05-01-CombinerAnd.ll | ||
AddrMode-bis-rx.ll | ||
AddrMode-bis-xr.ll | ||
AddrMode-mov-rx.ll | ||
AddrMode-mov-xr.ll | ||
BranchSelector.ll | ||
DbgValueOtherTargets.test | ||
Inst8mi.ll | ||
Inst8mm.ll | ||
Inst8mr.ll | ||
Inst8ri.ll | ||
Inst8rm.ll | ||
Inst8rr.ll | ||
Inst16mi.ll | ||
Inst16mm.ll | ||
Inst16mr.ll | ||
Inst16ri.ll | ||
Inst16rm.ll | ||
Inst16rr.ll | ||
InstII.ll | ||
asm-clobbers.ll | ||
bit.ll | ||
byval.ll | ||
callee-saved.ll | ||
calls.ll | ||
cc_args.ll | ||
cc_ret.ll | ||
flt_rounds.ll | ||
fp.ll | ||
hwmult16.ll | ||
hwmult32.ll | ||
hwmultf5.ll | ||
indirectbr.ll | ||
indirectbr2.ll | ||
inline-asm-absolute-addressing.ll | ||
inline-asm.ll | ||
inlineasm-output-template.ll | ||
interrupt.ll | ||
jumptable.ll | ||
libcalls.ll | ||
lit.local.cfg | ||
memset.ll | ||
misched-msp430.ll | ||
mult-alt-generic-msp430.ll | ||
postinc.ll | ||
promote-i8-mul.ll | ||
select-use-sr.ll | ||
setcc.ll | ||
shifts.ll | ||
spill-to-stack.ll | ||
stacksave_restore.ll | ||
struct-return.ll | ||
struct_layout.ll | ||
transient-stack-alignment.ll | ||
umulo-16.ll | ||
vararg.ll |