oota-llvm.git
22 years agoMake array bound checks optional and disabled by default.
Chris Lattner [Mon, 11 Feb 2002 20:19:16 +0000 (20:19 +0000)]
Make array bound checks optional and disabled by default.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1725 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoTry to fix build error
Chris Lattner [Mon, 11 Feb 2002 17:12:03 +0000 (17:12 +0000)]
Try to fix build error

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1723 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix build error
Chris Lattner [Mon, 11 Feb 2002 17:11:43 +0000 (17:11 +0000)]
Fix build error

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1722 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoConvert BBLiveVar to be a BasicBlock annotation, this removes the BB2BBLVMap from...
Chris Lattner [Tue, 5 Feb 2002 06:52:25 +0000 (06:52 +0000)]
Convert BBLiveVar to be a BasicBlock annotation, this removes the BB2BBLVMap from MethodLiveVarInfo.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1721 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoConvert operand iterator over to work like an STL iterator
Chris Lattner [Tue, 5 Feb 2002 06:02:59 +0000 (06:02 +0000)]
Convert operand iterator over to work like an STL iterator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1720 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMinor change: Methods that return ValueSet's that are guaranteed to be valid
Chris Lattner [Tue, 5 Feb 2002 04:20:12 +0000 (04:20 +0000)]
Minor change: Methods that return ValueSet's that are guaranteed to be valid
return references instead of pointers.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1719 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Code Cleanups
Chris Lattner [Tue, 5 Feb 2002 03:52:29 +0000 (03:52 +0000)]
* Code Cleanups
* Removal dependencies on Type.h & remove uses of getTypeID()

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1718 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Code Cleanups of IGNode.h
Chris Lattner [Tue, 5 Feb 2002 03:51:37 +0000 (03:51 +0000)]
* Code Cleanups of IGNode.h
* Removal of getTypeID() methods, and dependence on llvm/Type.h, from IGNode & LiveRange

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1717 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMust include SetOperations to do set_*
Chris Lattner [Tue, 5 Feb 2002 03:35:53 +0000 (03:35 +0000)]
Must include SetOperations to do set_*

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1716 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove generic routines to Support/SetOperations.h
Chris Lattner [Tue, 5 Feb 2002 03:35:31 +0000 (03:35 +0000)]
Remove generic routines to Support/SetOperations.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1715 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew Support file for operations on set like objects
Chris Lattner [Tue, 5 Feb 2002 03:35:10 +0000 (03:35 +0000)]
New Support file for operations on set like objects

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1714 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove empty files
Chris Lattner [Tue, 5 Feb 2002 02:52:53 +0000 (02:52 +0000)]
Remove empty files

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1713 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Eliminate the LiveVarSet class, making applyTranferFuncForMInst a static
Chris Lattner [Tue, 5 Feb 2002 02:52:05 +0000 (02:52 +0000)]
* Eliminate the LiveVarSet class, making applyTranferFuncForMInst a static
  function in the one .cpp file that uses it.  Use ValueSet's instead.
* Prepare to delete LiveVarSet.h & LiveVarSet.cpp
* Eliminate the ValueSet class, making all old member functions into global
  templates that will eventually be moved to Support.
* Eliminate some irrelevant const's

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1712 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Eliminate the LiveVarSet class, making applyTranferFuncForMInst a static
Chris Lattner [Tue, 5 Feb 2002 02:51:01 +0000 (02:51 +0000)]
* Eliminate the LiveVarSet class, making applyTranferFuncForMInst a static
  function in the one .cpp file that uses it.  Use ValueSet's instead.
* Prepare to delete LiveVarSet.h & LiveVarSet.cpp
* Eliminate the ValueSet class, making all old member functions into global
  templates that will eventually be moved to Support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1711 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Code Cleanups
Chris Lattner [Tue, 5 Feb 2002 01:43:49 +0000 (01:43 +0000)]
* Code Cleanups
* Introduce RAV to allow stream I/O instead of using printValue

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1710 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoChanges neccesary due to the move of BBLiveVar.h to the lib/Analysis/LiveVar directory
Chris Lattner [Tue, 5 Feb 2002 00:43:37 +0000 (00:43 +0000)]
Changes neccesary due to the move of BBLiveVar.h to the lib/Analysis/LiveVar directory

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1709 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove empty file
Chris Lattner [Tue, 5 Feb 2002 00:35:59 +0000 (00:35 +0000)]
Remove empty file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1708 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Add a #include not indirectly included any more
Chris Lattner [Tue, 5 Feb 2002 00:35:14 +0000 (00:35 +0000)]
* Add a #include not indirectly included any more

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1707 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Give BBLiveVar.cpp a proper file header
Chris Lattner [Tue, 5 Feb 2002 00:34:50 +0000 (00:34 +0000)]
* Give BBLiveVar.cpp a proper file header
* applyFlowFunc DOES NOT NEED TO COPY the huge BB->BBLiveVar Map every time it is invoked!
* Big cleanups.
* Make BBLiveVar.h effectively an internal header file
* Prepare LiveVarMap.h for deletion

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1706 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Big cleanups.
Chris Lattner [Tue, 5 Feb 2002 00:33:19 +0000 (00:33 +0000)]
* Big cleanups.
* Make BBLiveVar.h effectively an internal header file
* Prepare LiveVarMap.h for deletion

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1705 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoCode cleanups, no functional change
Chris Lattner [Mon, 4 Feb 2002 23:31:16 +0000 (23:31 +0000)]
Code cleanups, no functional change

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1704 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoClean up MethodLiveVarInfo
Chris Lattner [Mon, 4 Feb 2002 20:49:04 +0000 (20:49 +0000)]
Clean up MethodLiveVarInfo

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1703 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoThe interface to instruction scheduling is now just a call to get the pass.
Chris Lattner [Mon, 4 Feb 2002 20:03:43 +0000 (20:03 +0000)]
The interface to instruction scheduling is now just a call to get the pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1702 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* RegisterAllocation _uses_ LiveVar analysis, instead of creating it's own copy
Chris Lattner [Mon, 4 Feb 2002 20:02:38 +0000 (20:02 +0000)]
* RegisterAllocation _uses_ LiveVar analysis, instead of creating it's own copy

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1701 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* The itf exposed by InstrScheduling is now a single function to create the right...
Chris Lattner [Mon, 4 Feb 2002 20:02:16 +0000 (20:02 +0000)]
* The itf exposed by InstrScheduling is now a single function to create the right pass
* InstructionScheduling is now a real pass
* InstrSched _uses_ LiveVar analysis, instead of creating it's own copy many times
  through a loop.  In this was LiveVarAnalysis is actually even SHARED by Register
  allocation.
* SchedPriorities is now passed the live var information in

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1700 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoTurn live variable analysis into a real MethodPass.
Chris Lattner [Mon, 4 Feb 2002 20:00:08 +0000 (20:00 +0000)]
Turn live variable analysis into a real MethodPass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1699 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoInstruction scheduling is a real pass now.
Chris Lattner [Mon, 4 Feb 2002 19:59:22 +0000 (19:59 +0000)]
Instruction scheduling is a real pass now.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1698 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove Obsolete LoopDepthCalculator. All users should use LoopInfo directly.
Chris Lattner [Mon, 4 Feb 2002 17:49:01 +0000 (17:49 +0000)]
Remove Obsolete LoopDepthCalculator.  All users should use LoopInfo directly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1697 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoSwitch register allocator over to using LoopInfo directly instead of indirectly throu...
Chris Lattner [Mon, 4 Feb 2002 17:48:00 +0000 (17:48 +0000)]
Switch register allocator over to using LoopInfo directly instead of indirectly through LoopDepthCalculator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1696 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMake LoopDeptCalculator be an internal artifact of how RegAlloc is implemented,
Chris Lattner [Mon, 4 Feb 2002 17:39:42 +0000 (17:39 +0000)]
Make LoopDeptCalculator be an internal artifact of how RegAlloc is implemented,
do not expose it.  Additionally, have it be auto generated by the pass framework
for us.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1695 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoREmove huge hack used by register allocator
Chris Lattner [Mon, 4 Feb 2002 17:39:02 +0000 (17:39 +0000)]
REmove huge hack used by register allocator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1694 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMake #include "llvm/Analysis/LoopDepth.h" be an internal artifact of how register...
Chris Lattner [Mon, 4 Feb 2002 17:38:48 +0000 (17:38 +0000)]
Make #include "llvm/Analysis/LoopDepth.h" be an internal artifact of how register allocation is implemented.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1693 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemvoe big hack that was used by the register allocator
Chris Lattner [Mon, 4 Feb 2002 17:38:03 +0000 (17:38 +0000)]
Remvoe big hack that was used by the register allocator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1692 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoTrim down makefile, again.
Chris Lattner [Mon, 4 Feb 2002 17:37:25 +0000 (17:37 +0000)]
Trim down makefile, again.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1691 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* ValueSet interface converted from add/remove to insert/erase
Chris Lattner [Mon, 4 Feb 2002 16:37:09 +0000 (16:37 +0000)]
* ValueSet interface converted from add/remove to insert/erase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1690 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Add #includes removed from headers
Chris Lattner [Mon, 4 Feb 2002 16:36:59 +0000 (16:36 +0000)]
* Add #includes removed from headers
* ValueSet interface converted from add/remove to insert/erase
* Minor cleanups

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1689 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove dependence on BBLiveVar from InstrScheduling
Chris Lattner [Mon, 4 Feb 2002 16:35:45 +0000 (16:35 +0000)]
Remove dependence on BBLiveVar from InstrScheduling
Minor cleanups

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1688 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Add #includes that were yanked out of header files
Chris Lattner [Mon, 4 Feb 2002 16:35:12 +0000 (16:35 +0000)]
* Add #includes that were yanked out of header files
* Convert over to valueset interface that uses insert & erase insead of add and remove
* the -> operator really isn't that hard to use!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1687 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoeliminate the add and remove methods, clients must use insert and erase directly.
Chris Lattner [Mon, 4 Feb 2002 16:33:18 +0000 (16:33 +0000)]
eliminate the add and remove methods, clients must use insert and erase directly.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1686 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove tons of include pollution
Chris Lattner [Mon, 4 Feb 2002 16:32:40 +0000 (16:32 +0000)]
Remove tons of include pollution
Remove frivolous const's
Make use of the -> operator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1685 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoUse generic pointer hashes instead of custom ones.
Chris Lattner [Mon, 4 Feb 2002 16:31:42 +0000 (16:31 +0000)]
Use generic pointer hashes instead of custom ones.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1684 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoCut down include pollution and number of frivolous consts.
Chris Lattner [Mon, 4 Feb 2002 16:31:03 +0000 (16:31 +0000)]
Cut down include pollution and number of frivolous consts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1683 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoPostOrderIterator really does depend on Method and BasicBlock. Obviously this
Chris Lattner [Mon, 4 Feb 2002 16:29:55 +0000 (16:29 +0000)]
PostOrderIterator really does depend on Method and BasicBlock.  Obviously this
is a huge fixme.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1682 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoConvert RegisterAllocator interface to opaque pass type, so that users do not
Chris Lattner [Mon, 4 Feb 2002 15:54:09 +0000 (15:54 +0000)]
Convert RegisterAllocator interface to opaque pass type, so that users do not
need to know _anything_ about RegAlloc to use it.  Well in the end maybe.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1681 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoEmitAssembly doesn't need an UltraSparc, it can do with any TargetMachine
Chris Lattner [Mon, 4 Feb 2002 15:53:23 +0000 (15:53 +0000)]
EmitAssembly doesn't need an UltraSparc, it can do with any TargetMachine

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1680 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoEliminate ModuleAnalyzer. It's old code that is not going to be used in the near...
Chris Lattner [Mon, 4 Feb 2002 06:47:17 +0000 (06:47 +0000)]
Eliminate ModuleAnalyzer.  It's old code that is not going to be used in the near future

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1679 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoCut down number of times libraries are included to link a little bit faster
Chris Lattner [Mon, 4 Feb 2002 06:43:56 +0000 (06:43 +0000)]
Cut down number of times libraries are included to link a little bit faster

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1678 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Minor cleanups
Chris Lattner [Mon, 4 Feb 2002 05:59:25 +0000 (05:59 +0000)]
* Minor cleanups
* Reduce number of #includes
* Remove blatently misleading qualifiers (how do you have an inlined pure virtual function?)
* Remove unnecesary & ignored qualifiers (const int argument vs int argument)
* SparcInternals.h now no longer #includes RegClass.h or SparcRegClassInfo.h
* Pull inlined functions out of .h file if they are virtual and interfere with dependencies

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1677 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd code that used to be inline in MachineSchedInfo.h
Chris Lattner [Mon, 4 Feb 2002 05:56:30 +0000 (05:56 +0000)]
Add code that used to be inline in MachineSchedInfo.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1676 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd #includes neccesary since they were removed from .h files
Chris Lattner [Mon, 4 Feb 2002 05:56:09 +0000 (05:56 +0000)]
Add #includes neccesary since they were removed from .h files

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1675 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMove instrIsFeasible from InstrScheduling.h
Chris Lattner [Mon, 4 Feb 2002 05:55:42 +0000 (05:55 +0000)]
Move instrIsFeasible from InstrScheduling.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1674 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Minor cleanups
Chris Lattner [Mon, 4 Feb 2002 05:55:10 +0000 (05:55 +0000)]
* Minor cleanups
* Reduce number of #includes
* Delete blank lines at end of files
* Remove blatently misleading qualifiers (how do you have an inlined pure virtual function?)
* Remove unnecesary & ignored qualifiers (const int argument vs int argument)
* Remove LARGE chunks of "inline" code out to .cpp file
* s/unsigned int/unsigned/

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1673 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Minor cleanups
Chris Lattner [Mon, 4 Feb 2002 05:52:08 +0000 (05:52 +0000)]
* Minor cleanups
* Reduce number of #includes, sometimes drastically (LiveRangeInfo.h lost _7_)
* Move instrIsFeasible() from InstrScheduling.h to SchedPriorities.h
* Delete blank lines at end of files

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1672 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMinor cleanups
Chris Lattner [Mon, 4 Feb 2002 05:48:24 +0000 (05:48 +0000)]
Minor cleanups

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1671 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoSparcRegInfo does NOT need anything about instruction scheduling.
Chris Lattner [Mon, 4 Feb 2002 02:44:38 +0000 (02:44 +0000)]
SparcRegInfo does NOT need anything about instruction scheduling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1670 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Move command line parsing debug stuff to InstrScheduling internal header file
Chris Lattner [Mon, 4 Feb 2002 02:44:20 +0000 (02:44 +0000)]
* Move command line parsing debug stuff to InstrScheduling internal header file
SchedPriorities.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1669 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoPull all of the scheduling related stuff out of Sparc.cpp into it's own file
Chris Lattner [Mon, 4 Feb 2002 00:39:14 +0000 (00:39 +0000)]
Pull all of the scheduling related stuff out of Sparc.cpp into it's own file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1668 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoSplit RegisterAllocation stuff OUT of Sparc.cpp into a well defined pass
Chris Lattner [Mon, 4 Feb 2002 00:33:08 +0000 (00:33 +0000)]
Split RegisterAllocation stuff OUT of Sparc.cpp into a well defined pass
that has a very minimal interface (like it should have).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1667 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMove a ton of tables out of SparcInternals.h and move them to Sparc.cpp.
Chris Lattner [Mon, 4 Feb 2002 00:04:35 +0000 (00:04 +0000)]
Move a ton of tables out of SparcInternals.h and move them to Sparc.cpp.
Eventually they will probably get moved again, but at least now they aren't
having to be compiled by 7 different .cpp files...

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1666 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Remove -noasm option. If we're not compiling, what's the point?
Chris Lattner [Sun, 3 Feb 2002 23:43:19 +0000 (23:43 +0000)]
* Remove -noasm option.  If we're not compiling, what's the point?
* convert over to pass based target backend.  Much cleaner now

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1665 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoConvert sparc backend over to use pass based compilation structure.
Chris Lattner [Sun, 3 Feb 2002 23:42:19 +0000 (23:42 +0000)]
Convert sparc backend over to use pass based compilation structure.
Try to decouple stuff as much as possible.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1664 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoConvert sparc backend over to use pass based compilation structure.
Chris Lattner [Sun, 3 Feb 2002 23:41:51 +0000 (23:41 +0000)]
Convert sparc backend over to use pass based compilation structure.
Convert some stages into passes in preparation for more splitting up.
Try to decouple stuff as much as possible.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1663 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoConvert assembly emission over to a two pass approach.
Chris Lattner [Sun, 3 Feb 2002 23:41:08 +0000 (23:41 +0000)]
Convert assembly emission over to a two pass approach.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1662 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRevamp compilation to be pass based instead of being monolithic so that
Chris Lattner [Sun, 3 Feb 2002 23:40:22 +0000 (23:40 +0000)]
Revamp compilation to be pass based instead of being monolithic so that
backend's can customize compilation as much as they want

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1661 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoCode pulled out of MAchineInstr.(h|cpp)
Chris Lattner [Sun, 3 Feb 2002 07:54:50 +0000 (07:54 +0000)]
Code pulled out of MAchineInstr.(h|cpp)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1660 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoSwitch over to a model where we compile each method, emit assembly, then free
Chris Lattner [Sun, 3 Feb 2002 07:54:10 +0000 (07:54 +0000)]
Switch over to a model where we compile each method, emit assembly, then free
machineinstr memory before starting on the next method.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1659 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoSwitch from MachineCodeForVMInstr model that is built into the VMCore library to...
Chris Lattner [Sun, 3 Feb 2002 07:52:58 +0000 (07:52 +0000)]
Switch from MachineCodeForVMInstr model that is built into the VMCore library to an annotation based MAchineCodeForInstruction model

Instruction.cpp now has 0 lines of code generation related code in it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1658 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd a file level comment
Chris Lattner [Sun, 3 Feb 2002 07:52:04 +0000 (07:52 +0000)]
Add a file level comment
Remove #includes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1657 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoImplement new method by method assembly output & memory releasing
Chris Lattner [Sun, 3 Feb 2002 07:51:17 +0000 (07:51 +0000)]
Implement new method by method assembly output & memory releasing

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1656 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Switch to new TmpInstruction model
Chris Lattner [Sun, 3 Feb 2002 07:50:56 +0000 (07:50 +0000)]
* Switch to new TmpInstruction model
* Switch to new MachineCodeForInstruction model

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1655 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Switch to new TmpInstruction model
Chris Lattner [Sun, 3 Feb 2002 07:49:49 +0000 (07:49 +0000)]
* Switch to new TmpInstruction model

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1654 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Swithc to new MachineCodeForInstruction model
Chris Lattner [Sun, 3 Feb 2002 07:49:15 +0000 (07:49 +0000)]
* Swithc to new MachineCodeForInstruction model
* Implement memory freeing for instruction temporaries

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1653 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* prune #includes
Chris Lattner [Sun, 3 Feb 2002 07:48:06 +0000 (07:48 +0000)]
* prune #includes
* Implement permethod output of machine code to assembly

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1652 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd #include that is no longer implicitly included
Chris Lattner [Sun, 3 Feb 2002 07:47:05 +0000 (07:47 +0000)]
Add #include that is no longer implicitly included

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1651 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoLots of code cleanups, no functional changes
Chris Lattner [Sun, 3 Feb 2002 07:46:34 +0000 (07:46 +0000)]
Lots of code cleanups, no functional changes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1650 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Prune #includes
Chris Lattner [Sun, 3 Feb 2002 07:46:01 +0000 (07:46 +0000)]
* Prune #includes
* Remove MachineCodeFor(Method|VMInstr) code to their own .cpp files

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1649 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Switch over to cleaner TmpInstruction model
Chris Lattner [Sun, 3 Feb 2002 07:39:06 +0000 (07:39 +0000)]
* Switch over to cleaner TmpInstruction model

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1648 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Straighten out #includes
Chris Lattner [Sun, 3 Feb 2002 07:33:46 +0000 (07:33 +0000)]
* Straighten out #includes
* Switch to MAchineCodeForInstruction model instead of MachineCodeForVMInstr

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1647 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Swich to annotation model for MachineCodeForInstruction
Chris Lattner [Sun, 3 Feb 2002 07:31:41 +0000 (07:31 +0000)]
* Swich to annotation model for MachineCodeForInstruction

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1646 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove extraneous #includes
Chris Lattner [Sun, 3 Feb 2002 07:30:08 +0000 (07:30 +0000)]
Remove extraneous #includes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1645 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Straighten out #includes
Chris Lattner [Sun, 3 Feb 2002 07:29:45 +0000 (07:29 +0000)]
* Straighten out #includes
* Switch from MachineCodeForVMInstr to MachineCodeForInstruction model

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1644 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Get machine instrs from Instructin's by using MachineCodeForInstruction::get
Chris Lattner [Sun, 3 Feb 2002 07:28:30 +0000 (07:28 +0000)]
* Get machine instrs from Instructin's by using MachineCodeForInstruction::get
* Convert a few (*X). to X->

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1643 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoLots of nonfunctional code cleanups
Chris Lattner [Sun, 3 Feb 2002 07:25:25 +0000 (07:25 +0000)]
Lots of nonfunctional code cleanups

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1642 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd methods to TargetMachine to:
Chris Lattner [Sun, 3 Feb 2002 07:24:05 +0000 (07:24 +0000)]
Add methods to TargetMachine to:
* Output assembly code a method at a time instead of building it all up then emitting it as a whole module
* Release memory contained in various annotations.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1641 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Trim #includes
Chris Lattner [Sun, 3 Feb 2002 07:20:47 +0000 (07:20 +0000)]
* Trim #includes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1640 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove #include
Chris Lattner [Sun, 3 Feb 2002 07:17:37 +0000 (07:17 +0000)]
Remove #include
move typedefs here

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1639 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove extranous #include
Chris Lattner [Sun, 3 Feb 2002 07:15:36 +0000 (07:15 +0000)]
Remove extranous #include

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1638 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd a class forward decl
Chris Lattner [Sun, 3 Feb 2002 07:13:04 +0000 (07:13 +0000)]
Add a class forward decl

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1637 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Prune many #includes
Chris Lattner [Sun, 3 Feb 2002 07:11:59 +0000 (07:11 +0000)]
* Prune many #includes
* Remove MachineCodeForVMInstr -> MachineCodeForInstruction.h
* Remove MachineCodeForMethod  -> MachineCodeForMethod.h

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1636 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Remove TMP_INSTRUCTION_OPCODE silliness
Chris Lattner [Sun, 3 Feb 2002 07:07:16 +0000 (07:07 +0000)]
* Remove TMP_INSTRUCTION_OPCODE silliness
* Fix TmpInstruction copy ctor to not read uninitialized memory
* Fix TmpInstruction copy ctor to not copy 2 operands if there is only one
* Inline Initialize method into ctors

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1635 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove extraneous #includes
Chris Lattner [Sun, 3 Feb 2002 07:03:13 +0000 (07:03 +0000)]
Remove extraneous #includes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1634 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Inline destructor
Chris Lattner [Sun, 3 Feb 2002 06:58:15 +0000 (06:58 +0000)]
* Inline destructor
* Remove MachineCodeForVMInstr support (it's now an annotation)
* Remove dropAllReferences override (just use User's)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1633 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove extraneous #include
Chris Lattner [Sun, 3 Feb 2002 06:27:39 +0000 (06:27 +0000)]
Remove extraneous #include

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1632 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoCatch the parse exception if bad input is provided. Much better than an abort
Chris Lattner [Fri, 1 Feb 2002 05:09:35 +0000 (05:09 +0000)]
Catch the parse exception if bad input is provided.  Much better than an abort

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1631 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew checkin
Chris Lattner [Fri, 1 Feb 2002 05:04:58 +0000 (05:04 +0000)]
New checkin

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1630 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd mergereturn pass
Chris Lattner [Fri, 1 Feb 2002 04:54:11 +0000 (04:54 +0000)]
Add mergereturn pass

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1629 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoGeneral cleanup
Chris Lattner [Fri, 1 Feb 2002 04:53:48 +0000 (04:53 +0000)]
General cleanup

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1628 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd more debug output
Chris Lattner [Fri, 1 Feb 2002 04:53:36 +0000 (04:53 +0000)]
Add more debug output

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1627 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd constructor for addition to opt program
Chris Lattner [Fri, 1 Feb 2002 04:53:15 +0000 (04:53 +0000)]
Add constructor for addition to opt program

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1626 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRip out irrelevant details
Chris Lattner [Fri, 1 Feb 2002 04:44:38 +0000 (04:44 +0000)]
Rip out irrelevant details

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1625 91177308-0d34-0410-b5e6-96231b3b80d8