| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Use higher level methods, don't use TargetInstrDescriptors directly! | Chris Lattner | 2002-10-29 | 1 | -2/+2 |
| | | | | | llvm-svn: 4389 | ||||
| * | Remove #include, misleading comment, and a typedef used only once | Chris Lattner | 2002-10-29 | 1 | -25/+4 |
| | | | | | llvm-svn: 4383 | ||||
| * | Inline typedef, eliminate unused method | Chris Lattner | 2002-10-29 | 2 | -24/+12 |
| | | | | | llvm-svn: 4382 | ||||
| * | Remove long dead #if 0 | Chris Lattner | 2002-10-29 | 1 | -4/+0 |
| | | | | | llvm-svn: 4381 | ||||
| * | Add #includes that were eliminated from headers | Chris Lattner | 2002-10-29 | 4 | -1/+14 |
| | | | | | llvm-svn: 4380 | ||||
| * | De-inline methods | Chris Lattner | 2002-10-29 | 1 | -9/+2 |
| | | | | | llvm-svn: 4379 | ||||
| * | Remove #include | Chris Lattner | 2002-10-29 | 1 | -1/+0 |
| | | | | | llvm-svn: 4378 | ||||
| * | Remove unneeded #include | Chris Lattner | 2002-10-29 | 1 | -10/+9 |
| | | | | | llvm-svn: 4377 | ||||
| * | Remove forward decl | Chris Lattner | 2002-10-29 | 1 | -1/+0 |
| | | | | | llvm-svn: 4376 | ||||
| * | Make assertIGNode be private to the InterferenceGraph.cpp file | Chris Lattner | 2002-10-29 | 2 | -29/+26 |
| | | | | | llvm-svn: 4375 | ||||
| * | Rename some regalloc fields | Chris Lattner | 2002-10-28 | 1 | -4/+4 |
| | | | | | llvm-svn: 4346 | ||||
| * | Eliminate usage of MachineBasicBlock::get | Chris Lattner | 2002-10-28 | 2 | -103/+82 |
| | | | | | llvm-svn: 4344 | ||||
| * | Rename the redundant MachineOperand::getOperandType() to ↵ | Chris Lattner | 2002-10-28 | 2 | -17/+17 |
| | | | | | | | MachineOperand::getType() llvm-svn: 4331 | ||||
| * | Add #includes now that MachineInstr.h doesn't include ↵ | Chris Lattner | 2002-10-28 | 2 | -0/+2 |
| | | | | | | | llvm/Target/MachineInstrInfo.h llvm-svn: 4327 | ||||
| * | *** empty log message *** | Chris Lattner | 2002-10-28 | 2 | -2/+0 |
| | | | | | llvm-svn: 4323 | ||||
| * | *** empty log message *** | Chris Lattner | 2002-10-28 | 2 | -26/+25 |
| | | | | | llvm-svn: 4317 | ||||
| * | Changed `MachineCodeForMethod' to `MachineFunction'. | Misha Brukman | 2002-10-28 | 2 | -5/+5 |
| | | | | | llvm-svn: 4301 | ||||
| * | Ensure definate initialization | Chris Lattner | 2002-10-22 | 1 | -1/+1 |
| | | | | | llvm-svn: 4263 | ||||
| * | - Two minor improvements to the MachineInstr class to reduce footprint and | Chris Lattner | 2002-10-22 | 1 | -9/+8 |
| | | | | | | | | overhead: Merge 3 parallel vectors into 1, change regsUsed hash_set to be a bitvector. Sped up LLC a little less than 10% in a debug build! llvm-svn: 4261 | ||||
| * | Major bug fix: spill code for an instruction in a delay slot was | Vikram S. Adve | 2002-10-11 | 1 | -11/+73 |
| | | | | | | | merrily being inserted before/after the instruction! llvm-svn: 4116 | ||||
| * | Added a couple of helper methods for live range construction. | Vikram S. Adve | 2002-09-28 | 1 | -13/+12 |
| | | | | | llvm-svn: 3970 | ||||
| * | Live ranges for Return value and return address of a Call are now | Vikram S. Adve | 2002-09-28 | 1 | -91/+71 |
| | | | | | | | | created here, simply by handling all implicit operands (which should have been done anyway). llvm-svn: 3969 | ||||
| * | Fixed incorrect assertion: spill code for function ptr should be | Vikram S. Adve | 2002-09-28 | 1 | -3/+4 |
| | | | | | | | handled like normal operands, not like other call arguments. llvm-svn: 3967 | ||||
| * | Add method IGNode::getCombinedDegree to count the sum of the degrees | Vikram S. Adve | 2002-09-20 | 1 | -0/+3 |
| | | | | | | | of two nodes, excluding duplicates. llvm-svn: 3848 | ||||
| * | Allow copy coalescing in more cases: if sum of node degrees is more than | Vikram S. Adve | 2002-09-20 | 2 | -1/+26 |
| | | | | | | | | | than #available regs, compute the sum excluding duplicates and if that is less than #regs, go ahead and coalesce. Add method IGNode::getCombinedDegree to count excluding duplicates. llvm-svn: 3842 | ||||
| * | Fix typos in previous checkin. | Vikram S. Adve | 2002-09-15 | 1 | -2/+2 |
| | | | | | llvm-svn: 3726 | ||||
| * | RegAllocCommon no longer includes CommandLine.h so we have to include it | Chris Lattner | 2002-09-15 | 1 | -0/+1 |
| | | | | | | | here. llvm-svn: 3725 | ||||
| * | Break RA_DEBUG option into several levels to get better control over | Vikram S. Adve | 2002-09-14 | 6 | -104/+117 |
| | | | | | | | debug output. llvm-svn: 3724 | ||||
| * | Remove unnecessary include. | Vikram S. Adve | 2002-09-14 | 1 | -2/+0 |
| | | | | | llvm-svn: 3723 | ||||
| * | Break RA_DEBUG option into several levels to get better output. | Vikram S. Adve | 2002-09-14 | 1 | -0/+23 |
| | | | | | llvm-svn: 3722 | ||||
| * | Moving to lib/CodeGen/RegAlloc. | Vikram S. Adve | 2002-09-14 | 1 | -18/+0 |
| | | | | | llvm-svn: 3718 | ||||
| * | * Removed extraneous #includes | Chris Lattner | 2002-08-09 | 1 | -9/+4 |
| | | | | | | | | * Fixed file headers to be consistent with the rest of LLVM * Other minor fixes llvm-svn: 3277 | ||||
| * | - Cleaned up the interface to AnalysisUsage to take analysis class names | Chris Lattner | 2002-08-08 | 1 | -2/+2 |
| | | | | | | | | instead of ::ID's. - Pass::getAnalysis<> now no longer takes an optional argument llvm-svn: 3264 | ||||
| * | Non-standard hash classes are not in the std:: namespace | Chris Lattner | 2002-07-24 | 1 | -1/+1 |
| | | | | | llvm-svn: 3057 | ||||
| * | *** empty log message *** | Chris Lattner | 2002-07-22 | 1 | -6/+6 |
| | | | | | llvm-svn: 2985 | ||||
| * | changed mem_fun to std::mem_fun | Anand Shukla | 2002-07-09 | 1 | -2/+2 |
| | | | | | llvm-svn: 2847 | ||||
| * | Significant changes to correctly spill CC registers and to correctly | Vikram S. Adve | 2002-07-08 | 1 | -239/+164 |
| | | | | | | | | | | | | | | | | | | handle conditional move instructions: -- cpMem<->Reg functions now support CC registers (int and FP) correctly. -- Scratch registers must be explicitly provided to cpMem<->Reg when needed, since CC regs need one to be copied to/from memory. -- CC regs are saved to a scratch register instead of stack. -- All regs used by a instruction are now recorded in MachineInstr::regsUsed, since regs used to save values *across* an instruction are not obvious either from the operands or from the LiveVar sets. -- An (explicit or implicit) operand may now be both a def and a use. This is needed for conditional move operations. So an operand may need spill code both before and after the instruction. -- class MachineCodeForBasicBlock is now an annotation on BasicBlock. llvm-svn: 2833 | ||||
| * | MachineInstr* in vector are not const (and never really were) | Vikram S. Adve | 2002-07-08 | 1 | -9/+10 |
| | | | | | | | | because operands may be modified directly to set register. Also, class MachineCodeForBasicBlock is now an annotation on BasicBlock. llvm-svn: 2832 | ||||
| * | getUsableUniRegAtMI interface simplified slightly. | Vikram S. Adve | 2002-07-08 | 1 | -6/+7 |
| | | | | | llvm-svn: 2822 | ||||
| * | MachineInstr* in vector are not const (and never really were) | Vikram S. Adve | 2002-07-08 | 1 | -1/+1 |
| | | | | | | | because operands may be modified directly to set register. llvm-svn: 2820 | ||||
| * | Remove tag that just clutters diffs | Chris Lattner | 2002-06-30 | 1 | -1/+0 |
| | | | | | llvm-svn: 2807 | ||||
| * | changes to make it compatible with 64bit gcc | Anand Shukla | 2002-06-25 | 1 | -0/+1 |
| | | | | | llvm-svn: 2791 | ||||
| * | MEGAPATCH checkin. | Chris Lattner | 2002-06-25 | 2 | -145/+127 |
| | | | | | | | For details, See: docs/2002-06-25-MegaPatchInfo.txt llvm-svn: 2779 | ||||
| * | Convert RegClass::IsColorUsedArr from a dynamically allocated array to | Chris Lattner | 2002-05-23 | 3 | -39/+30 |
| | | | | | | | a vector. This makes asserting on array bounds easier. llvm-svn: 2731 | ||||
| * | Move debug options out of header files so that the header does not have | Chris Lattner | 2002-05-22 | 1 | -5/+4 |
| | | | | | | | to #include CommandLine.h. llvm-svn: 2712 | ||||
| * | Avoid #including CommandLine.h | Chris Lattner | 2002-05-22 | 1 | -4/+2 |
| | | | | | llvm-svn: 2710 | ||||
| * | Hide debugging options | Chris Lattner | 2002-05-20 | 1 | -1/+1 |
| | | | | | llvm-svn: 2676 | ||||
| * | Don't lose namespace qualifications on previous patch. | Chris Lattner | 2002-05-20 | 1 | -2/+2 |
| | | | | | llvm-svn: 2664 | ||||
| * | InstrnsBefore and InstrnsAfter are now vectors instead of deques. | Vikram S. Adve | 2002-05-19 | 1 | -3/+3 |
| | | | | | | | | May be slightly less efficient but significantly reduces special cases interfaces in code generation. llvm-svn: 2649 | ||||
| * | Numerous bug fixes: | Vikram S. Adve | 2002-05-19 | 2 | -27/+58 |
| | | | | | | | | | | | | | | | | | | | | -- passing FP arguments to functions with more than 6 arguments -- passing FP arguments to varargs functions -- passing FP arguments to functions with no prototypes -- incorrect coloring for CC registers (both int and FP): interferences were being completely ignored for int CC and were considered but no spills were marked for fp CC! Also some code improvements: -- better interface to generating machine instr for common cases (many places still need to be updated to use this interface) -- annotations on MachineInstr to communicate information from one codegen phase to another (now used to pass information about CALL/JMPLCALL operands from selection to register allocation) -- all sizes and offests in class TargetData are uint64_t instead of uint llvm-svn: 2642 | ||||

