summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
...
* privatize a bunch of methods and move \n printing into them.Chris Lattner2010-02-031-8/+6
| | | | llvm-svn: 95186
* Reapply 95050 with a tweak to check the register class.Dale Johannesen2010-02-031-0/+16
| | | | llvm-svn: 95183
* rejigger the world so that EmitInstruction prints the \n atChris Lattner2010-02-031-19/+11
| | | | | | | | 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-2/+19
| | | | | | | | 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
* pass an instprinter into the AsmPrinter if it is available.Chris Lattner2010-02-031-3/+7
| | | | llvm-svn: 95168
* make any use of the "O" stream in asmprinter print toChris Lattner2010-02-031-1/+10
| | | | | | | | | stderr if in filetype=obj mode. This is a hack, and will live until dwarf emission and other random stuff that is not yet going through MCStreamer is upgraded. It only impacts filetype=obj mode. llvm-svn: 95166
* Hook up -filetype=obj through the MachO streamer. Here's a demo:Chris Lattner2010-02-021-6/+13
| | | | | | | | | | | | | $ cat t.ll @g = global i32 42 $ llc t.ll -o t.o -filetype=obj $ nm t.o 00000000 D _g There is still a ton of work left. Instructions are not being encoded yet apparently. llvm-svn: 95162
* Revert 95130.Evan Cheng2010-02-021-1/+1
| | | | llvm-svn: 95160
* use OwningPtr and factor code better.Chris Lattner2010-02-021-19/+21
| | | | llvm-svn: 95156
* refactor code so that LLVMTargetMachine creates the asmstreamer and Chris Lattner2010-02-022-12/+24
| | | | | | | mccontext instead of having AsmPrinter do it. This allows other types of MCStreamer's to be passed in. llvm-svn: 95155
* simplify getVerboseAsmChris Lattner2010-02-021-6/+6
| | | | llvm-svn: 95153
* move handling of asm-verbose out of AsmPrinter.cpp into ↵Chris Lattner2010-02-022-17/+16
| | | | | | LLVMTargetMachine.cpp with the rest of the command line options. llvm-svn: 95152
* remove dead #include, stupid symlinks.Chris Lattner2010-02-021-1/+0
| | | | llvm-svn: 95150
* Remove a bunch of stuff around the edges of the ELF writer.Chris Lattner2010-02-022-11/+1
| | | | | | | Now the only use of the ELF writer is the JIT, which won't be easy to fix in the short term. :( :( llvm-svn: 95148
* Pass callsite return type to TargetLowering::LowerCall and use that to check ↵Evan Cheng2010-02-021-1/+1
| | | | | | sibcall eligibility. llvm-svn: 95130
* eliminate FileModel::Model, just use CodeGenFileType. The clientChris Lattner2010-02-021-10/+7
| | | | | | | of the code generator shouldn't care what object format a target uses. llvm-svn: 95124
* eliminate all forms of addPassesToEmitMachineCode exceptChris Lattner2010-02-021-72/+8
| | | | | | | | | the one used by the JIT. Remove all forms of addPassesToEmitFileFinish except the one used by the static code generator. Inline the remaining version of addPassesToEmitFileFinish into its only caller. llvm-svn: 95109
* Test revert 95050; there's a good chance it's causingDale Johannesen2010-02-021-14/+0
| | | | | | buildbot failure. llvm-svn: 95103
* Inline addAssemblyEmitter into its one real caller and deleteChris Lattner2010-02-021-31/+7
| | | | | | | the -print-emitted-asm option. The JIT shouldn't have to pull in the asmprinter. llvm-svn: 95100
* Apparently gdb is not amused by empty lines in pubtypes section.Devang Patel2010-02-021-2/+4
| | | | llvm-svn: 95064
* NULL terminate name in pubtypes sections.Devang Patel2010-02-021-1/+1
| | | | llvm-svn: 95062
* Make local RA smarter about reusing input register of a copyDale Johannesen2010-02-021-0/+14
| | | | | | | as output. Needed for (functional) correctness in inline asm, and should be generally beneficial. 7361612. llvm-svn: 95050
* Update CMake.Daniel Dunbar2010-02-021-1/+0
| | | | llvm-svn: 95041
* Kill the Mach-O writer, and temporarily make filetype=obj an error.Nate Begeman2010-02-013-230/+1
| | | | | | The MCStreamer based assemblers will take over for this functionality. llvm-svn: 95033
* Improve EXTRACT_VECTOR_ELT patch based on comments from DuncanMon P Wang2010-02-012-10/+10
| | | | llvm-svn: 95012
* eliminate a bunch of pointless LLVMContext arguments.Chris Lattner2010-02-011-2/+1
| | | | llvm-svn: 95001
* fix PR 6157. Testcase pending.Dale Johannesen2010-02-011-0/+35
| | | | llvm-svn: 94996
* Fixed a couple of optimization with EXTRACT_VECTOR_ELT that assumes the resultMon P Wang2010-02-012-5/+12
| | | | | | | | type is the same as the element type of the vector. EXTRACT_VECTOR_ELT can be used to extended the width of an integer type. This fixes a bug for Generic/vector-casts.ll on a ppc750. llvm-svn: 94990
* Emit declaration DIE for the class static variables.Devang Patel2010-01-301-1/+10
| | | | llvm-svn: 94870
* Fix a case where debug_value could affect codegen.Dale Johannesen2010-01-301-0/+12
| | | | llvm-svn: 94866
* Add size and location info in DW_TAG_class_type descriptor.Devang Patel2010-01-291-1/+1
| | | | llvm-svn: 94822
* Change the SREM case to match the logic in the IR version ComputeMaskedBits.Duncan Sands2010-01-291-8/+17
| | | | llvm-svn: 94805
* Assign the ordering of SDNodes in a much less intrusive fashion. After theBill Wendling2010-01-283-691/+171
| | | | | | | "visit*" method is called, take the newly created nodes, walk them in a DFS fashion, and if they don't have an ordering set, then give it one. llvm-svn: 94757
* add target hooks for emitting random gunk before and after the function body.Chris Lattner2010-01-281-0/+6
| | | | llvm-svn: 94732
* Update of 94055 to track the IR level call site information via an intrinsic.Jim Grosbach2010-01-284-6/+36
| | | | | | | This allows code gen and the exception table writer to cooperate to make sure landing pads are associated with the correct invoke locations. llvm-svn: 94726
* Give AsmPrinter the most common expected implementation of Chris Lattner2010-01-281-3/+2
| | | | | | | | runOnMachineFunction, and switch PPC to use EmitFunctionBody. The two ppc asmprinters now don't heave to define runOnMachineFunction. llvm-svn: 94722
* emit a 0 byte instead of a noop if a function is empty on darwin.Chris Lattner2010-01-281-4/+2
| | | | | | "0" is nice and target independent. llvm-svn: 94718
* Remove the argument from EmitJumpTableInfo, because it doesn't need it.Chris Lattner2010-01-281-11/+66
| | | | | | | | Move the X86 implementation of function body emission up to AsmPrinter::EmitFunctionBody, which works by calling the virtual EmitInstruction method. llvm-svn: 94716
* Drop the argument to AsmPrinter::EmitConstantPool and make it virtual.Chris Lattner2010-01-281-2/+3
| | | | | | | Overload it in the ARM backend to do nothing, since is does insane constant pool emission. llvm-svn: 94708
* rename printVisibility to EmitVisibility and make it private,Chris Lattner2010-01-281-6/+5
| | | | | | constify EmitLinkage. llvm-svn: 94705
* If the only use of something is a DEBUG_VALUE, don'tDale Johannesen2010-01-271-0/+14
| | | | | | | let that stop it from being deleted, and change the DEBUG_VALUE value to undef. llvm-svn: 94694
* Silence GCC warnings with asserts turned off. No functionality change.Chandler Carruth2010-01-272-3/+3
| | | | llvm-svn: 94673
* add a new AsmPrinter::EmitFunctionEntryLabel virtual function,Chris Lattner2010-01-271-2/+9
| | | | | | | which allows targets to override function entry label emission. Use it to convert linux/ppc to use EmitFunctionHeader(). llvm-svn: 94667
* Eliminate target hook IsEligibleForTailCallOptimization.Evan Cheng2010-01-271-9/+0
| | | | | | | | | Target independent isel should always pass along the "tail call" property. Change target hook LowerCall's parameter "isTailCall" into a refernce. If the target decides it's impossible to honor the tail call request, it should set isTailCall to false to make target independent isel happy. llvm-svn: 94626
* mcize label emission for functions.Chris Lattner2010-01-261-5/+5
| | | | llvm-svn: 94624
* use EmitLinkage for functions as well as globals. One outputChris Lattner2010-01-261-31/+4
| | | | | | | | | change is that we now use ".linkonce discard" for global variables instead of ".linkonce samesize". These should be the same, just less strict. If anyone is interested in mcizing MCSection for COFF targets, this should be easy to fix. llvm-svn: 94623
* pull linkage emission code out to a new EmitLinkage function.Chris Lattner2010-01-261-43/+46
| | | | llvm-svn: 94621
* rearrange some directives, no functionality change.Chris Lattner2010-01-261-3/+3
| | | | llvm-svn: 94620
* remove a noop function.Chris Lattner2010-01-261-3/+0
| | | | llvm-svn: 94616
* now that enough stuff is constified, move function header printingChris Lattner2010-01-261-1/+69
| | | | | | | logic up from X86 into the common code. The other targets will hopefully start using this soon. llvm-svn: 94614
OpenPOWER on IntegriCloud