Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | MachineFunction now includes MachineBasicBlock so there is no need to | Chris Lattner | 2002-10-28 | 1 | -1/+0 |
| | | | | | | reinclude it llvm-svn: 4322 | ||||
* | Rename MachineCodeForBasicBlock to MachineBasicBlock | Chris Lattner | 2002-10-28 | 5 | -22/+22 |
| | | | | llvm-svn: 4318 | ||||
* | *** empty log message *** | Chris Lattner | 2002-10-28 | 2 | -26/+25 |
| | | | | llvm-svn: 4317 | ||||
* | Inline some methods from .cpp files into .h files, minor cleanups | Chris Lattner | 2002-10-28 | 2 | -39/+15 |
| | | | | llvm-svn: 4313 | ||||
* | Minor cleanups | Chris Lattner | 2002-10-28 | 1 | -11/+11 |
| | | | | llvm-svn: 4312 | ||||
* | Move machine code generation/destruction passes out of Sparc.cpp because | Chris Lattner | 2002-10-28 | 1 | -0/+56 |
| | | | | | | they are generic llvm-svn: 4310 | ||||
* | Prune #includes | Chris Lattner | 2002-10-28 | 1 | -2/+0 |
| | | | | llvm-svn: 4307 | ||||
* | Updates to match misha's changes | Chris Lattner | 2002-10-28 | 1 | -3/+3 |
| | | | | llvm-svn: 4302 | ||||
* | Changed `MachineCodeForMethod' to `MachineFunction'. | Misha Brukman | 2002-10-28 | 7 | -28/+28 |
| | | | | llvm-svn: 4301 | ||||
* | Initial checkin of codegen infrastructure for LLVM-JIT | Chris Lattner | 2002-10-25 | 3 | -1/+109 |
| | | | | llvm-svn: 4282 | ||||
* | Tell PassManager that this pass does not invalidate the CFG so that dominator | Chris Lattner | 2002-10-23 | 2 | -0/+5 |
| | | | | | | information and Loop info will not have to be recomputed after this runs. llvm-svn: 4269 | ||||
* | 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 | 2 | -13/+12 |
| | | | | | | | 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 | ||||
* | Significant improvement: GEP used by a load or store no longer generates | Vikram S. Adve | 2002-10-14 | 1 | -36/+74 |
| | | | | | | | | | a separate ADD; instead just use the indexed load/store instruction! Also, a bug fix: folding a GEP with a leading non-zero index with its predecessor was incorrect: now it only happens if the predecessor is pointing to an indexable type (aka SequentialType). llvm-svn: 4168 | ||||
* | Use vectors instead of hash_maps for issueGaps and conflictLists. | Vikram S. Adve | 2002-10-13 | 1 | -15/+9 |
| | | | | | | | These hash lookups were a major sink of time because they happen so often! Also, add option to disable scheduling. llvm-svn: 4138 | ||||
* | Major bug fix: was not adding CD edges for RETURNs! | Vikram S. Adve | 2002-10-13 | 1 | -8/+10 |
| | | | | llvm-svn: 4137 | ||||
* | 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 | ||||
* | Don't pad variables in stack slots for performance! | Vikram S. Adve | 2002-10-11 | 1 | -2/+2 |
| | | | | llvm-svn: 4115 | ||||
* | Bug fix in folding getElementPtr instructions: don't fold one into | Vikram S. Adve | 2002-09-29 | 1 | -27/+45 |
| | | | | | | | a predecessor if it has a non-zero first index and the predecessor ends with a struct index. llvm-svn: 3982 | ||||
* | Convert DIRS to PARALLEL_DIRS. They can be built independently. | Vikram S. Adve | 2002-09-29 | 1 | -1/+1 |
| | | | | llvm-svn: 3972 | ||||
* | 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 method getReturnValue(): it should return NULL if the | Vikram S. Adve | 2002-09-28 | 1 | -0/+7 |
| | | | | | | callee does not return a value. llvm-svn: 3968 | ||||
* | 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 | ||||
* | Sign-extend integer constants from original type size to 64 bits! | Vikram S. Adve | 2002-09-27 | 1 | -5/+9 |
| | | | | llvm-svn: 3958 | ||||
* | 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 | ||||
* | Add PostOpts/ and rename PreSelection/ to PreOpts/. | Vikram S. Adve | 2002-09-20 | 1 | -1/+1 |
| | | | | llvm-svn: 3847 | ||||
* | Add method MachineInstr::replace to rewrite a machine instruction in place. | Vikram S. Adve | 2002-09-20 | 1 | -0/+16 |
| | | | | llvm-svn: 3843 | ||||
* | 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 | ||||
* | Peephole optimization pass on final machine code. | Vikram S. Adve | 2002-09-20 | 1 | -0/+9 |
| | | | | llvm-svn: 3840 | ||||
* | Files moved to CodeGen/PreOpts. | Vikram S. Adve | 2002-09-20 | 2 | -294/+0 |
| | | | | llvm-svn: 3839 | ||||
* | Moving these files from Code/PreSelection to here. | Vikram S. Adve | 2002-09-20 | 1 | -0/+8 |
| | | | | | | | | | | | | | | | | Original logs for PreSelection.cpp: revision 1.2 date: 2002/09/17 23:50:32; author: lattner; state: Exp; lines: +1 -3 Don't put default parameter values into .cpp files, it breaks 3.x compilers revision 1.1 date: 2002/09/16 15:31:13; author: vadve; state: Exp; New preselection pass that specializes LLVM code for a target machine, while remaining in legal portable LLVM form and preserving type information and type safety. llvm-svn: 3838 | ||||
* | Don't put default parameter values into .cpp files, it breaks 3.x compilers | Chris Lattner | 2002-09-17 | 1 | -3/+1 |
| | | | | llvm-svn: 3799 | ||||
* | Add support for GCC 2.96 | Chris Lattner | 2002-09-17 | 1 | -2/+2 |
| | | | | llvm-svn: 3777 | ||||
* | Add subdirectory PreSelection. | Vikram S. Adve | 2002-09-16 | 1 | -1/+1 |
| | | | | llvm-svn: 3739 | ||||
* | New preselection pass that specializes LLVM code for a target machine, | Vikram S. Adve | 2002-09-16 | 2 | -0/+296 |
| | | | | | | | while remaining in legal portable LLVM form and preserving type information and type safety. llvm-svn: 3738 | ||||
* | Dump routine now writes out allocated register numbers if available. | Vikram S. Adve | 2002-09-16 | 1 | -4/+13 |
| | | | | llvm-svn: 3737 | ||||
* | Improve and fix error in allocating stack slots: adjust alignment after adding | Vikram S. Adve | 2002-09-16 | 1 | -73/+43 |
| | | | | | | | base address of the relevant region (instead of assuming that each region is maximally aligned). llvm-svn: 3736 | ||||
* | Add a version of ChooseRegOrImmed to handle numerical constants | Vikram S. Adve | 2002-09-16 | 1 | -83/+118 |
| | | | | | | introduced by InstrSelection. llvm-svn: 3735 | ||||
* | Add an assertion. | Vikram S. Adve | 2002-09-16 | 1 | -0/+1 |
| | | | | llvm-svn: 3734 | ||||
* | 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 | ||||
* | Fix a bug I introduced into the code generator. :( | Chris Lattner | 2002-09-12 | 1 | -1/+1 |
| | | | | llvm-svn: 3694 | ||||
* | - Change getelementptr instruction to use long indexes instead of uint | Chris Lattner | 2002-09-11 | 1 | -8/+8 |
| | | | | | | indexes for sequential types. llvm-svn: 3681 | ||||
* | Make sure the leakdetector is told about temporary Phi nodes also, so it doesn't | Chris Lattner | 2002-09-08 | 1 | -1/+6 |
| | | | | | | erroneously report them as leaks llvm-svn: 3624 | ||||
* | Inform the memory leak detector that TmpInstruction objects should not be | Chris Lattner | 2002-09-08 | 1 | -0/+24 |
| | | | | | | subject to memory leak checking. llvm-svn: 3623 |