Chris Lattner [Tue, 19 Feb 2002 18:50:09 +0000 (18:50 +0000)]
Keep track of memory allocated by alloca so that it is freed appropriately
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1776
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 18 Feb 2002 19:46:09 +0000 (19:46 +0000)]
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1775
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 18 Feb 2002 19:06:25 +0000 (19:06 +0000)]
Implement exp function
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1774
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 18 Feb 2002 19:05:15 +0000 (19:05 +0000)]
Handle more cases in the linker
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1771
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 17 Feb 2002 06:42:02 +0000 (06:42 +0000)]
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1768
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 14 Feb 2002 22:21:40 +0000 (22:21 +0000)]
Bug fix for test/Regression/Other/2002-02-14-LevelRaiseBadAssert.ll
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1767
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 14 Feb 2002 22:20:54 +0000 (22:20 +0000)]
Checking regression test for bugfix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1766
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 14 Feb 2002 19:44:09 +0000 (19:44 +0000)]
Implement conversion of method pointer parameter in Call instruction
to clean up MST benchmark.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1763
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 14 Feb 2002 18:55:22 +0000 (18:55 +0000)]
* Check in fix for: llvm/test/Regression/Other/2002-02-14-LevelRaiseInstDelete.ll
* Minor reformatting.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1760
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 14 Feb 2002 18:52:18 +0000 (18:52 +0000)]
New testcase for bug in levelraise
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1759
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 14 Feb 2002 05:41:15 +0000 (05:41 +0000)]
New testcase for fixed GCC bug
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1755
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Thu, 14 Feb 2002 00:18:44 +0000 (00:18 +0000)]
NEw testcase for bugfix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1753
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Feb 2002 20:35:17 +0000 (20:35 +0000)]
Checking testcase for reload problem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1752
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 13 Feb 2002 20:25:16 +0000 (20:25 +0000)]
New testcase for fixed bug
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1751
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 22:39:50 +0000 (22:39 +0000)]
* Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into
llvm/Support/CFG.h
* Make pred & succ iterators for intervals global functions
* Add #includes that are now neccesary because BasicBlock.h doesn't include
InstrTypes.h anymore
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1750
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 22:35:32 +0000 (22:35 +0000)]
* Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into
llvm/Support/CFG.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1749
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 22:35:27 +0000 (22:35 +0000)]
* Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into
llvm/Support/CFG.h
* Make pred & succ iterators for intervals global functions
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1748
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 22:35:06 +0000 (22:35 +0000)]
Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into
llvm/Support/CFG.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1747
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 21:07:25 +0000 (21:07 +0000)]
Method.h no longer includes BasicBlock.h
Method::inst_* is now in llvm/Support/InstIterator.h
GraphTraits specializations for BasicBlock and Methods are now in llvm/Support/CFG.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1746
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 21:04:35 +0000 (21:04 +0000)]
Method.h no longer includes BasicBlock.h
Method::inst_* is now in llvm/Support/InstIterator.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1745
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 21:02:53 +0000 (21:02 +0000)]
* Move BasicBlock and Method graph stuff to new "llvm/Support/CFG.h" file
* Move Method::inst_* to new "llvm/Support/InstIterator.h" file
* inst_iterator no longer permits resync'ing
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1744
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 21:02:38 +0000 (21:02 +0000)]
* Move BasicBlock and Method graph stuff to new "llvm/Support/CFG.h" file
* Move Method::inst_* to new "llvm/Support/InstIterator.h" file
* Method.h no longer #includes BasicBlock.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1743
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 20:19:06 +0000 (20:19 +0000)]
Add neccesary #include
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1742
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 18:27:41 +0000 (18:27 +0000)]
I forgot to provide dominance frontier information. Now it's available.
Also add more comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1741
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 17:17:33 +0000 (17:17 +0000)]
Enable register promotion pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1740
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 17:16:22 +0000 (17:16 +0000)]
Initial checkin of new memory -> register promotion pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1739
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 15:47:23 +0000 (15:47 +0000)]
Add new abort-on-exceptions flag
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1737
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 15:39:38 +0000 (15:39 +0000)]
Add comments
Add rules to compile a program with LLC to machine code and an executable
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1735
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 12 Feb 2002 15:21:57 +0000 (15:21 +0000)]
test/Features should not contain whole programs
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1734
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 11 Feb 2002 23:44:06 +0000 (23:44 +0000)]
New testcase for bug in -raise pass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1733
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 11 Feb 2002 23:32:43 +0000 (23:32 +0000)]
Allow multiline RUN:'s
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1732
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 11 Feb 2002 23:22:56 +0000 (23:22 +0000)]
Add testcase for sparc backend
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1731
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Mon, 11 Feb 2002 22:50:17 +0000 (22:50 +0000)]
Added command to build SPARC executable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1730
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Mon, 11 Feb 2002 22:48:18 +0000 (22:48 +0000)]
Simple fibonacci test.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1729
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 11 Feb 2002 22:35:46 +0000 (22:35 +0000)]
Write llvm bytecode to output .s file as last step of LLC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1728
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Mon, 11 Feb 2002 20:59:26 +0000 (20:59 +0000)]
Shell script to simplify running cvs and viewing the output.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1727
91177308-0d34-0410-b5e6-
96231b3b80d8
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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