summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Simplify this code. Thanks Chris!Dan Gohman2008-06-201-3/+2
| | | | llvm-svn: 52514
* ISD::UNDEF should be expanded recursively / iteratively.Evan Cheng2008-06-192-1/+6
| | | | llvm-svn: 52508
* Add a hidden -disable-pre flag for testing purposes. This should be removedOwen Anderson2008-06-191-2/+8
| | | | | | once benchmarking is completed. llvm-svn: 52506
* PRE requires that critical edges be split.Owen Anderson2008-06-191-0/+24
| | | | llvm-svn: 52505
* Remove dead code causing a warning.Bill Wendling2008-06-191-2/+0
| | | | llvm-svn: 52502
* Use the common API for adding instructions to basic blocks instead ofDan Gohman2008-06-191-11/+6
| | | | | | using BasicBlock::getInstList. llvm-svn: 52500
* Be sure to remove values from the value numbering table after we delete them.Owen Anderson2008-06-191-0/+1
| | | | | | This fixes a failure on povray. llvm-svn: 52499
* Use Instruction::moveBefore instead of manipulating the instruction listDan Gohman2008-06-191-4/+2
| | | | | | directly. llvm-svn: 52498
* Avoid using BasicBlock::getInstList directly in a few places.Dan Gohman2008-06-191-9/+10
| | | | llvm-svn: 52497
* Revert support for insertvalue and extractvalue instructions for the moment.Owen Anderson2008-06-191-63/+1
| | | | | | | GVN expects that all inputs which to an instruction fall somewhere in the value hierarchy, which isn't true for these. llvm-svn: 52496
* Use the transferSuccessors helper function.Dan Gohman2008-06-191-5/+1
| | | | llvm-svn: 52495
* Delete dead code.Dan Gohman2008-06-191-4/+0
| | | | llvm-svn: 52494
* Add an idx_iterator to the insertvalue and extractvalue instructions.Owen Anderson2008-06-191-4/+6
| | | | llvm-svn: 52493
* The inline keyword goes before the return type. This fixes a compiler warning.Dan Gohman2008-06-191-1/+1
| | | | llvm-svn: 52492
* Modify some ipconstprop tests to also test with invokes.Matthijs Kooijman2008-06-192-2/+13
| | | | llvm-svn: 52491
* Use a CallSite to find the nth argument of a call/invoke instruction instead ofMatthijs Kooijman2008-06-191-11/+11
| | | | | | | using getOperand() directly. This makes things work with invoke instructions as well. llvm-svn: 52489
* Fix some warnings reported by gcc-4.3. HopefullyDuncan Sands2008-06-192-8/+10
| | | | | | this still compiles on windows - I can't test! llvm-svn: 52488
* Missed a check.Evan Cheng2008-06-191-1/+1
| | | | llvm-svn: 52487
* Fix a bug with <8 x i16> shuffle lowering on X86 where parts of the Eli Friedman2008-06-192-2/+10
| | | | | | | | | | shuffle could be skipped. The check is invalid because the loop index i doesn't correspond to the element actually inserted. The correct check is already done a few lines earlier, for whether the element is already in the right spot, so this shouldn't have any effect on the codegen for code that was already correct. llvm-svn: 52486
* Revert my last patch, which was causing regression test failures.Owen Anderson2008-06-191-78/+69
| | | | llvm-svn: 52485
* New test case.Evan Cheng2008-06-191-0/+17
| | | | llvm-svn: 52483
* This also got better (55 - 51 instructions). But doing one more ↵Evan Cheng2008-06-191-1/+1
| | | | | | re-materialization. llvm-svn: 52482
* This got better.Evan Cheng2008-06-191-1/+1
| | | | llvm-svn: 52481
* Coalesce copy from one register class to a sub register class. e.g. ↵Evan Cheng2008-06-192-25/+98
| | | | | | X86::MOV16to16_. llvm-svn: 52480
* Cosmetic changes.Evan Cheng2008-06-191-3/+5
| | | | llvm-svn: 52479
* Unneeded include's.Evan Cheng2008-06-192-2/+0
| | | | llvm-svn: 52478
* Minor spiller tweak to unfavor reload into load/store instructions.Evan Cheng2008-06-193-6/+21
| | | | llvm-svn: 52477
* Insert empty slots into the instruction numbering in live intervals, so that ↵Owen Anderson2008-06-191-69/+78
| | | | | | | | we can more easily add new instructions. llvm-svn: 52475
* Remove this test until the corresponding patch is reapplied because it's ↵Owen Anderson2008-06-181-39/+0
| | | | | | causing make check to crash for some people. llvm-svn: 52473
* Add support for extractvalue and insertvalue instructions in GVN.Owen Anderson2008-06-181-1/+63
| | | | llvm-svn: 52472
* Add local PRE to GVN. This only operates in cases where it would not ↵Owen Anderson2008-06-182-30/+186
| | | | | | | | increase code size, namely when the instantiated expression would only need to be created in one predecessor. llvm-svn: 52471
* Refactor the way to get a string containing the features of the target.Bill Wendling2008-06-183-32/+26
| | | | llvm-svn: 52470
* Fix the source line debug information for the Windows platform.Argyrios Kyrtzidis2008-06-181-5/+88
| | | | | | | According to DWARF-2 specification, the line information is provided through an offset in the .debug_line section. Replace the label reference that is used with a section offset. llvm-svn: 52468
* Fix a missing comma spotted by Bram Geron.Dan Gohman2008-06-181-1/+1
| | | | llvm-svn: 52467
* Fix the regressions on sext-misc.ll my patch yesterday caused.Chris Lattner2008-06-181-0/+1
| | | | llvm-svn: 52466
* Revert r52459, which was causing an infinite loop or massive slowdown on ↵Owen Anderson2008-06-181-469/+369
| | | | | | | | MultiSource/Applications/SPASS, and possibly others as well. Please reapply once this is fixed. llvm-svn: 52465
* Move SCEVExpander::visitAddExpr out-of-line.Dan Gohman2008-06-182-9/+11
| | | | llvm-svn: 52464
* Move LSR's private isZero function to a public SCEV memberDan Gohman2008-06-184-27/+24
| | | | | | function, and make use of it in several places. llvm-svn: 52463
* fix validator warningGabor Greif2008-06-181-1/+1
| | | | llvm-svn: 52461
* prettify, no semantic changesGabor Greif2008-06-181-92/+138
| | | | llvm-svn: 52460
* Rewrite the DeadArgumentElimination pass, to use a more explicit tracking ofMatthijs Kooijman2008-06-182-369/+508
| | | | | | | | | | | | | dependencies between return values and/or arguments. Also make the handling of arguments and return values the same. The pass now looks properly inside returned structs, but only at the first level (ie, not inside nested structs). Also add a testcase for testing various variations of (multiple) dead rerturn values. llvm-svn: 52459
* Reapply r52397 (make IPConstProp promote returned arguments), but fixed thisMatthijs Kooijman2008-06-182-3/+64
| | | | | | | | time. Sorry for the trouble! This time, also add a testcase, which I should have done in the first place... llvm-svn: 52455
* XOR32rr, etc. are not AsCheapAsMove, but MOV32ri, etc. are.Evan Cheng2008-06-181-4/+3
| | | | llvm-svn: 52454
* Reapply r52396, it was unrelated to the breakage (that was caused by r52397, myMatthijs Kooijman2008-06-182-62/+106
| | | | | | commit after this). llvm-svn: 52453
* Complete support for two-address pass rematerialization. Now *almost* always ↵Evan Cheng2008-06-181-49/+128
| | | | | | a win. llvm-svn: 52452
* Add MachineRegisterInfo::use_empty.Evan Cheng2008-06-181-0/+4
| | | | llvm-svn: 52451
* Cosmetic.Evan Cheng2008-06-181-1/+1
| | | | llvm-svn: 52450
* If compiling for PPC on an i386 box, the LTO wouldn't get the altivec (andBill Wendling2008-06-182-24/+51
| | | | | | | other) feature information. The workaround is inelegant and could be cleaned up if this information were available some other way (say, in the IR). llvm-svn: 52447
* implement some simple bswap optimizations, rdar://5992453Chris Lattner2008-06-182-126/+195
| | | | llvm-svn: 52442
* temporarily revert this testcase since its patch was reverted.Chris Lattner2008-06-181-30/+9
| | | | llvm-svn: 52441
OpenPOWER on IntegriCloud