Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | Sink the CopyToExportRegsIfNeeded calls out of SelectionDAGISel | Dan Gohman | 2010-04-20 | 1 | -6/+0 | |
| | | | | | | | | into SelectionDAGBuilder. This avoids a separate pass over the instructions, and has the side effect of providing debug location information to the copy. llvm-svn: 101906 | |||||
* | Don't send PHI nodes down to SelectionDAGBuilder of FastISel, since | Dan Gohman | 2010-04-20 | 1 | -1/+1 | |
| | | | | | | they end up doing nothing. llvm-svn: 101904 | |||||
* | Remove this debug output; it isn't that useful, and it's incomplete | Dan Gohman | 2010-04-20 | 1 | -2/+0 | |
| | | | | | | in the case where a basic block is split. llvm-svn: 101850 | |||||
* | Sink DebugLoc handling out of SelectionDAGISel into FastISel and | Dan Gohman | 2010-04-20 | 1 | -36/+2 | |
| | | | | | | SelectionDAGBuilder, where it doesn't have to be as complicated. llvm-svn: 101848 | |||||
* | Remove MachineFunction's DefaultDebugLoc member, and make DwarfDebug.cpp | Dan Gohman | 2010-04-20 | 1 | -5/+0 | |
| | | | | | | responsible for figuring out what that's supposed to be on its own. llvm-svn: 101844 | |||||
* | Reapply the removal of SelectionDAGISel's BB, with a fix for the case | Dan Gohman | 2010-04-20 | 1 | -17/+21 | |
| | | | | | | | where multiple blocks are emitted; functions which do this need to return the new BB so that their callers can stay current. llvm-svn: 101843 | |||||
* | Revert 101825, which is causing trouble. | Dan Gohman | 2010-04-19 | 1 | -15/+14 | |
| | | | | llvm-svn: 101832 | |||||
* | Eliminate SelectionDAGISel's "current block" member. Just pass it as | Dan Gohman | 2010-04-19 | 1 | -14/+15 | |
| | | | | | | an argument to things that need it. llvm-svn: 101825 | |||||
* | Eliminate the CurMBB member from SelectionDAGBuilder. For places that | Dan Gohman | 2010-04-19 | 1 | -12/+8 | |
| | | | | | | | need it, just pass around the parent block of the current instruction explicitly. llvm-svn: 101822 | |||||
* | Give SelectionDAG a TargetMachine too, rather than having it | Dan Gohman | 2010-04-19 | 1 | -1/+1 | |
| | | | | | | fetch one from the MachineFunction. llvm-svn: 101807 | |||||
* | Code that needs a TargetMachine should have access to one directly, rather | Dan Gohman | 2010-04-19 | 1 | -3/+2 | |
| | | | | | | than just getting one through a TargetLowering. llvm-svn: 101802 | |||||
* | Use const qualifiers with TargetLowering. This eliminates several | Dan Gohman | 2010-04-17 | 1 | -2/+4 | |
| | | | | | | | | | | | | | const_casts, and it reinforces the design of the Target classes being immutable. SelectionDAGISel::IsLegalToFold is now a static member function, because PIC16 uses it in an unconventional way. There is more room for API cleanup here. And PIC16's AsmPrinter no longer uses TargetLowering. llvm-svn: 101635 | |||||
* | More work to allow dag combiner to promote 16-bit ops to 32-bit. | Evan Cheng | 2010-04-17 | 1 | -1/+1 | |
| | | | | llvm-svn: 101621 | |||||
* | Avoid creating virtual registers for unused values. | Dan Gohman | 2010-04-16 | 1 | -1/+1 | |
| | | | | llvm-svn: 101480 | |||||
* | Fix a comment. | Dan Gohman | 2010-04-16 | 1 | -1/+1 | |
| | | | | llvm-svn: 101477 | |||||
* | Refine further the scope where the global DebugLoc value is active. | Dan Gohman | 2010-04-16 | 1 | -7/+5 | |
| | | | | llvm-svn: 101443 | |||||
* | Fix a bunch of namespace polution. | Dan Gohman | 2010-04-15 | 1 | -0/+3 | |
| | | | | llvm-svn: 101376 | |||||
* | Add more const qualifiers for LLVM IR pointers in CodeGen. | Dan Gohman | 2010-04-15 | 1 | -1/+1 | |
| | | | | llvm-svn: 101342 | |||||
* | Add const qualifiers to CodeGen's use of LLVM IR constructs. | Dan Gohman | 2010-04-15 | 1 | -13/+14 | |
| | | | | llvm-svn: 101334 | |||||
* | Delete unused arguments. | Dan Gohman | 2010-04-14 | 1 | -6/+4 | |
| | | | | llvm-svn: 101275 | |||||
* | Factor out EH landing pad code into a separate function, and constify | Dan Gohman | 2010-04-14 | 1 | -41/+48 | |
| | | | | | | a bunch of stuff to support it. llvm-svn: 101273 | |||||
* | Reset the debug location even if the instruction was a terminator. | Dan Gohman | 2010-04-14 | 1 | -5/+3 | |
| | | | | llvm-svn: 101272 | |||||
* | Delete an unused function. | Dan Gohman | 2010-04-14 | 1 | -4/+0 | |
| | | | | llvm-svn: 101263 | |||||
* | Clear the FunctionLoweringInfo object before doing other things that | Dan Gohman | 2010-04-14 | 1 | -4/+4 | |
| | | | | | | don't need it. llvm-svn: 101262 | |||||
* | Move this assert out of SelectionDAGISel into FunctionLoweringInfo, and | Dan Gohman | 2010-04-14 | 1 | -5/+0 | |
| | | | | | | drop the redundant #ifndef NDEBUG. llvm-svn: 101261 | |||||
* | Add a comment. | Dan Gohman | 2010-04-14 | 1 | -0/+2 | |
| | | | | llvm-svn: 101260 | |||||
* | Move the code for initialing the entry block livein set out of | Dan Gohman | 2010-04-14 | 1 | -5/+0 | |
| | | | | | | SelectionDAGISel. llvm-svn: 101258 | |||||
* | Reorgnaize this code to be more tidy and readable. | Dan Gohman | 2010-04-14 | 1 | -10/+5 | |
| | | | | llvm-svn: 101256 | |||||
* | Trim #includes. | Dan Gohman | 2010-04-14 | 1 | -9/+0 | |
| | | | | llvm-svn: 101255 | |||||
* | Move the code for emitting livein copies out of SelectionDAGISel. | Dan Gohman | 2010-04-14 | 1 | -105/+1 | |
| | | | | llvm-svn: 101254 | |||||
* | Sink landing-pad marking code out of | Dan Gohman | 2010-04-14 | 1 | -5/+0 | |
| | | | | | | SelectionDAGISel::runOnMachineFunction into FunctionLowering. llvm-svn: 101252 | |||||
* | minor tidying. | Chris Lattner | 2010-04-07 | 1 | -1/+1 | |
| | | | | llvm-svn: 100725 | |||||
* | rename llvm::llvm_report_error -> llvm::report_fatal_error | Chris Lattner | 2010-04-07 | 1 | -2/+2 | |
| | | | | llvm-svn: 100709 | |||||
* | Three changes: | Chris Lattner | 2010-04-07 | 1 | -8/+10 | |
| | | | | | | | | | | | | | | | 1. Introduce some enums and accessors in the InlineAsm class that eliminate a ton of magic numbers when handling inline asm SDNode. 2. Add a new MDNodeSDNode selection dag node type that holds a MDNode (shocking!) 3. Add a new argument to ISD::INLINEASM nodes that hold !srcloc metadata, propagating it to the instruction emitter, which drops it. No functionality change. llvm-svn: 100605 | |||||
* | remove some redundant MMI arguments. | Chris Lattner | 2010-04-05 | 1 | -7/+5 | |
| | | | | llvm-svn: 100417 | |||||
* | unthread MMI from FastISel | Chris Lattner | 2010-04-05 | 1 | -3/+1 | |
| | | | | llvm-svn: 100416 | |||||
* | trim some spurious references to DwarfWriter. SDIsel really doesn't | Chris Lattner | 2010-04-05 | 1 | -3/+0 | |
| | | | | | | need it anymore, so don't addRequire it. llvm-svn: 100400 | |||||
* | selection dag doesn't need DwarfWriter, remove some tendrils. | Chris Lattner | 2010-04-05 | 1 | -2/+1 | |
| | | | | llvm-svn: 100382 | |||||
* | fastisel doesn't need DwarfWriter, remove some tendricles. | Chris Lattner | 2010-04-05 | 1 | -3/+2 | |
| | | | | llvm-svn: 100381 | |||||
* | stop using DebugLoc::getUnknownLoc() | Chris Lattner | 2010-04-02 | 1 | -2/+2 | |
| | | | | llvm-svn: 100215 | |||||
* | Switch the code generator (except the JIT) onto the new DebugLoc | Chris Lattner | 2010-04-02 | 1 | -8/+5 | |
| | | | | | | | | | | | | | | | representation. This eliminates the 'DILocation' MDNodes for file/line/col tuples from -O0 -g codegen. This remove the old DebugLoc class, making it a typedef for DebugLoc, I'll rename NewDebugLoc next. I didn't update the JIT to use the new apis, so it will continue to work, but be as slow as before. Someone should eventually do this or, better yet, rip out the JIT debug info stuff and build the JIT on top of MC. llvm-svn: 100209 | |||||
* | use the optimized debug info apis in sdisel. | Chris Lattner | 2010-03-31 | 1 | -19/+16 | |
| | | | | llvm-svn: 99986 | |||||
* | add a statistic for the # times isel has to backtrack. | Chris Lattner | 2010-03-28 | 1 | -1/+3 | |
| | | | | llvm-svn: 99774 | |||||
* | finally remove the immAllOnesV_bc/immAllZerosV_bc patterns | Chris Lattner | 2010-03-28 | 1 | -1/+1 | |
| | | | | | | | | | | and those derived from them. These are obnoxious because they were written as: PatLeaf<(bitconvert). Not having an argument was foiling adding better type checking for operand count matching up with what was required (in this case, bitconvert always requires an operand!) llvm-svn: 99759 | |||||
* | comply with the wishes of a fixme. | Chris Lattner | 2010-03-28 | 1 | -3/+0 | |
| | | | | llvm-svn: 99742 | |||||
* | now that (parallel) is gone and a variety of bugs in targets | Chris Lattner | 2010-03-28 | 1 | -8/+4 | |
| | | | | | | are cleaned up, we can remove an old fixme. llvm-svn: 99741 | |||||
* | add an optimized form of OPC_EmitMergeInputChains for the 1, 0 and | Chris Lattner | 2010-03-28 | 1 | -0/+29 | |
| | | | | | | | 1, 1 cases which are by-far the most frequent. This shrinks the X86 isel table from 77014 -> 74657 bytes. llvm-svn: 99740 | |||||
* | don't add nodes to the now-dead nodes list multiple times, this | Chris Lattner | 2010-03-28 | 1 | -2/+3 | |
| | | | | | | | can cause a crash on crazy situations in msp430 when morph-node-to is disabled. llvm-svn: 99739 | |||||
* | don't add flag nodes with chain results to the NowDeadNodes | Chris Lattner | 2010-03-28 | 1 | -2/+3 | |
| | | | | | | list multiple times when MorphNodeTo can't be applied. llvm-svn: 99735 | |||||
* | improve -debug-only=isel comments for cases when we don't enter a | Chris Lattner | 2010-03-27 | 1 | -4/+8 | |
| | | | | | | scope due to obviously false predicate. llvm-svn: 99723 |