summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/MSP430/AsmPrinter/MSP430AsmPrinter.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Re-apply r115363 and r115366 now that r115525 has removed the un-needed headerJim Grosbach2010-10-051-179/+0
| | | | | | | | | that caused the circular dependencies on Linux. Built OK for me on OSX and Linux (Ubuntu) with configure/make and CMake. Will keep an eye on the bots.... llvm-svn: 115582
* Continue reverting r115363.Nick Lewycky2010-10-021-0/+179
| | | | llvm-svn: 115395
* Move the asmprinter and MC lowering out of the AsmPrinter (soon to beJim Grosbach2010-10-011-179/+0
| | | | | | InstPrinter) subdir llvm-svn: 115363
* prune some #includes.Chris Lattner2010-04-051-1/+0
| | | | llvm-svn: 100399
* simplify various getAnalysisUsage implementations.Chris Lattner2010-04-051-5/+0
| | | | llvm-svn: 100376
* Momentous day: remove the "O" member from AsmPrinter. Now all Chris Lattner2010-04-041-4/+3
| | | | | | | | | | "asm printering" happens through MCStreamer. This also Streamerizes PIC16 debug info, which escaped my attention. This removes a leak from LLVMTargetMachine of the 'legacy' output stream. llvm-svn: 100327
* mcize a bunch more stuff, using EmitRawText for things weChris Lattner2010-04-041-28/+8
| | | | | | don't have mcstreamer support for yet. llvm-svn: 100319
* fix PrintAsmOperand and PrintAsmMemoryOperand to pass down Chris Lattner2010-04-041-5/+6
| | | | | | raw_ostream to print to. llvm-svn: 100313
* fix an ugly wart in the MCInstPrinter api where theChris Lattner2010-04-041-4/+3
| | | | | | | | raw_ostream to print an instruction to had to be specified at MCInstPrinter construction time instead of being able to pick at each call to printInstruction. llvm-svn: 100307
* change a ton of code to not implicitly use the "O" raw_ostreamChris Lattner2010-04-041-1/+1
| | | | | | member of AsmPrinter. Instead, pass it in explicitly. llvm-svn: 100306
* eliminate the now-unneeded context argument of MBB::getSymbol()Chris Lattner2010-03-131-1/+1
| | | | llvm-svn: 98451
* rearrange MCContext ownership. Before LLVMTargetMachine created it Chris Lattner2010-03-131-3/+2
| | | | | | | | | | | and passing off ownership to AsmPrinter. Now MachineModuleInfo creates it and owns it by value. This allows us to use MCSymbols more consistently throughout the rest of the code generator, and simplifies a bit of code. This also allows MachineFunction to keep an MCContext reference handy, and cleans up the TargetRegistry interfaces for AsmPrinters. llvm-svn: 98450
* inline GetGlobalValueSymbol into the rest its callers andChris Lattner2010-03-121-1/+2
| | | | | | remove it. llvm-svn: 98390
* Do not use '&' prefix for globals when register base field is non-zero, ↵Anton Korobeynikov2010-03-061-10/+13
| | | | | | | | otherwise msp430-as will silently miscompile the code (TI's assembler report an error though). This fixes PR6349 llvm-svn: 97877
* emit instructions through the streamer.Chris Lattner2010-02-031-2/+1
| | | | llvm-svn: 95180
* rejigger the world so that EmitInstruction prints the \n atChris Lattner2010-02-031-0/+1
| | | | | | | | the end of the instruction instead of expecting the caller to do it. This currently causes the asm-verbose instruction comments to be on the next line. llvm-svn: 95178
* sink handling of target-independent machine instrs (otherChris Lattner2010-02-031-19/+0
| | | | | | | | than DEBUG_VALUE :( ) into the target indep AsmPrinter.cpp file. This allows elimination of the NO_ASM_WRITER_BOILERPLATE hack among other things. llvm-svn: 95177
* refactor code so that LLVMTargetMachine creates the asmstreamer and Chris Lattner2010-02-021-2/+3
| | | | | | | mccontext instead of having AsmPrinter do it. This allows other types of MCStreamer's to be passed in. llvm-svn: 95155
* Switch MSP430, SPU, Sparc, and SystemZ to use EmitFunctionBody().Chris Lattner2010-01-281-82/+11
| | | | | | | Diffstat: 6 files changed, 30 insertions(+), 284 deletions(-) llvm-svn: 94727
* Remove the argument from EmitJumpTableInfo, because it doesn't need it.Chris Lattner2010-01-281-1/+1
| | | | | | | | Move the X86 implementation of function body emission up to AsmPrinter::EmitFunctionBody, which works by calling the virtual EmitInstruction method. llvm-svn: 94716
* don't emit constant pools twice.Chris Lattner2010-01-281-1/+0
| | | | llvm-svn: 94706
* Switch MSP430, CellSPU, SystemZ, Darwin/PPC, Alpha, and Sparc to Chris Lattner2010-01-271-35/+2
| | | | | | | | EmitFunctionHeader: 7 files changed, 16 insertions(+), 210 deletions(-) llvm-svn: 94630
* call emitconstantpool and emitjumptable like other targets.Chris Lattner2010-01-261-0/+4
| | | | llvm-svn: 94601
* add a new MachineBasicBlock::getSymbol method, replacingChris Lattner2010-01-261-1/+1
| | | | | | the AsmPrinter::GetMBBSymbol. llvm-svn: 94515
* Now that we have everything nicely factored (e.g. asmprinter is notChris Lattner2010-01-191-84/+0
| | | | | | | | | | | | | | | | | | | | | | | doing global variable classification anymore) and hookized, sink almost all target targets global variable emission code into AsmPrinter and out of each target. Some notes: 1. PIC16 does completely custom and crazy stuff, so it is not changed. 2. XCore has some custom handling for extra directives. I'll look at it next. 3. This switches linux/ppc to use .globl instead of .global. If .globl is actually wrong, let me know and I'll fix it. 4. This makes linux/ppc get a lot of random cases right which were obviously wrong before, it is probably now a bit healthier. 5. Blackfin will probably start getting .comm and other things that it didn't before. If this is undesirable, it should explicitly opt out of these things by clearing the relevant fields of MCAsmInfo. This leads to a nice diffstat: 14 files changed, 127 insertions(+), 830 deletions(-) llvm-svn: 93858
* now that MCSymbol::print doesn't use it's MAI argument, we can Chris Lattner2010-01-171-44/+17
| | | | | | | remove it and change all the code that prints MCSymbols to use << instead, which is much simpler and cleaner. llvm-svn: 93695
* MCize a bunch more stuff, eliminating a lot of uses of the manglerChris Lattner2010-01-161-27/+49
| | | | | | and CurrentFnName. llvm-svn: 93594
* Move DebugInfo checks into EmitComments and remove them fromDavid Greene2009-11-131-1/+1
| | | | | | | | target-specific AsmPrinters. Not all comments need DebugInfo. Re-enable the line numbers comment test. llvm-svn: 88697
* Initial support for addrmode handling. Tests by Brian Lucas!Anton Korobeynikov2009-11-071-15/+16
| | | | llvm-svn: 86382
* Some preliminary variable asmprintingAnton Korobeynikov2009-11-071-4/+86
| | | | llvm-svn: 86381
* Drop old asmprinter stuffAnton Korobeynikov2009-11-071-15/+14
| | | | llvm-svn: 86379
* Factor out the printing of the leading tab into printInlineAsm.Dan Gohman2009-11-061-1/+0
| | | | llvm-svn: 86199
* Print out an informative comment for KILL instructions.Jakob Stoklund Olesen2009-11-041-0/+1
| | | | | | | | The KILL pseudo-instruction may survive to the asm printer pass, just like the IMPLICIT_DEF. Print the KILL as a comment instead of just leaving a blank line in the output. With -asm-verbose=0, a blank line is printed, like IMPLICIT?DEF. llvm-svn: 86041
* Remove includes of Support/Compiler.h that are no longer needed after theNick Lewycky2009-10-251-1/+0
| | | | | | VISIBILITY_HIDDEN removal. llvm-svn: 85043
* Remove VISIBILITY_HIDDEN from class/struct found inside anonymous namespaces.Nick Lewycky2009-10-251-1/+1
| | | | | | | Chris claims we should never have visibility_hidden inside any .cpp file but that's still not true even after this commit. llvm-svn: 85042
* Cosmetic changes, no functionality changesAnton Korobeynikov2009-10-211-6/+6
| | | | llvm-svn: 84773
* Distinguish between pcrel imm operands and 'normal' ones. Fix fixes gross ↵Anton Korobeynikov2009-10-211-0/+3
| | | | | | weirdness of asmprinting. llvm-svn: 84710
* Add basic block operands & jump kindsAnton Korobeynikov2009-10-211-1/+1
| | | | llvm-svn: 84709
* Checkpoint MCInst printer. We (almostly) able to print global / JT / ↵Anton Korobeynikov2009-10-211-1/+1
| | | | | | constpool entries llvm-svn: 84706
* Add experimental MSP430 MCInstLowering stuffAnton Korobeynikov2009-10-211-1/+43
| | | | llvm-svn: 84703
* Wire up MSP430 printMCInst() methodAnton Korobeynikov2009-10-211-0/+4
| | | | llvm-svn: 84702
* Implement proper asmprinting for the globals. This eliminates bogus "call" ↵Anton Korobeynikov2009-10-111-11/+11
| | | | | | modifier and also adds support for offsets wrt globals. llvm-svn: 83784
* Implement asm printing for inline asm memory operandsAnton Korobeynikov2009-10-111-0/+13
| | | | llvm-svn: 83783
* Instead of printing unnecessary basic block labels as labels inDan Gohman2009-10-061-7/+1
| | | | | | | | | | verbose-asm mode, print comments instead. This eliminates a non-comment difference between verbose-asm mode and non-verbose-asm mode. Also, factor out the relevant code out of all the targets and into target-independent code. llvm-svn: 83392
* Update processDebugLoc() so that it can be used to process debug info before ↵Devang Patel2009-10-061-1/+3
| | | | | | and after printing an instruction. llvm-svn: 83363
* Use MachineInstr as an processDebugLoc() argument.Devang Patel2009-09-301-1/+1
| | | | | | This will allow processDebugLoc() to handle scopes for DWARF debug info. llvm-svn: 83183
* remove all but one reference to TargetRegisterDesc::AsmName.Chris Lattner2009-09-131-3/+1
| | | | llvm-svn: 81714
* the tblgen produced 'getRegisterName' method does not accessChris Lattner2009-09-131-1/+1
| | | | | | the object, make it static instead of const. llvm-svn: 81711
* make tblgen produce a function that returns the name for a physreg.Chris Lattner2009-09-131-0/+2
| | | | | | Nothing is using this info yet. llvm-svn: 81707
* replace printBasicBlockLabel with EmitBasicBlockStart,Chris Lattner2009-09-131-1/+1
| | | | | | | now that printBasicBlockLabel is only used for starting a MBB. This allows elimination of a bunch of arguments. llvm-svn: 81684
OpenPOWER on IntegriCloud