Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Keep UsedBlocks info accurate. | Evan Cheng | 2007-03-18 | 1 | -0/+3 |
| | | | | llvm-svn: 35140 | ||||
* | rename DenseMap to IndexedMap. | Chris Lattner | 2007-02-01 | 1 | -1/+0 |
| | | | | llvm-svn: 33749 | ||||
* | Eliminate static ctors from Statistics | Chris Lattner | 2006-12-19 | 1 | -3/+4 |
| | | | | llvm-svn: 32698 | ||||
* | Detemplatize the Statistic class. The only type it is instantiated with | Chris Lattner | 2006-12-06 | 1 | -2/+2 |
| | | | | | | is 'unsigned'. llvm-svn: 32279 | ||||
* | "Once more into the breach, dear friends, once more, or fill the wall up | Bill Wendling | 2006-09-28 | 1 | -26/+42 |
| | | | | | | | | | | with our English dead." No! Really! Serious this time...It was how the vreg uses were being adjusted that was causing hte Olden tests to fail. I corrected this and the Olden and Regression tests all passed. llvm-svn: 30644 | ||||
* | re-re-revert this, back to the right revision. It currently breaks bisort/mst | Chris Lattner | 2006-09-28 | 1 | -44/+24 |
| | | | | | | in olden among others. llvm-svn: 30637 | ||||
* | re-revert this patch, bisort and mst are still broken in Olden. | Chris Lattner | 2006-09-28 | 1 | -3/+3 |
| | | | | llvm-svn: 30634 | ||||
* | Reapplying this patch. With the newest commits, the error in Olden/bisort | Bill Wendling | 2006-09-27 | 1 | -24/+44 |
| | | | | | | has disappeared. llvm-svn: 30633 | ||||
* | Temporarily revert this. This breaks Olden/bisort on PPC | Chris Lattner | 2006-09-27 | 1 | -44/+24 |
| | | | | llvm-svn: 30628 | ||||
* | PR878: Instead of calculating the vreg to PHI use count everytime we get | Bill Wendling | 2006-09-27 | 1 | -24/+44 |
| | | | | | | | | a function, do it up front in linear time (going through all of the instructions once). We create a map out of them. Then it's no problem to use the information in it during elimination... llvm-svn: 30624 | ||||
* | s|llvm/Support/Visibility.h|llvm/Support/Compiler.h| | Chris Lattner | 2006-08-27 | 1 | -1/+1 |
| | | | | llvm-svn: 29911 | ||||
* | Fix an obvious bug, noticed by inspection. No current targets trigger this. | Chris Lattner | 2006-08-12 | 1 | -3/+3 |
| | | | | llvm-svn: 29648 | ||||
* | Reduce number of exported symbols | Andrew Lenharth | 2006-07-20 | 1 | -2/+2 |
| | | | | llvm-svn: 29220 | ||||
* | Use hidden visibility to make symbols in an anonymous namespace get | Chris Lattner | 2006-06-28 | 1 | -1/+2 |
| | | | | | | dropped. This shrinks libllvmgcc.dylib another 67K llvm-svn: 28975 | ||||
* | Add support for targets (like Alpha) that have terminator instructions which | Chris Lattner | 2006-01-04 | 1 | -5/+41 |
| | | | | | | | | | use virtual registers. We now allow the first instruction in a block of terminators to use virtual registers, and update phi elimination to correctly update livevar when eliminating phi's. This fixes a problem on a testcase Andrew sent me. llvm-svn: 25083 | ||||
* | Add an assertion, update DefInst even though no one uses it (dangling pointers | Chris Lattner | 2006-01-04 | 1 | -0/+4 |
| | | | | | | don't help anyone) llvm-svn: 25081 | ||||
* | clean up this code a bit, no functionality change | Chris Lattner | 2005-10-03 | 1 | -101/+116 |
| | | | | llvm-svn: 23609 | ||||
* | Break the body of the loop out into a new method | Chris Lattner | 2005-10-03 | 1 | -144/+155 |
| | | | | llvm-svn: 23606 | ||||
* | adjust to new live variables interface | Chris Lattner | 2005-08-23 | 1 | -11/+6 |
| | | | | llvm-svn: 22992 | ||||
* | * Order #includes alphabetically | Misha Brukman | 2005-05-05 | 1 | -4/+1 |
| | | | | | | * Remove commented-out debug printouts llvm-svn: 21707 | ||||
* | Convert tabs to spaces | Misha Brukman | 2005-04-22 | 1 | -2/+2 |
| | | | | llvm-svn: 21439 | ||||
* | Remove trailing whitespace | Misha Brukman | 2005-04-21 | 1 | -14/+14 |
| | | | | llvm-svn: 21420 | ||||
* | Changes For Bug 352 | Reid Spencer | 2004-09-01 | 1 | -2/+2 |
| | | | | | | | | Move include/Config and include/Support into include/llvm/Config, include/llvm/ADT and include/llvm/Support. From here on out, all LLVM public header files must be under include/llvm/. llvm-svn: 16137 | ||||
* | Update live intervals more accurately for PHI elim. This slightly reduces | Chris Lattner | 2004-07-23 | 1 | -10/+6 |
| | | | | | | the live intervals for some registers. llvm-svn: 15125 | ||||
* | costmetic changes | Chris Lattner | 2004-07-22 | 1 | -14/+14 |
| | | | | llvm-svn: 15118 | ||||
* | There is no need to store the MBB along with the MI any more, we can now | Chris Lattner | 2004-07-19 | 1 | -1/+1 |
| | | | | | | ask instructions for their parent. llvm-svn: 14998 | ||||
* | Simplify the interface to LiveVariables::addVirtualRegister(Killed|Dead) | Chris Lattner | 2004-07-19 | 1 | -4/+4 |
| | | | | llvm-svn: 14997 | ||||
* | Start using MBB numbers directly instead of going through the live variables | Chris Lattner | 2004-07-01 | 1 | -1/+1 |
| | | | | | | map. llvm-svn: 14518 | ||||
* | Adjust to new TargetMachine interface | Chris Lattner | 2004-06-02 | 1 | -1/+1 |
| | | | | llvm-svn: 13956 | ||||
* | Fix a really nasty bug from my changes on Monday to PHIElim. These changes | Chris Lattner | 2004-05-12 | 1 | -11/+19 |
| | | | | | | | | broke obsequi and a lot of other things. It all boiled down to MBB being overloaded in an inner scope and me confusing it with the one in the outer scope. Ugh! llvm-svn: 13517 | ||||
* | Switch this from using an std::map to using a DenseMap. This speeds up | Chris Lattner | 2004-05-10 | 1 | -6/+5 |
| | | | | | | phi-elimination from 0.6 to 0.54s on kc++. llvm-svn: 13454 | ||||
* | Use a new VRegPHIUseCount to compute uses of PHI values by other phi values | Chris Lattner | 2004-05-10 | 1 | -14/+21 |
| | | | | | | | in the basic block being processed. This fixes PhiElimination on kimwitu++ from taking 105s to taking a much more reasonable 0.6s (in a debug build). llvm-svn: 13453 | ||||
* | Now that we use an ilist of machine instructions, iterators are more robust | Chris Lattner | 2004-05-10 | 1 | -5/+8 |
| | | | | | | | | | than before. Because this is the case, we can compute the first non-phi instruction once when de-phi'ing a block. This shaves ~4s off of phielimination of _Z7yyparsev in kimwitu++ from 109s -> 105s. There are still much more important gains to come. llvm-svn: 13452 | ||||
* | Operate on the Machine CFG instead of on the LLVM CFG | Chris Lattner | 2004-05-01 | 1 | -8/+4 |
| | | | | llvm-svn: 13302 | ||||
* | MachineBasicBlock::remove should not modify the iterator passed in | Chris Lattner | 2004-03-31 | 1 | -2/+1 |
| | | | | llvm-svn: 12571 | ||||
* | Finegrainify namespacification | Chris Lattner | 2004-02-23 | 1 | -5/+3 |
| | | | | llvm-svn: 11757 | ||||
* | Refactor rewinding code for finding the first terminator of a basic | Alkis Evlogimenos | 2004-02-23 | 1 | -16/+1 |
| | | | | | | | | | | | | block into MachineBasicBlock::getFirstTerminator(). This also fixes a bug in the implementation of the above in both RegAllocLocal and InstrSched, where instructions where added after the terminator if the basic block's only instruction was a terminator (it shouldn't matter for RegAllocLocal since this case never occurs in practice). llvm-svn: 11748 | ||||
* | Use newly added next() and prior() utility functions. | Alkis Evlogimenos | 2004-02-14 | 1 | -4/+3 |
| | | | | llvm-svn: 11430 | ||||
* | Remove getAllocatedRegNum(). Use getReg() instead. | Alkis Evlogimenos | 2004-02-13 | 1 | -1/+1 |
| | | | | llvm-svn: 11393 | ||||
* | Change MachineBasicBlock's vector of MachineInstr pointers into an | Alkis Evlogimenos | 2004-02-12 | 1 | -16/+19 |
| | | | | | | | | | ilist of MachineInstr objects. This allows constant time removal and insertion of MachineInstr instances from anywhere in each MachineBasicBlock. It also allows for constant time splicing of MachineInstrs into or out of MachineBasicBlocks. llvm-svn: 11340 | ||||
* | Do not use MachineOperand::isVirtualRegister either! | Chris Lattner | 2004-02-10 | 1 | -3/+3 |
| | | | | llvm-svn: 11283 | ||||
* | Change interface of MachineOperand as follows: | Alkis Evlogimenos | 2003-12-14 | 1 | -1/+1 |
| | | | | | | | | | | | | | | | a) remove opIsUse(), opIsDefOnly(), opIsDefAndUse() b) add isUse(), isDef() c) rename opHiBits32() to isHiBits32(), opLoBits32() to isLoBits32(), opHiBits64() to isHiBits64(), opLoBits64() to isLoBits64(). This results to much more readable code, for example compare "op.opIsDef() || op.opIsDefAndUse()" to "op.isDef()" a pattern used very often in the code. llvm-svn: 10461 | ||||
* | Put all LLVM code into the llvm namespace, as per bug 109. | Brian Gaeke | 2003-11-11 | 1 | -0/+5 |
| | | | | llvm-svn: 9903 | ||||
* | Added LLVM project notice to the top of every C++ source file. | John Criswell | 2003-10-20 | 1 | -0/+7 |
| | | | | | | Header files will be on the way. llvm-svn: 9298 | ||||
* | Const correctness fixes | Chris Lattner | 2003-07-26 | 1 | -2/+2 |
| | | | | llvm-svn: 7349 | ||||
* | Fix bug: Jello/2003-06-04-bzip2-bug.ll | Chris Lattner | 2003-06-05 | 1 | -23/+21 |
| | | | | llvm-svn: 6624 | ||||
* | (1) Added special register class containing (for now) %fsr. | Vikram S. Adve | 2003-05-27 | 1 | -1/+1 |
| | | | | | | | | | | | | | Fixed spilling of %fcc[0-3] which are part of %fsr. (2) Moved some machine-independent reg-class code to class TargetRegInfo from SparcReg{Class,}Info. (3) Renamed MachienOperand::opIsDef to MachineOperand::opIsDefOnly() and related functions and flags. Fixed several bugs where only "isDef" was being checked, not "isDefAndUse". llvm-svn: 6341 | ||||
* | Use a kill, not a dead definition, update comment | Chris Lattner | 2003-05-12 | 1 | -5/+4 |
| | | | | llvm-svn: 6131 | ||||
* | * Keep LiveVariable information more up-to-date and consistent | Chris Lattner | 2003-05-12 | 1 | -7/+87 |
| | | | | | | | | | * *** Finally mark values that are inputs to PHIs as killed when appropriate. This should make the generated code quite a bit better. For example, the local-ra will not have to spill PHI inputs at the end of predecessor BB's anymore. llvm-svn: 6117 | ||||
* | Fix bug where we could iterate off the end of a basic block | Chris Lattner | 2003-05-12 | 1 | -2/+3 |
| | | | | llvm-svn: 6116 |