Chris Lattner
74ed5cf1e6
Fix build error
...
llvm-svn: 1722
2002-02-11 17:11:43 +00:00
Chris Lattner
7a264284f0
Convert BBLiveVar to be a BasicBlock annotation, this removes the BB2BBLVMap from MethodLiveVarInfo.
...
llvm-svn: 1721
2002-02-05 06:52:25 +00:00
Chris Lattner
ea13e0afa0
Convert operand iterator over to work like an STL iterator
...
llvm-svn: 1720
2002-02-05 06:02:59 +00:00
Chris Lattner
7e5ee4253c
Minor change: Methods that return ValueSet's that are guaranteed to be valid
...
return references instead of pointers.
llvm-svn: 1719
2002-02-05 04:20:12 +00:00
Chris Lattner
d30f989cda
* Code Cleanups
...
* Removal dependencies on Type.h & remove uses of getTypeID()
llvm-svn: 1718
2002-02-05 03:52:29 +00:00
Chris Lattner
f1223ace96
* Code Cleanups of IGNode.h
...
* Removal of getTypeID() methods, and dependence on llvm/Type.h, from IGNode & LiveRange
llvm-svn: 1717
2002-02-05 03:51:37 +00:00
Chris Lattner
101a5d9197
Must include SetOperations to do set_*
...
llvm-svn: 1716
2002-02-05 03:35:53 +00:00
Chris Lattner
a2b661f764
Remove generic routines to Support/SetOperations.h
...
llvm-svn: 1715
2002-02-05 03:35:31 +00:00
Chris Lattner
ae99a1bc0f
New Support file for operations on set like objects
...
llvm-svn: 1714
2002-02-05 03:35:10 +00:00
Chris Lattner
dc6539bcc0
Remove empty files
...
llvm-svn: 1713
2002-02-05 02:52:53 +00:00
Chris Lattner
b0af9cdbda
* 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
llvm-svn: 1712
2002-02-05 02:52:05 +00:00
Chris Lattner
b1def732af
* 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.
llvm-svn: 1711
2002-02-05 02:51:01 +00:00
Chris Lattner
30e8fb69c5
* Code Cleanups
...
* Introduce RAV to allow stream I/O instead of using printValue
llvm-svn: 1710
2002-02-05 01:43:49 +00:00
Chris Lattner
91c4a419e2
Changes neccesary due to the move of BBLiveVar.h to the lib/Analysis/LiveVar directory
...
llvm-svn: 1709
2002-02-05 00:43:37 +00:00
Chris Lattner
bb69f7a855
Remove empty file
...
llvm-svn: 1708
2002-02-05 00:35:59 +00:00
Chris Lattner
3da53ad636
* Add a #include not indirectly included any more
...
llvm-svn: 1707
2002-02-05 00:35:14 +00:00
Chris Lattner
7c70802193
* 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
llvm-svn: 1706
2002-02-05 00:34:50 +00:00
Chris Lattner
94b8baf089
* Big cleanups.
...
* Make BBLiveVar.h effectively an internal header file
* Prepare LiveVarMap.h for deletion
llvm-svn: 1705
2002-02-05 00:33:19 +00:00
Chris Lattner
f468b52e3a
Code cleanups, no functional change
...
llvm-svn: 1704
2002-02-04 23:31:16 +00:00
Chris Lattner
439d0e557b
Clean up MethodLiveVarInfo
...
llvm-svn: 1703
2002-02-04 20:49:04 +00:00
Chris Lattner
1cb37628d9
The interface to instruction scheduling is now just a call to get the pass.
...
llvm-svn: 1702
2002-02-04 20:03:43 +00:00
Chris Lattner
aa7a151874
* RegisterAllocation _uses_ LiveVar analysis, instead of creating it's own copy
...
llvm-svn: 1701
2002-02-04 20:02:38 +00:00
Chris Lattner
6974172717
* 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
llvm-svn: 1700
2002-02-04 20:02:16 +00:00
Chris Lattner
494266eaf0
Turn live variable analysis into a real MethodPass.
...
llvm-svn: 1699
2002-02-04 20:00:08 +00:00
Chris Lattner
ee445a60a1
Instruction scheduling is a real pass now.
...
llvm-svn: 1698
2002-02-04 19:59:22 +00:00
Chris Lattner
75b2283602
Remove Obsolete LoopDepthCalculator. All users should use LoopInfo directly.
...
llvm-svn: 1697
2002-02-04 17:49:01 +00:00
Chris Lattner
347a23921a
Switch register allocator over to using LoopInfo directly instead of indirectly through LoopDepthCalculator
...
llvm-svn: 1696
2002-02-04 17:48:00 +00:00
Chris Lattner
8a352d597c
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.
llvm-svn: 1695
2002-02-04 17:39:42 +00:00
Chris Lattner
519af2962d
REmove huge hack used by register allocator
...
llvm-svn: 1694
2002-02-04 17:39:02 +00:00
Chris Lattner
669a74ce8a
Make #include "llvm/Analysis/LoopDepth.h" be an internal artifact of how register allocation is implemented.
...
llvm-svn: 1693
2002-02-04 17:38:48 +00:00
Chris Lattner
4469935eb5
Remvoe big hack that was used by the register allocator
...
llvm-svn: 1692
2002-02-04 17:38:03 +00:00
Chris Lattner
a5e627852d
Trim down makefile, again.
...
llvm-svn: 1691
2002-02-04 17:37:25 +00:00
Chris Lattner
e6b511dc0a
* ValueSet interface converted from add/remove to insert/erase
...
llvm-svn: 1690
2002-02-04 16:37:09 +00:00
Chris Lattner
83a8434eb2
* Add #includes removed from headers
...
* ValueSet interface converted from add/remove to insert/erase
* Minor cleanups
llvm-svn: 1689
2002-02-04 16:36:59 +00:00
Chris Lattner
e630ac9330
Remove dependence on BBLiveVar from InstrScheduling
...
Minor cleanups
llvm-svn: 1688
2002-02-04 16:35:45 +00:00
Chris Lattner
325869ac29
* 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!
llvm-svn: 1687
2002-02-04 16:35:12 +00:00
Chris Lattner
d3972903b1
eliminate the add and remove methods, clients must use insert and erase directly.
...
llvm-svn: 1686
2002-02-04 16:33:18 +00:00
Chris Lattner
339a3f6e5c
Remove tons of include pollution
...
Remove frivolous const's
Make use of the -> operator
llvm-svn: 1685
2002-02-04 16:32:40 +00:00
Chris Lattner
4afa297e52
Use generic pointer hashes instead of custom ones.
...
llvm-svn: 1684
2002-02-04 16:31:42 +00:00
Chris Lattner
7ad6519f90
Cut down include pollution and number of frivolous consts.
...
llvm-svn: 1683
2002-02-04 16:31:03 +00:00
Chris Lattner
28d8eb2286
PostOrderIterator really does depend on Method and BasicBlock. Obviously this
...
is a huge fixme.
llvm-svn: 1682
2002-02-04 16:29:55 +00:00
Chris Lattner
f48173a875
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.
llvm-svn: 1681
2002-02-04 15:54:09 +00:00
Chris Lattner
13b2227ccc
EmitAssembly doesn't need an UltraSparc, it can do with any TargetMachine
...
llvm-svn: 1680
2002-02-04 15:53:23 +00:00
Chris Lattner
bd3ad751f0
Eliminate ModuleAnalyzer. It's old code that is not going to be used in the near future
...
llvm-svn: 1679
2002-02-04 06:47:17 +00:00
Chris Lattner
47b65a1025
Cut down number of times libraries are included to link a little bit faster
...
llvm-svn: 1678
2002-02-04 06:43:56 +00:00
Chris Lattner
5216cc55f7
* 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
llvm-svn: 1677
2002-02-04 05:59:25 +00:00
Chris Lattner
c797387363
Add code that used to be inline in MachineSchedInfo.h
...
llvm-svn: 1676
2002-02-04 05:56:30 +00:00
Chris Lattner
49562d8442
Add #includes neccesary since they were removed from .h files
...
llvm-svn: 1675
2002-02-04 05:56:09 +00:00
Chris Lattner
a8171dd554
Move instrIsFeasible from InstrScheduling.h
...
llvm-svn: 1674
2002-02-04 05:55:42 +00:00
Chris Lattner
b3c64a73ad
* 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/
llvm-svn: 1673
2002-02-04 05:55:10 +00:00