Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Use std::vector instead of TargetRegisterInfo::FirstVirtualRegister. This time | Bill Wendling | 2010-07-15 | 1 | -5/+5 |
| | | | | | | make sure to allocate enough space in the std::vector. llvm-svn: 108449 | ||||
* | Reserve a goodly amount of room for the vectors. | Bill Wendling | 2010-07-15 | 1 | -2/+4 |
| | | | | llvm-svn: 108448 | ||||
* | Use std::vector instead of TargetRegisterInfo::FirstVirtualRegister. | Bill Wendling | 2010-07-15 | 1 | -10/+10 |
| | | | | llvm-svn: 108440 | ||||
* | revert bill's patches in an attempt to fix the buildbot. | Chris Lattner | 2010-07-15 | 1 | -12/+10 |
| | | | | llvm-svn: 108419 | ||||
* | Fix headers. | Bill Wendling | 2010-07-15 | 1 | -0/+1 |
| | | | | llvm-svn: 108413 | ||||
* | Use std::vector instead of a hard-coded array. The length of that array could | Bill Wendling | 2010-07-15 | 1 | -11/+12 |
| | | | | | | get *very* large, but we only need it to be the size of the number of pregs. llvm-svn: 108412 | ||||
* | Convert the last use of getPhysicalRegisterRegClass and remove it. | Rafael Espindola | 2010-07-12 | 1 | -1/+5 |
| | | | | | | | | | | | | AggressiveAntiDepBreaker should not be using getPhysicalRegisterRegClass. An instruction might be using a register that can only be replaced with one from a subclass of getPhysicalRegisterRegClass. With this patch we use getMinimalPhysRegClass. This is correct, but conservative. We should check the uses of the register and select the largest register class that can be used in all of them. llvm-svn: 108122 | ||||
* | Make post-ra scheduling, anti-dep breaking, and register scavenger ↵ | Evan Cheng | 2010-06-16 | 1 | -21/+43 |
| | | | | | | (conservatively) aware of predicated instructions. This enables ARM to move if-conversion before post-ra scheduler. llvm-svn: 106091 | ||||
* | Not all entries in the range will have an SUnit. Check for that when looking | Jim Grosbach | 2010-06-02 | 1 | -0/+1 |
| | | | | | | for debug information. llvm-svn: 105324 | ||||
* | Update debug information when breaking anti-dependencies. rdar://7759363 | Jim Grosbach | 2010-06-01 | 1 | -0/+12 |
| | | | | llvm-svn: 105300 | ||||
* | Make BreakAntiDependencies' SUnits argument const, and make the Begin | Dan Gohman | 2010-04-19 | 1 | -19/+20 |
| | | | | | | and End arguments by-value rather than by-reference. llvm-svn: 101830 | ||||
* | Tidy whitespace. | Bob Wilson | 2010-04-09 | 1 | -9/+8 |
| | | | | llvm-svn: 100904 | ||||
* | move target-independent opcodes out of TargetInstrInfo | Chris Lattner | 2010-02-09 | 1 | -4/+3 |
| | | | | | | | | | into TargetOpcodes.h. #include the new TargetOpcodes.h into MachineInstr. Add new inline accessors (like isPHI()) to MachineInstr, and start using them throughout the codebase. llvm-svn: 95687 | ||||
* | 80 column and whitespace cleanup | Jim Grosbach | 2010-01-06 | 1 | -75/+84 |
| | | | | llvm-svn: 92837 | ||||
* | Change errs() to dbgs(). | David Greene | 2009-12-24 | 1 | -59/+59 |
| | | | | llvm-svn: 92093 | ||||
* | <rdar://problem/7453528>. Track only physical registers that are valid for ↵ | David Goodwin | 2009-12-09 | 1 | -12/+15 |
| | | | | | | the target. llvm-svn: 90970 | ||||
* | <rdar://problem/6721894>. Allow multiple registers to be renamed together ↵ | David Goodwin | 2009-11-24 | 1 | -6/+0 |
| | | | | | | (super and sub) if necessary to break an anti-dependence. llvm-svn: 89722 | ||||
* | Restructure code to allow renaming of multiple-register groups for anti-dep ↵ | David Goodwin | 2009-11-20 | 1 | -44/+73 |
| | | | | | | breaking. llvm-svn: 89511 | ||||
* | Remove some old experimental code that is no longer needed. Remove ↵ | David Goodwin | 2009-11-20 | 1 | -62/+36 |
| | | | | | | additional, speculative scheduling pass as its cost did not translate into significant performance improvement. Minor tweaks. llvm-svn: 89471 | ||||
* | Fix a couple of problems with maintaining liveness information for antidep ↵ | David Goodwin | 2009-11-19 | 1 | -17/+47 |
| | | | | | | breaking. llvm-svn: 89404 | ||||
* | Allow target to specify regclass for which antideps will only be broken ↵ | David Goodwin | 2009-11-13 | 1 | -25/+95 |
| | | | | | | along the critical path. llvm-svn: 88682 | ||||
* | Rename registers to break output dependencies in addition to anti-dependencies. | David Goodwin | 2009-11-12 | 1 | -2/+3 |
| | | | | llvm-svn: 87015 | ||||
* | Allow targets to specify register classes whose member registers should not ↵ | David Goodwin | 2009-11-10 | 1 | -1/+13 |
| | | | | | | be renamed to break anti-dependencies. llvm-svn: 86628 | ||||
* | Fix bug in aggressive antidep breaking; liveness was not updated correctly ↵ | David Goodwin | 2009-11-05 | 1 | -10/+7 |
| | | | | | | for regions that do not have antidep candidates. llvm-svn: 86172 | ||||
* | Replace std::map.at() with std::map[]. | David Goodwin | 2009-11-05 | 1 | -1/+1 |
| | | | | llvm-svn: 86102 | ||||
* | Break anti-dependencies using free registers in a round-robin manner to ↵ | David Goodwin | 2009-11-05 | 1 | -16/+41 |
| | | | | | | avoid introducing new anti-dependencies. llvm-svn: 86098 | ||||
* | Do a scheduling pass ignoring anti-dependencies to identify candidate ↵ | David Goodwin | 2009-11-03 | 1 | -10/+26 |
| | | | | | | registers that should be renamed. llvm-svn: 85939 | ||||
* | Between scheduling regions, correctly maintain anti-dep breaking state so ↵ | David Goodwin | 2009-10-29 | 1 | -5/+7 |
| | | | | | | that we don't incorrectly rename registers that span these regions. llvm-svn: 85537 | ||||
* | Fix a couple of bugs in aggressive anti-dep breaking. | David Goodwin | 2009-10-29 | 1 | -36/+61 |
| | | | | llvm-svn: 85522 | ||||
* | Allow the aggressive anti-dep breaker to process the same region multiple ↵ | David Goodwin | 2009-10-26 | 1 | -109/+173 |
| | | | | | | times. This is necessary because new anti-dependencies are exposed when "current" ones are broken. llvm-svn: 85166 | ||||
* | Add aggressive anti-dependence breaker. Currently it is not the default for ↵ | David Goodwin | 2009-10-26 | 1 | -0/+687 |
any target. Enable with -break-anti-dependencies=all. llvm-svn: 85145 |