aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen
AgeCommit message (Collapse)Author
2002-10-28Add #includes now that MachineInstr.h doesn't include ↵Chris Lattner
llvm/Target/MachineInstrInfo.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4327 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-28Don't #include <Support/*>, #include "Support/*"Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4325 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-28*** empty log message ***Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4323 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-28MachineFunction now includes MachineBasicBlock so there is no need toChris Lattner
reinclude it git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4322 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-28Rename MachineCodeForBasicBlock to MachineBasicBlockChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4318 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-28*** empty log message ***Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4317 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-28Inline some methods from .cpp files into .h files, minor cleanupsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4313 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-28Minor cleanupsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4312 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-28Move machine code generation/destruction passes out of Sparc.cpp becauseChris Lattner
they are generic git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4310 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-28Prune #includesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4307 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-28Updates to match misha's changesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4302 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-28Changed `MachineCodeForMethod' to `MachineFunction'.Misha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4301 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-25Initial checkin of codegen infrastructure for LLVM-JITChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4282 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-23Tell PassManager that this pass does not invalidate the CFG so that dominatorChris Lattner
information and Loop info will not have to be recomputed after this runs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4269 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-22Ensure definate initializationChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4263 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-22 - Two minor improvements to the MachineInstr class to reduce footprint andChris Lattner
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! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4261 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-14Significant improvement: GEP used by a load or store no longer generatesVikram S. Adve
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). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4168 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-13Use vectors instead of hash_maps for issueGaps and conflictLists.Vikram S. Adve
These hash lookups were a major sink of time because they happen so often! Also, add option to disable scheduling. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4138 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-13Major bug fix: was not adding CD edges for RETURNs!Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4137 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-11Major bug fix: spill code for an instruction in a delay slot wasVikram S. Adve
merrily being inserted before/after the instruction! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4116 91177308-0d34-0410-b5e6-96231b3b80d8
2002-10-11Don't pad variables in stack slots for performance!Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4115 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-29Bug fix in folding getElementPtr instructions: don't fold one intoVikram S. Adve
a predecessor if it has a non-zero first index and the predecessor ends with a struct index. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3982 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-29Convert DIRS to PARALLEL_DIRS. They can be built independently.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3972 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-28Added a couple of helper methods for live range construction.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3970 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-28Live ranges for Return value and return address of a Call are nowVikram S. Adve
created here, simply by handling all implicit operands (which should have been done anyway). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3969 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-28Fixed method getReturnValue(): it should return NULL if theVikram S. Adve
callee does not return a value. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3968 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-28Fixed incorrect assertion: spill code for function ptr should beVikram S. Adve
handled like normal operands, not like other call arguments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3967 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-27Sign-extend integer constants from original type size to 64 bits!Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3958 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-20Add method IGNode::getCombinedDegree to count the sum of the degreesVikram S. Adve
of two nodes, excluding duplicates. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3848 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-20Add PostOpts/ and rename PreSelection/ to PreOpts/.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3847 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-20Add method MachineInstr::replace to rewrite a machine instruction in place.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3843 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-20Allow copy coalescing in more cases: if sum of node degrees is more thanVikram S. Adve
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3842 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-20Peephole optimization pass on final machine code.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3840 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-20Files moved to CodeGen/PreOpts.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3839 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-20Moving these files from Code/PreSelection to here.Vikram S. Adve
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. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3838 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-17Don't put default parameter values into .cpp files, it breaks 3.x compilersChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3799 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-17Add support for GCC 2.96Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3777 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-16Add subdirectory PreSelection.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3739 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-16New preselection pass that specializes LLVM code for a target machine,Vikram S. Adve
while remaining in legal portable LLVM form and preserving type information and type safety. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3738 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-16Dump routine now writes out allocated register numbers if available.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3737 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-16Improve and fix error in allocating stack slots: adjust alignment after addingVikram S. Adve
base address of the relevant region (instead of assuming that each region is maximally aligned). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3736 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-16Add a version of ChooseRegOrImmed to handle numerical constantsVikram S. Adve
introduced by InstrSelection. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3735 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-16Add an assertion.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3734 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-15Fix typos in previous checkin.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3726 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-15RegAllocCommon no longer includes CommandLine.h so we have to include itChris Lattner
here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3725 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-14Break RA_DEBUG option into several levels to get better control overVikram S. Adve
debug output. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3724 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-14Remove unnecessary include.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3723 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-14Break RA_DEBUG option into several levels to get better output.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3722 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-14Moving to lib/CodeGen/RegAlloc.Vikram S. Adve
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3718 91177308-0d34-0410-b5e6-96231b3b80d8
2002-09-12Fix a bug I introduced into the code generator. :(Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3694 91177308-0d34-0410-b5e6-96231b3b80d8