| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Fix the prolog epilog code inserter to match the documentation and support | Chris Lattner | 2004-06-10 | 1 | -9/+33 |
| | | | | | | | | | targets whose stack grows up. Patch contributed by Vladimir Prus llvm-svn: 14111 | ||||
| * | Oops, this was not to go in | Chris Lattner | 2004-06-02 | 1 | -1/+1 |
| | | | | | llvm-svn: 13958 | ||||
| * | Adjust to the new TargetMachine interface | Chris Lattner | 2004-06-02 | 2 | -16/+16 |
| | | | | | llvm-svn: 13957 | ||||
| * | Adjust to new TargetMachine interface | Chris Lattner | 2004-06-02 | 11 | -19/+18 |
| | | | | | llvm-svn: 13956 | ||||
| * | Inline findOptimalStorageSize into it's caller, both of which are sparc specific | Chris Lattner | 2004-06-02 | 1 | -12/+18 |
| | | | | | llvm-svn: 13955 | ||||
| * | Finegrainify namespacification | Chris Lattner | 2004-06-02 | 2 | -6/+3 |
| | | | | | llvm-svn: 13948 | ||||
| * | Fix a trivial but blatant bug | Chris Lattner | 2004-06-02 | 1 | -4/+4 |
| | | | | | llvm-svn: 13947 | ||||
| * | Pull Interval class out of LiveIntervals. | Alkis Evlogimenos | 2004-05-30 | 3 | -80/+67 |
| | | | | | llvm-svn: 13910 | ||||
| * | When spilling an register, introduce a new temporary for each of its | Alkis Evlogimenos | 2004-05-30 | 3 | -57/+84 |
| | | | | | | | | spills. This allows for more flexibility when allocating registers for spill code. llvm-svn: 13907 | ||||
| * | Fix typo in head-of-file comment. | Brian Gaeke | 2004-05-30 | 1 | -1/+1 |
| | | | | | llvm-svn: 13903 | ||||
| * | Add method to assign stack slot to virtual register without creating a | Alkis Evlogimenos | 2004-05-29 | 2 | -0/+9 |
| | | | | | | | new one. llvm-svn: 13895 | ||||
| * | Add grow() member that grows the maps when the number of virtual | Alkis Evlogimenos | 2004-05-29 | 1 | -2/+6 |
| | | | | | | | registers in the function has changed. llvm-svn: 13893 | ||||
| * | Remove defs vector from live intervals. | Alkis Evlogimenos | 2004-05-29 | 2 | -20/+0 |
| | | | | | llvm-svn: 13892 | ||||
| * | updates to ModuloSched | Tanya Lattner | 2004-05-28 | 2 | -10/+91 |
| | | | | | llvm-svn: 13881 | ||||
| * | Adding scheduling class. | Tanya Lattner | 2004-05-26 | 2 | -0/+246 |
| | | | | | llvm-svn: 13783 | ||||
| * | Updating my cvs versions. THis is still in progress and much will be changed. | Tanya Lattner | 2004-05-26 | 4 | -157/+299 |
| | | | | | llvm-svn: 13782 | ||||
| * | Moved MachineBasicBlock deconstructor to cpp file and removed it from ↵ | Tanya Lattner | 2004-05-24 | 2 | -5/+11 |
| | | | | | | | LeakDetector to fix memory leak bug. llvm-svn: 13718 | ||||
| * | Added MachineFunction parent* to MachineBasicBlock. Customized ilist template | Tanya Lattner | 2004-05-24 | 2 | -14/+34 |
| | | | | | | | to set the parent when a MachineBasicBlock is added to a MachineFunction. llvm-svn: 13716 | ||||
| * | Eliminate an explicit use of the LLVM basic block, using getParent instead, | Chris Lattner | 2004-05-24 | 1 | -1/+1 |
| | | | | | | | which simplifies the code llvm-svn: 13707 | ||||
| * | Changed clone to be const. | Tanya Lattner | 2004-05-24 | 1 | -1/+7 |
| | | | | | | | Changed copy constructor to set parent, prev, and next pointers to null. llvm-svn: 13706 | ||||
| * | Fixed up my changes to add support for cloning Machine Instructions. | Tanya Lattner | 2004-05-23 | 1 | -2/+3 |
| | | | | | llvm-svn: 13665 | ||||
| * | Adding support to clone MachineInstr | Tanya Lattner | 2004-05-23 | 1 | -0/+19 |
| | | | | | llvm-svn: 13661 | ||||
| * | 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 | ||||
| * | Start NextMBBNumber out at zero. | Brian Gaeke | 2004-05-12 | 1 | -1/+1 |
| | | | | | llvm-svn: 13515 | ||||
| * | Add non-const MachineBasicBlock::getParent() accessor method. | Brian Gaeke | 2004-05-12 | 1 | -0/+19 |
| | | | | | | | | | MBBs start out as #-1. When a MBB is added to a MachineFunction, it gets the next available unique MBB number. If it is removed from a MachineFunction, it goes back to being #-1. llvm-svn: 13514 | ||||
| * | 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 | ||||
| * | Patch to fix PR337. Make sure to mark all aliased physical registers as used | Chris Lattner | 2004-05-10 | 1 | -3/+8 |
| | | | | | | | | | | | | | | when we see a read of a register. This is important in cases like: AL = ... AH = ... = AX The read of AX must make both the AL and AH defs live until the use. llvm-svn: 13444 | ||||
| * | Updating my versions of ModuloScheduling in cvs. Still not complete. | Tanya Lattner | 2004-05-08 | 4 | -303/+860 |
| | | | | | llvm-svn: 13424 | ||||
| * | Add required header | Alkis Evlogimenos | 2004-05-08 | 1 | -0/+1 |
| | | | | | llvm-svn: 13417 | ||||
| * | Remove unneeded header | Alkis Evlogimenos | 2004-05-08 | 1 | -1/+0 |
| | | | | | llvm-svn: 13416 | ||||
| * | numeric_limits::infinity() apparently does not work on all systems. As a | Chris Lattner | 2004-05-06 | 2 | -7/+5 |
| | | | | | | | workaround, use the C HUGE_VAL macro instead. llvm-svn: 13377 | ||||
| * | Operate on the Machine CFG instead of on the LLVM CFG | Chris Lattner | 2004-05-01 | 2 | -17/+12 |
| | | | | | llvm-svn: 13302 | ||||
| * | Stop LiveVariables from using BasicBlocks as part of the mapping, instead | Chris Lattner | 2004-05-01 | 1 | -29/+20 |
| | | | | | | | | | use MachineBasicBlocks. To do this, we traverse the Machine CFG instead of the LLVM CFG, which is also *MUCH* more efficient by having fewer levels of indirections and mappings. llvm-svn: 13301 | ||||
| * | Include SparcV9RegInfo.h instead of TargetRegInfo.h. This serves as a bit of | Brian Gaeke | 2004-04-23 | 1 | -1/+1 |
| | | | | | | | | documentation that this module needs to be made independent of the register file description of the current target. llvm-svn: 13125 | ||||
| * | Implement emitWordAt() for the debug emitter and the file printer emitter. (I | Brian Gaeke | 2004-04-23 | 1 | -0/+7 |
| | | | | | | | | am not so sure about the file printer emitter, but the debug emitter change should be harmless.) llvm-svn: 13117 | ||||
| * | Fix bug introduced in previous commit. | Alkis Evlogimenos | 2004-04-12 | 1 | -1/+1 |
| | | | | | llvm-svn: 12872 | ||||
| * | Correctly compute spill weights | Alkis Evlogimenos | 2004-04-12 | 1 | -18/+19 |
| | | | | | llvm-svn: 12869 | ||||
| * | Print def lists a bit more compactly | Alkis Evlogimenos | 2004-04-12 | 1 | -1/+1 |
| | | | | | llvm-svn: 12866 | ||||
| * | Add definition list to each live interval. | Alkis Evlogimenos | 2004-04-09 | 2 | -46/+61 |
| | | | | | llvm-svn: 12791 | ||||
| * | MBB::remove should not modify the iterator passed in | Chris Lattner | 2004-03-31 | 1 | -1/+2 |
| | | | | | llvm-svn: 12572 | ||||
| * | MachineBasicBlock::remove should not modify the iterator passed in | Chris Lattner | 2004-03-31 | 1 | -2/+1 |
| | | | | | llvm-svn: 12571 | ||||
| * | Correctly update LiveVariables when an instruction changes | Alkis Evlogimenos | 2004-03-30 | 1 | -3/+3 |
| | | | | | llvm-svn: 12561 | ||||
| * | Change how the beginnings and ends of MachineFunctions are printed. Get | Brian Gaeke | 2004-03-29 | 1 | -3/+3 |
| | | | | | | | rid of the funny cast. llvm-svn: 12537 | ||||
| * | Make the set of fixed (preallocated) intervals be a fixed superset of | Alkis Evlogimenos | 2004-03-17 | 1 | -29/+10 |
| | | | | | | | | unhandled + handled. So unhandled is now including all fixed intervals and fixed intervals never changes when processing a function. llvm-svn: 12462 | ||||
| * | Fix PR294 | Chris Lattner | 2004-03-16 | 1 | -1/+2 |
| | | | | | llvm-svn: 12425 | ||||
| * | Change MRegisterInfo::foldMemoryOperand to return the folded | Alkis Evlogimenos | 2004-03-14 | 2 | -11/+12 |
| | | | | | | | instruction to make the API more flexible. llvm-svn: 12386 | ||||
| * | Spill explicit physical register defs as well. | Alkis Evlogimenos | 2004-03-09 | 1 | -3/+11 |
| | | | | | llvm-svn: 12260 | ||||
| * | As I wrote in the docs, simple is the default spiller :-) | Alkis Evlogimenos | 2004-03-06 | 1 | -2/+1 |
| | | | | | llvm-svn: 12189 | ||||

