summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/PowerPC/AsmPrinter/PPCAsmPrinter.cpp
Commit message (Collapse)AuthorAgeFilesLines
* move PPCAsmPrinter into the main PPC library, like ARM and X86.Chris Lattner2010-11-141-918/+0
| | | | llvm-svn: 119054
* zap dead code.Chris Lattner2010-09-041-4/+0
| | | | llvm-svn: 113073
* Implement target specific getDebugValueLocation().Devang Patel2010-08-041-0/+14
| | | | llvm-svn: 110256
* Use MachineOperand::is* predicates.Devang Patel2010-04-271-3/+3
| | | | llvm-svn: 102472
* Add PPC AsmPrinter handling for target-specific form ofDale Johannesen2010-04-261-0/+18
| | | | | | DBG_VALUE, and a cautionary comment. llvm-svn: 102371
* Add const qualifiers to TargetLoweringObjectFile usage.Dan Gohman2010-04-171-6/+6
| | | | llvm-svn: 101640
* Add const qualifiers to CodeGen's use of LLVM IR constructs.Dan Gohman2010-04-151-4/+4
| | | | llvm-svn: 101334
* remove the TargetLoweringObjectFileMachO::getMachoSectionChris Lattner2010-04-081-10/+10
| | | | | | api and update clients to use MCContext instead. llvm-svn: 100808
* just have all targets create the DwarfWriter.Chris Lattner2010-04-051-13/+0
| | | | llvm-svn: 100377
* simplify various getAnalysisUsage implementations.Chris Lattner2010-04-051-2/+0
| | | | llvm-svn: 100376
* Momentous day: remove the "O" member from AsmPrinter. Now all Chris Lattner2010-04-041-17/+10
| | | | | | | | | | "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
* finish eliminating uses of O.Chris Lattner2010-04-041-17/+34
| | | | llvm-svn: 100321
* mcize more of ppc stub printing.Chris Lattner2010-04-041-15/+16
| | | | llvm-svn: 100320
* mcize a bunch more stuff, using EmitRawText for things weChris Lattner2010-04-041-25/+28
| | | | | | don't have mcstreamer support for yet. llvm-svn: 100319
* convert the non-MCInstPrinter'ized EmitInstruction Chris Lattner2010-04-041-2/+4
| | | | | | | implementations to use EmitRawText instead of writing directly to "O". llvm-svn: 100318
* fix PrintAsmOperand and PrintAsmMemoryOperand to pass down Chris Lattner2010-04-041-4/+7
| | | | | | raw_ostream to print to. llvm-svn: 100313
* change a ton of code to not implicitly use the "O" raw_ostreamChris Lattner2010-04-041-51/+62
| | | | | | member of AsmPrinter. Instead, pass it in explicitly. llvm-svn: 100306
* asmstreamerize the .size directive for function bodies, force clientsChris Lattner2010-04-031-1/+1
| | | | | | of printOffset to pass in a stream to print to. llvm-svn: 100296
* Comment the changes for r98218 and friends inside the source code.Bill Wendling2010-03-311-0/+5
| | | | llvm-svn: 100031
* Rip out the 'is temporary' nonsense from the MCContext interface toChris Lattner2010-03-301-4/+4
| | | | | | | | | create symbols. It is extremely error prone and a source of a lot of the remaining integrated assembler bugs on x86-64. This fixes rdar://7807601. llvm-svn: 99902
* 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-13/+9
| | | | | | | | | | | 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-11/+7
| | | | | | remove it. llvm-svn: 98390
* The same situation that effected ARM effects PPC with regards to placing theBill Wendling2010-03-121-1/+9
| | | | | | | | | LSDA into the TEXT section. We need to generate non-lazy pointers to it on Mach-O. However, the object the NLP points to may be local to the translation unit. If so, then the NLP needs to have the value of that object specified instead of "0", which the linker interprets as "external". llvm-svn: 98325
* MC-ize PPC's asm printing of stubs.Bill Wendling2010-03-111-9/+20
| | | | llvm-svn: 98300
* Add a bit along with the MCSymbols stored in the MachineModuleInfo maps thatBill Wendling2010-03-101-22/+33
| | | | | | | | indicates that an MCSymbol is external or not. (It's true if it's external.) This will be used to specify the correct information to add to non-lazy pointers. That will be explained further when this bit is used. llvm-svn: 98199
* set the temporary bit on MCSymbols correctly.Chris Lattner2010-03-101-4/+4
| | | | llvm-svn: 98124
* Move TLOF implementations to libCodegen to resolve layering violation.Anton Korobeynikov2010-02-151-1/+1
| | | | llvm-svn: 96288
* print all the newlines at the end of instructions withChris Lattner2010-02-101-4/+4
| | | | | | OutStreamer.AddBlankLine instead of textually. llvm-svn: 95734
* make MachineModuleInfoMachO hold non-const MCSymbol*'s insteadChris Lattner2010-02-031-10/+9
| | | | | | | of const ones. non-const ones aren't very useful, because you can't even, say, emit them. llvm-svn: 95205
* rejigger the world so that EmitInstruction prints the \n atChris Lattner2010-02-031-0/+4
| | | | | | | | 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
* refactor code so that LLVMTargetMachine creates the asmstreamer and Chris Lattner2010-02-021-10/+13
| | | | | | | mccontext instead of having AsmPrinter do it. This allows other types of MCStreamer's to be passed in. llvm-svn: 95155
* Give AsmPrinter the most common expected implementation of Chris Lattner2010-01-281-104/+19
| | | | | | | | runOnMachineFunction, and switch PPC to use EmitFunctionBody. The two ppc asmprinters now don't heave to define runOnMachineFunction. llvm-svn: 94722
* Remove the argument from EmitJumpTableInfo, because it doesn't need it.Chris Lattner2010-01-281-9/+4
| | | | | | | | Move the X86 implementation of function body emission up to AsmPrinter::EmitFunctionBody, which works by calling the virtual EmitInstruction method. llvm-svn: 94716
* add a new AsmPrinter::EmitFunctionEntryLabel virtual function,Chris Lattner2010-01-271-53/+23
| | | | | | | which allows targets to override function entry label emission. Use it to convert linux/ppc to use EmitFunctionHeader(). llvm-svn: 94667
* ppc/linux isn't ready for this and it was an accident that it was included.Chris Lattner2010-01-271-2/+0
| | | | | | This should fix a bunch of linux buildbot failures. llvm-svn: 94643
* Switch MSP430, CellSPU, SystemZ, Darwin/PPC, Alpha, and Sparc to Chris Lattner2010-01-271-32/+3
| | | | | | | | EmitFunctionHeader: 7 files changed, 16 insertions(+), 210 deletions(-) llvm-svn: 94630
* add a new MachineBasicBlock::getSymbol method, replacingChris Lattner2010-01-261-1/+1
| | | | | | the AsmPrinter::GetMBBSymbol. llvm-svn: 94515
* don't bother setting the AsmPrinter::MF ivar, now thatChris Lattner2010-01-261-4/+0
| | | | | | | AsmPrinter::SetupMachineFunction sets it. Note that systemz and msp430 didn't. Yay for reduced inconsistency! :) llvm-svn: 94510
* eliminate redundant argument to EmitJumpTableInfoChris Lattner2010-01-251-2/+2
| | | | llvm-svn: 94464
* move the various directive enums out of the MCStreamer classChris Lattner2010-01-231-1/+1
| | | | | | into a new MCDirectives.h file. llvm-svn: 94294
* remove dead .erase.Chris Lattner2010-01-211-3/+1
| | | | llvm-svn: 94098
* fix a problem with a missing _, testcase pending.Chris Lattner2010-01-211-1/+1
| | | | llvm-svn: 94095
* eliminate FnStubInfo, using MachineModuleInfoMachO instead.Chris Lattner2010-01-201-73/+66
| | | | | | this makes function stub emission determinstic. llvm-svn: 94033
* split function stub printing out to its own function,Chris Lattner2010-01-201-46/+58
| | | | | | no functionality change. llvm-svn: 94030
* eliminate the GVStubs and HiddenGVStubs maps, and use Chris Lattner2010-01-201-23/+39
| | | | | | | | MachineModuleInfoMachO instead. This eliminates two sources of nondeterministic output in the ppc backend, but function stubs are still bad. llvm-svn: 94029
* Now that we have everything nicely factored (e.g. asmprinter is notChris Lattner2010-01-191-185/+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
* add a bool for whether .lcomm takes an alignment instead of basing this on ↵Chris Lattner2010-01-191-1/+3
| | | | | | "isdarwin". llvm-svn: 93852
* hoist handling of external globals and special globals up to common code.Chris Lattner2010-01-191-29/+14
| | | | | | | | | | This makes a similar code dead in all the other targets, I'll clean it up in a bit. This also moves handling of lcomm up before acquisition of a section, since lcomm never needs a section. llvm-svn: 93851
* move production of .reference directives for static ctor/dtor list onChris Lattner2010-01-191-8/+1
| | | | | | darwin into common code. llvm-svn: 93849
OpenPOWER on IntegriCloud