llvm-project/llvm/test/CodeGen/MSP430
Nick Desaulniers 7ab164c4a4 [AsmPrinter] refactor to support %c w/ GlobalAddress'
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
2019-04-26 18:45:04 +00:00
..
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 [MSP430] Emit a separate section for every interrupt vector 2019-01-16 14:03:41 +00:00
2009-12-22-InlineAsm.ll
2010-05-01-CombinerAnd.ll
AddrMode-bis-rx.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
AddrMode-bis-xr.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
AddrMode-mov-rx.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
AddrMode-mov-xr.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
BranchSelector.ll
DbgValueOtherTargets.test
Inst8mi.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
Inst8mm.ll [MSP430] Add missing instruction forms 2019-01-10 22:54:53 +00:00
Inst8mr.ll
Inst8ri.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
Inst8rm.ll
Inst8rr.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
Inst16mi.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
Inst16mm.ll [MSP430] Add missing instruction forms 2019-01-10 22:54:53 +00:00
Inst16mr.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
Inst16ri.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
Inst16rm.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
Inst16rr.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
InstII.ll [MSP430] Add missing instruction forms 2019-01-10 22:54:53 +00:00
asm-clobbers.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
bit.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
byval.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
callee-saved.ll [MSP430] Add more tests for ABI and calling convention 2018-11-16 09:47:58 +00:00
calls.ll [MSP430] Add more tests for ABI and calling convention 2018-11-16 09:47:58 +00:00
cc_args.ll [DAGCombiner] If a TokenFactor would be merged into its user, consider the user later. 2019-03-13 17:07:09 +00:00
cc_ret.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
flt_rounds.ll
fp.ll [MSP430] Emit a separate section for every interrupt vector 2019-01-16 14:03:41 +00:00
hwmult16.ll
hwmult32.ll
hwmultf5.ll
indirectbr.ll
indirectbr2.ll
inline-asm-absolute-addressing.ll [MSP430] Fix absolute addressing mode printing in AsmPrinter 2019-01-25 09:14:05 +00:00
inline-asm.ll
inlineasm-output-template.ll [AsmPrinter] refactor to support %c w/ GlobalAddress' 2019-04-26 18:45:04 +00:00
interrupt.ll [MSP430] Emit a separate section for every interrupt vector 2019-01-16 14:03:41 +00:00
jumptable.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
libcalls.ll [MSP430] Add RTLIB::[SRL/SRA/SHL]_I32 lowering to EABI lib calls 2018-11-16 19:36:15 +00:00
lit.local.cfg
memset.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
misched-msp430.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
mult-alt-generic-msp430.ll Enable integrated assembler on MSP430 by default. 2019-02-05 18:01:45 +00:00
postinc.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
promote-i8-mul.ll
select-use-sr.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
setcc.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
shifts.ll [MSP430] Optimize 'shl x, 8[+ N] -> swpb(zext(x)) [<< N]' for i16 2019-01-09 13:03:01 +00:00
spill-to-stack.ll
stacksave_restore.ll [MSP430] Fix crash while lowering llvm.stacksave/stackrestore 2019-01-09 12:52:15 +00:00
struct-return.ll [MSP430] Add more tests for ABI and calling convention 2018-11-16 09:47:58 +00:00
struct_layout.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
transient-stack-alignment.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00
umulo-16.ll
vararg.ll [MSP430] Add MC layer 2018-11-15 12:29:43 +00:00