summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/PowerPC/LargeAbsoluteAddr.ll
Commit message (Collapse)AuthorAgeFilesLines
* Change the scheduler from adding nodes in allnodes orderChris Lattner2010-02-241-2/+2
| | | | | | | | | | | | | | | | | | to adding them in a determinstic order (bottom up from the root) based on the structure of the graph itself. This updates tests for some random changes, interesting bits: CodeGen/Blackfin/promote-logic.ll no longer crashes. I have no idea why, but that's good right? CodeGen/X86/2009-07-16-LoadFoldingBug.ll also fails, but now compiles to have one fewer constant pool entry, making the expected load that was being folded disappear. Since it is an unreduced mass of gnast, I just removed it. This fixes PR6370 llvm-svn: 97023
* add some no-unwinds, other minor cleanups.Chris Lattner2010-02-211-2/+2
| | | | llvm-svn: 96756
* Adjust register numbers in tests to compensate for theDale Johannesen2010-02-161-3/+3
| | | | | | new lack of R2. llvm-svn: 96407
* Eliminate more uses of llvm-as and llvm-dis.Dan Gohman2009-09-091-3/+3
| | | | llvm-svn: 81293
* Add a new function, ReplaceAllUsesOfValuesWith, which handles bulkDan Gohman2008-07-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | replacement of multiple values. This is slightly more efficient than doing multiple ReplaceAllUsesOfValueWith calls, and theoretically could be optimized even further. However, an important property of this new function is that it handles the case where the source value set and destination value set overlap. This makes it feasible for isel to use SelectNodeTo in many very common cases, which is advantageous because SelectNodeTo avoids a temporary node and it doesn't require CSEMap updates for users of values that don't change position. Revamp MorphNodeTo, which is what does all the work of SelectNodeTo, to handle operand lists more efficiently, and to correctly handle a number of corner cases to which its new wider use exposes it. This commit also includes a change to the encoding of post-isel opcodes in SDNodes; now instead of being sandwiched between the target-independent pre-isel opcodes and the target-dependent pre-isel opcodes, post-isel opcodes are now represented as negative values. This makes it possible to test if an opcode is pre-isel or post-isel without having to know the size of the current target's post-isel instruction set. These changes speed up llc overall by 3% and reduce memory usage by 10% on the InstructionCombining.cpp testcase with -fast and -regalloc=local. llvm-svn: 53728
* Refactor the tablegen DAGISelEmitter code for outputing calls toDan Gohman2008-07-071-2/+2
| | | | | | | | | | | | | | | | | getTargetNode and SelectNodeTo to reduce duplication, and to make some of the getTargetNode code available to SelectNodeTo. Use SelectNodeTo instead of getTargetNode in several new interesting cases, as it mutates nodes in place instead of creating new ones. This triggers some scheduling behavior differences due to nodes being presented to the scheduler in a different order. Some of the arbitrary scheduling decisions it makes are now arbitrarily made differently. This is visible in CodeGen/PowerPC/LargeAbsoluteAddr.ll, where a trivial scheduling difference led to a trivial register allocation difference. llvm-svn: 53203
* For PR1319: Upgrade to new test harness.Reid Spencer2007-04-151-4/+6
| | | | llvm-svn: 36087
* Fix test case.Evan Cheng2007-02-191-3/+3
| | | | llvm-svn: 34427
* new testChris Lattner2007-02-171-0/+6
| | | | llvm-svn: 34372
* Test that large absolute addresses are properly folded into addr modes onChris Lattner2007-02-171-0/+9
both ppc32 and ppc64. llvm-svn: 34370
OpenPOWER on IntegriCloud