summaryrefslogtreecommitdiffstats
path: root/include
Commit message (Collapse)AuthorAgeFilesLines
* Added class MachineOptInfo as interface to target-specificVikram S. Adve2002-09-203-5/+20
| | | | | | | | routines supporting machine code optimization. Also added method MachineInstrInfo::getNOPOpCode(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3845 91177308-0d34-0410-b5e6-96231b3b80d8
* Interface to target-specific routines that support machine code optimization.Vikram S. Adve2002-09-201-0/+22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3844 91177308-0d34-0410-b5e6-96231b3b80d8
* Add method MachineInstr::replace to rewrite a machine instruction in place.Vikram S. Adve2002-09-201-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3843 91177308-0d34-0410-b5e6-96231b3b80d8
* Workaround for bug in GCC 3.1.1 iostreams library on sparc. It apprarentlyChris Lattner2002-09-191-1/+1
| | | | | | | isn't flushing an ostream when it is deleted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3834 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix ambiguity problem due to builtin log2(double) functionChris Lattner2002-09-172-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3800 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix namespace correctness bugChris Lattner2002-09-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3798 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for gcc 3.2Chris Lattner2002-09-171-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3795 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove extra #includeChris Lattner2002-09-171-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3776 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix typo in comment.Vikram S. Adve2002-09-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3773 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix compile problem on linux. Noone should ever #include <inttypes.h>Chris Lattner2002-09-161-1/+1
| | | | | | | directly. Instead, include Support/DataTypes.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3766 91177308-0d34-0410-b5e6-96231b3b80d8
* New preselection pass that specializes LLVM code for a target machine,Vikram S. Adve2002-09-161-0/+16
| | | | | | | | 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@3759 91177308-0d34-0410-b5e6-96231b3b80d8
* Add ilist_iterator constructor from a node reference.Vikram S. Adve2002-09-162-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3756 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow transformation DecomposeArrayRef(GetElementPtrInst* GEP) toVikram S. Adve2002-09-161-1/+8
| | | | | | | be invoked on a single instruction at a time, for use in other passes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3751 91177308-0d34-0410-b5e6-96231b3b80d8
* Add routines to update or erase operands (and to do so without externalVikram S. Adve2002-09-163-1/+16
| | | | | | | assumptions about which operand number stores what operand). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3750 91177308-0d34-0410-b5e6-96231b3b80d8
* *** empty log message ***Vikram S. Adve2002-09-161-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3749 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for passes that use a TargetMachine object.Vikram S. Adve2002-09-161-13/+39
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3748 91177308-0d34-0410-b5e6-96231b3b80d8
* Add method MachineOperand::hasAllocatedReg().Vikram S. Adve2002-09-161-3/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3747 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a version of ChooseRegOrImmed to handle numerical constantsVikram S. Adve2002-09-161-0/+8
| | | | | | | introduced by InstrSelection. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3746 91177308-0d34-0410-b5e6-96231b3b80d8
* Add method adjustAlignment so that stack slot alignments can be computedVikram S. Adve2002-09-161-3/+9
| | | | | | | in a target-dependent manner (because of the dang OFFSET in Sparc v9). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3745 91177308-0d34-0410-b5e6-96231b3b80d8
* Add methods to query about the representation of LLVM quantities (e.g.,Vikram S. Adve2002-09-162-0/+46
| | | | | | | | constants). Useful for target-dependent LLVM transformations like Preselection. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3743 91177308-0d34-0410-b5e6-96231b3b80d8
* *** empty log message ***Vikram S. Adve2002-09-161-4/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3741 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unnecessary include.Vikram S. Adve2002-09-141-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3723 91177308-0d34-0410-b5e6-96231b3b80d8
* Break RA_DEBUG option into several levels to get better output.Vikram S. Adve2002-09-141-0/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3722 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix to work correctly under linuxChris Lattner2002-09-141-9/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3720 91177308-0d34-0410-b5e6-96231b3b80d8
* Moving to lib/CodeGen/RegAlloc.Vikram S. Adve2002-09-141-18/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3718 91177308-0d34-0410-b5e6-96231b3b80d8
* Add support for MacOS and (hopefully) other BSD derivatives.Vikram S. Adve2002-09-141-1/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3717 91177308-0d34-0410-b5e6-96231b3b80d8
* Change the MallocInst & AllocaInst ctors to take the allocated type, not theChris Lattner2002-09-131-4/+8
| | | | | | | pointer type returned. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3711 91177308-0d34-0410-b5e6-96231b3b80d8
* Tighten up sanity checkingChris Lattner2002-09-131-3/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3706 91177308-0d34-0410-b5e6-96231b3b80d8
* Try to work well on multiple platforms.Chris Lattner2002-09-131-4/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3704 91177308-0d34-0410-b5e6-96231b3b80d8
* Add better linux support by using the right macro. This still should beChris Lattner2002-09-131-1/+1
| | | | | | | autoconfiscated, but for now this is sufficient. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3701 91177308-0d34-0410-b5e6-96231b3b80d8
* Checkin patch written by Casey Carter, enabling support for the redhat GCC 2.96Chris Lattner2002-09-132-0/+8
| | | | | | | compiler. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3697 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a new BasicBlockPass::doInitialization/Finalization(Function &) pair ofChris Lattner2002-09-121-3/+24
| | | | | | | methods that may be useful for BasicBlockPasses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3689 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert index type for getelementptr instruction from uint to longChris Lattner2002-09-111-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3678 91177308-0d34-0410-b5e6-96231b3b80d8
* Add convenience ctor to BranchInstChris Lattner2002-09-101-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3675 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement support for inserting an instruction into a basic block right when itChris Lattner2002-09-106-69/+79
| | | | | | | is created. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3651 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate the GenericBinaryInst classChris Lattner2002-09-101-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3649 91177308-0d34-0410-b5e6-96231b3b80d8
* * Eliminate GenericBinaryInst classChris Lattner2002-09-101-20/+8
| | | | | | | * Allow specifying where to insert a newly created SetCondInst git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3648 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate the GenericBinaryInst class.Chris Lattner2002-09-101-8/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3647 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate setType methodChris Lattner2002-09-101-2/+0
| | | | | | | Now the only way to set the type of a value is in the ctor for an object git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3646 91177308-0d34-0410-b5e6-96231b3b80d8
* Move TmpInstruction ctor to InstrSelection.cpp fileChris Lattner2002-09-081-12/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3622 91177308-0d34-0410-b5e6-96231b3b80d8
* Checkin initial support for automatic memory leak detection routinesChris Lattner2002-09-082-0/+158
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3617 91177308-0d34-0410-b5e6-96231b3b80d8
* * Clean up some commentsChris Lattner2002-09-066-21/+27
| | | | | | | | | * Move code out of header file to .cpp files, to make future changes easier * Add arguments to classes so that they can be automatically inserted into their parent structure upon creation. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3604 91177308-0d34-0410-b5e6-96231b3b80d8
* * Clean up indentation a bitChris Lattner2002-09-061-15/+21
| | | | | | | | | | * Fix broken comments (copy and pasto) * Remove irrelevant comment * Add extra argument to function that causes it to get inserted into a module automatically. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3601 91177308-0d34-0410-b5e6-96231b3b80d8
* Include stub for correlated expression elimination passChris Lattner2002-09-061-0/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3597 91177308-0d34-0410-b5e6-96231b3b80d8
* - Rename BreakCriticalEdge to the slightly more standard SplitCriticalEdgeChris Lattner2002-09-061-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3587 91177308-0d34-0410-b5e6-96231b3b80d8
* * Doxygenize APIChris Lattner2002-09-061-23/+39
| | | | | | | * Add new functions for identifying and breaking critical edges git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3586 91177308-0d34-0410-b5e6-96231b3b80d8
* - Doxygenize commentsChris Lattner2002-09-061-11/+69
| | | | | | | | | | - Add new method to dominatorset: properlyDominates - Add synonmys for operator[] to classes so that pointers to dominator information can be used more easily. - Add API's to update dominator information git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3585 91177308-0d34-0410-b5e6-96231b3b80d8
* Make getAnalysisToUpdate<AnalysisType>() public so that transformation APIsChris Lattner2002-09-061-15/+16
| | | | | | | can update analysis information. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3584 91177308-0d34-0410-b5e6-96231b3b80d8
* Add new function MachineInstrInfo::CreateZeroExtensionInstructions.Vikram S. Adve2002-09-052-4/+36
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3582 91177308-0d34-0410-b5e6-96231b3b80d8
* - Renamed Type::isIntegral() to Type::isInteger()Chris Lattner2002-09-032-8/+17
| | | | | | | | | - Added new method Type::isIntegral() that is the same as isInteger, but also accepts bool. SCVS: ---------------------------------------------------------------------- git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@3572 91177308-0d34-0410-b5e6-96231b3b80d8