aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add a copy constructor and an assignment operator to DenseMap.Owen Anderson2007-08-161-1/+32
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41114 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement FPOWI ExpandOp.Lauro Ramos Venancio2007-08-152-0/+21
| | | | | | | | Fix PR1287. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41112 91177308-0d34-0410-b5e6-96231b3b80d8
* Properly use const qualifiersAnton Korobeynikov2007-08-152-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41111 91177308-0d34-0410-b5e6-96231b3b80d8
* Test case for PR1609.Evan Cheng2007-08-151-0/+106
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41110 91177308-0d34-0410-b5e6-96231b3b80d8
* If the source of a move is in spill slot, the reload may be folded to ↵Evan Cheng2007-08-151-13/+19
| | | | | | essentially a load from stack slot. It's ok to mark the stack slot value as available for reuse. But it should not be clobbered since the destination of the move is live. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41109 91177308-0d34-0410-b5e6-96231b3b80d8
* Update .cvs fileDavid Greene2007-08-151-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41106 91177308-0d34-0410-b5e6-96231b3b80d8
* Move ReturnAddrIndex variable to X86MachineFunctionInfo structure. This fixedAnton Korobeynikov2007-08-153-14/+24
| | | | | | | hard to catch bugs with retaddr lowering git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41104 91177308-0d34-0410-b5e6-96231b3b80d8
* add a note.Chris Lattner2007-08-151-0/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41103 91177308-0d34-0410-b5e6-96231b3b80d8
* svn propdel the svn:mime-type property of application/x-troff.Dan Gohman2007-08-150-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41102 91177308-0d34-0410-b5e6-96231b3b80d8
* This test used "wc | grep ..."; convert it to use the count script.Dan Gohman2007-08-151-4/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41101 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert tests using "grep -c ... | grep ..." to use the count script.Dan Gohman2007-08-1510-15/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41100 91177308-0d34-0410-b5e6-96231b3b80d8
* Delete extraneous uses of wc -l.Dan Gohman2007-08-152-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41099 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert another test to use the count script. This one didn't fit theDan Gohman2007-08-151-1/+1
| | | | | | | | regex used to convert all the others because the first '|' was on a separate line. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41098 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert tests using "| wc -l | grep ..." to use the count script.Dan Gohman2007-08-15228-467/+467
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41097 91177308-0d34-0410-b5e6-96231b3b80d8
* Dominance frontier is now required.Devang Patel2007-08-151-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41096 91177308-0d34-0410-b5e6-96231b3b80d8
* Cleanup removeBlocks. Devang Patel2007-08-151-56/+70
| | | | | | | | | Use dominance frontier to fixup incoming edges of successor blocks not domianted by DeadBB. Use df_iterator to walk and delete basic blocks dominated by DeadBB. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41095 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unneeded header file.Reid Spencer2007-08-151-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41094 91177308-0d34-0410-b5e6-96231b3b80d8
* Avoid triangle loops.Devang Patel2007-08-151-4/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41093 91177308-0d34-0410-b5e6-96231b3b80d8
* Break infinite loop.Devang Patel2007-08-141-15/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41091 91177308-0d34-0410-b5e6-96231b3b80d8
* Avoid nested loops at the moment.Devang Patel2007-08-141-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41090 91177308-0d34-0410-b5e6-96231b3b80d8
* New test.Evan Cheng2007-08-141-0/+116
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41087 91177308-0d34-0410-b5e6-96231b3b80d8
* - If a def is dead, do not spill it.Evan Cheng2007-08-141-61/+115
| | | | | | | | - If the defs of a spilled rematerializable MI are dead after the spill store is deleted, delete the def MI as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41086 91177308-0d34-0410-b5e6-96231b3b80d8
* Test case for PR1596.Evan Cheng2007-08-141-0/+28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41085 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix for PR1596: AdjustCopiesBackFrom() should conservatively check if any of ↵Evan Cheng2007-08-141-0/+13
| | | | | | its sub-registers may overlap with the interval of the copy that's being coalesced. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41084 91177308-0d34-0410-b5e6-96231b3b80d8
* If a MI's def is remat as well as spilled, and the store is later deemed ↵Evan Cheng2007-08-141-2/+29
| | | | | | dead, mark the def operand as isDead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41083 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix dominance frontier update while removing blocks.Devang Patel2007-08-141-7/+30
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41082 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate PHI nodes with constant values during normal GVN processing, even whenOwen Anderson2007-08-141-1/+21
| | | | | | | they're not related to eliminating a load. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41081 91177308-0d34-0410-b5e6-96231b3b80d8
* Be more aggressive in pruning unnecessary PHI nodes when doing PHI construction.Owen Anderson2007-08-141-28/+47
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41080 91177308-0d34-0410-b5e6-96231b3b80d8
* Make GVN iterative.Owen Anderson2007-08-141-1/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41078 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a case where GVN was failing to return true when it had, in fact, modifiedOwen Anderson2007-08-141-2/+11
| | | | | | | the function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41077 91177308-0d34-0410-b5e6-96231b3b80d8
* Assert sooner. Fix wordings.Devang Patel2007-08-141-3/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41075 91177308-0d34-0410-b5e6-96231b3b80d8
* No need to use iterator to erase basic block.Devang Patel2007-08-141-3/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41074 91177308-0d34-0410-b5e6-96231b3b80d8
* tcl seems to hate |& for some reason.Chris Lattner2007-08-141-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41073 91177308-0d34-0410-b5e6-96231b3b80d8
* switch this to use fastcc to avoid fpstack traffic on x86-32. Switch to Chris Lattner2007-08-141-5/+5
| | | | | | | using the count script instead of wc -l git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41072 91177308-0d34-0410-b5e6-96231b3b80d8
* Update test case. A spill should now be deleted.Evan Cheng2007-08-141-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41070 91177308-0d34-0410-b5e6-96231b3b80d8
* If a spilled value is being reused and the use is a kill, that means there areEvan Cheng2007-08-141-18/+32
| | | | | | | | no more uses within the MBB and the spilled value isn't live out of the MBB. Then it's safe to delete the spill store. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41069 91177308-0d34-0410-b5e6-96231b3b80d8
* Spiller reuse test case.Evan Cheng2007-08-141-0/+102
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41068 91177308-0d34-0410-b5e6-96231b3b80d8
* If a rematerializable def is not deleted, i.e. it is also spilled, check if theEvan Cheng2007-08-141-11/+20
| | | | | | | spilled value is available for reuse. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41067 91177308-0d34-0410-b5e6-96231b3b80d8
* Kill info update bugs.Evan Cheng2007-08-142-2/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41064 91177308-0d34-0410-b5e6-96231b3b80d8
* Handle last value assignments.Devang Patel2007-08-141-14/+42
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41063 91177308-0d34-0410-b5e6-96231b3b80d8
* StartValue is already calculated.Devang Patel2007-08-141-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41062 91177308-0d34-0410-b5e6-96231b3b80d8
* Now capable of rematerializing coalesced live intervals.Evan Cheng2007-08-132-0/+236
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41061 91177308-0d34-0410-b5e6-96231b3b80d8
* Re-implement trivial rematerialization. This allows def MIs whose live ↵Evan Cheng2007-08-137-283/+410
| | | | | | intervals that are coalesced to be rematerialized. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41060 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a typo pointd out by Maarten ter Huurne.Evan Cheng2007-08-131-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41059 91177308-0d34-0410-b5e6-96231b3b80d8
* Preserve simple analysis.Devang Patel2007-08-131-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41054 91177308-0d34-0410-b5e6-96231b3b80d8
* Preserve dominator info.Devang Patel2007-08-131-32/+46
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41053 91177308-0d34-0410-b5e6-96231b3b80d8
* Add methods to erase basic block entry.Devang Patel2007-08-132-0/+36
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41052 91177308-0d34-0410-b5e6-96231b3b80d8
* If NewBB dominates DestBB then DestBB is not part of NewBB's dominance frontier.Devang Patel2007-08-131-1/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41051 91177308-0d34-0410-b5e6-96231b3b80d8
* move assertion into mutex guard, a partial fix for PR1606.Chris Lattner2007-08-131-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41050 91177308-0d34-0410-b5e6-96231b3b80d8
* When x86 addresses matching exceeds its recursion limit, check toDan Gohman2007-08-132-6/+59
| | | | | | | | see if the base register is already occupied before assuming it can be used. This fixes bogus code generation in the accompanying testcase. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41049 91177308-0d34-0410-b5e6-96231b3b80d8