8e01c0b70e 
								
							 
						 
						
							
							
								
								Big bug fix: getUsableUniRegAtMI needed to return values in arguments  
							
							... 
							
							
							
							but did not pass the arguments by reference!
llvm-svn: 1906 
							
						 
						
							2002-03-18 03:37:19 +00:00  
				
					
						
							
							
								 
						
							
								60a6591d83 
								
							 
						 
						
							
							
								
								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
llvm-svn: 1746 
							
						 
						
							2002-02-12 21:07:25 +00:00  
				
					
						
							
							
								 
						
							
								ea13e0afa0 
								
							 
						 
						
							
							
								
								Convert operand iterator over to work like an STL iterator  
							
							... 
							
							
							
							llvm-svn: 1720 
							
						 
						
							2002-02-05 06:02:59 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								d30f989cda 
								
							 
						 
						
							
							
								
								* Code Cleanups  
							
							... 
							
							
							
							* Removal dependencies on Type.h & remove uses of getTypeID()
llvm-svn: 1718 
							
						 
						
							2002-02-05 03:52:29 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								3da53ad636 
								
							 
						 
						
							
							
								
								* Add a #include not indirectly included any more  
							
							... 
							
							
							
							llvm-svn: 1707 
							
						 
						
							2002-02-05 00:35:14 +00:00  
				
					
						
							
							
								 
						
							
								aa7a151874 
								
							 
						 
						
							
							
								
								* RegisterAllocation _uses_ LiveVar analysis, instead of creating it's own copy  
							
							... 
							
							
							
							llvm-svn: 1701 
							
						 
						
							2002-02-04 20:02:38 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								49562d8442 
								
							 
						 
						
							
							
								
								Add #includes neccesary since they were removed from .h files  
							
							... 
							
							
							
							llvm-svn: 1675 
							
						 
						
							2002-02-04 05:56:09 +00:00  
				
					
						
							
							
								 
						
							
								36aa542ef0 
								
							 
						 
						
							
							
								
								Split RegisterAllocation stuff OUT of Sparc.cpp into a well defined pass  
							
							... 
							
							
							
							that has a very minimal interface (like it should have).
llvm-svn: 1667 
							
						 
						
							2002-02-04 00:33:08 +00:00  
				
					
						
							
							
								 
						
							
								abafc3bc70 
								
							 
						 
						
							
							
								
								Lots of code cleanups, no functional changes  
							
							... 
							
							
							
							llvm-svn: 1650 
							
						 
						
							2002-02-03 07:46:34 +00:00  
				
					
						
							
							
								 
						
							
								73da1cea60 
								
							 
						 
						
							
							
								
								Oops lost a parenthesis somehow  :(  
							
							... 
							
							
							
							llvm-svn: 1504 
							
						 
						
							2002-01-21 01:33:12 +00:00  
				
					
						
							
							
								 
						
							
								7f74a56e24 
								
							 
						 
						
							
							
								
								Changes to build successfully with GCC 3.02  
							
							... 
							
							
							
							llvm-svn: 1503 
							
						 
						
							2002-01-20 22:54:45 +00:00  
				
					
						
							
							
								 
						
							
								a42a7e78b6 
								
							 
						 
						
							
							
								
								PhyRegAlloc.cpp: Added temp area resetting before every call  
							
							... 
							
							
							
							llvm-svn: 1499 
							
						 
						
							2002-01-07 21:09:06 +00:00  
				
					
						
							
							
								 
						
							
								8c2d8256a9 
								
							 
						 
						
							
							
								
								Added destructors and comments.  
							
							... 
							
							
							
							Added correct spill candidate selection logic.
llvm-svn: 1493 
							
						 
						
							2002-01-07 19:19:18 +00:00  
				
					
						
							
							
								 
						
							
								2413b160ec 
								
							 
						 
						
							
							
								
								Renamed inst_const_iterator -> const_inst_iterator  
							
							... 
							
							
							
							Renamed op_const_iterator   -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()
llvm-svn: 1408 
							
						 
						
							2001-12-04 00:03:30 +00:00  
				
					
						
							
							
								 
						
							
								7dfa1650a2 
								
							 
						 
						
							
							
								
								Commented some popTempArg.. since it leads to a bug  
							
							... 
							
							
							
							llvm-svn: 1326 
							
						 
						
							2001-11-15 22:02:06 +00:00  
				
					
						
							
							
								 
						
							
								9066899a78 
								
							 
						 
						
							
							
								
								Fixed a bug in setReLRegsUsedByMI  
							
							... 
							
							
							
							llvm-svn: 1323 
							
						 
						
							2001-11-15 20:23:19 +00:00  
				
					
						
							
							
								 
						
							
								a514745a96 
								
							 
						 
						
							
							
								
								fixed setUsedRegAtMI  
							
							... 
							
							
							
							llvm-svn: 1317 
							
						 
						
							2001-11-15 15:00:53 +00:00  
				
					
						
							
							
								 
						
							
								f1acecccb6 
								
							 
						 
						
							
							
								
								Added interference for args in pseudo instructions  
							
							... 
							
							
							
							llvm-svn: 1300 
							
						 
						
							2001-11-14 15:33:58 +00:00  
				
					
						
							
							
								 
						
							
								33c400f6a7 
								
							 
						 
						
							
							
								
								commented out lines printing code after scheduling  
							
							... 
							
							
							
							llvm-svn: 1295 
							
						 
						
							2001-11-13 23:12:53 +00:00  
				
					
						
							
							
								 
						
							
								36f13d1c2f 
								
							 
						 
						
							
							
								
								Fixed a bug concering LR spilling. Earlier, added spilled code was not inserted  
							
							... 
							
							
							
							into the instruction stream correctly.
llvm-svn: 1294 
							
						 
						
							2001-11-13 23:09:30 +00:00  
				
					
						
							
							
								 
						
							
								dafc8b909e 
								
							 
						 
						
							
							
								
								Do the same for allocating spills to get their alignment right too.  
							
							... 
							
							
							
							llvm-svn: 1285 
							
						 
						
							2001-11-12 23:40:22 +00:00  
				
					
						
							
							
								 
						
							
								6e9422e14c 
								
							 
						 
						
							
							
								
								When allocating space on stack for writing a register,  
							
							... 
							
							
							
							use the size of the register, not the size of the Value type,
to get the right alignment.
llvm-svn: 1284 
							
						 
						
							2001-11-12 23:26:35 +00:00  
				
					
						
							
							
								 
						
							
								d1d5e97431 
								
							 
						 
						
							
							
								
								Changed code to ignore Phi Nodes in PhyRegAlloc  
							
							... 
							
							
							
							llvm-svn: 1253 
							
						 
						
							2001-11-10 21:21:36 +00:00  
				
					
						
							
							
								 
						
							
								d499a26116 
								
							 
						 
						
							
							
								
								No major change  
							
							... 
							
							
							
							llvm-svn: 1235 
							
						 
						
							2001-11-09 23:49:42 +00:00  
				
					
						
							
							
								 
						
							
								dc709780aa 
								
							 
						 
						
							
							
								
								corrected insertCode4Spilled ...  bug.  
							
							... 
							
							
							
							llvm-svn: 1212 
							
						 
						
							2001-11-08 19:11:30 +00:00  
				
					
						
							
							
								 
						
							
								19a5165c29 
								
							 
						 
						
							
							
								
								Uncommented LR spill code insertion  
							
							... 
							
							
							
							llvm-svn: 1207 
							
						 
						
							2001-11-08 16:43:25 +00:00  
				
					
						
							
							
								 
						
							
								d9f8598104 
								
							 
						 
						
							
							
								
								Removed class RegStackOffsets and used class MachineCodeForMethod  
							
							... 
							
							
							
							directly to manage stack frame.
llvm-svn: 1186 
							
						 
						
							2001-11-08 04:48:50 +00:00  
				
					
						
							
							
								 
						
							
								51fc1c2d72 
								
							 
						 
						
							
							
								
								Added support for correct spilling of %ccr  
							
							... 
							
							
							
							llvm-svn: 1112 
							
						 
						
							2001-11-03 20:41:22 +00:00  
				
					
						
							
							
								 
						
							
								b7a397253f 
								
							 
						 
						
							
							
								
								Arranged stack frame - needs furhter organization  
							
							... 
							
							
							
							Moved InsertCallerSaveInstr to the SparcRegInfo.cpp
llvm-svn: 1106 
							
						 
						
							2001-11-03 17:13:27 +00:00  
				
					
						
							
							
								 
						
							
								321ed7be93 
								
							 
						 
						
							
							
								
								Added spill code support; moved insertCallerSaving to SparRegInfo since  
							
							... 
							
							
							
							we need to handle %ccr reg in a special way.
llvm-svn: 990 
							
						 
						
							2001-10-28 18:12:02 +00:00  
				
					
						
							
							
								 
						
							
								c300c6ba58 
								
							 
						 
						
							
							
								
								Added support to move "added instructions" after the delay slot  
							
							... 
							
							
							
							llvm-svn: 967 
							
						 
						
							2001-10-23 21:38:00 +00:00  
				
					
						
							
							
								 
						
							
								901da32e64 
								
							 
						 
						
							
							
								
								Use class MachineCodeForMethod to print machine code.  
							
							... 
							
							
							
							llvm-svn: 948 
							
						 
						
							2001-10-22 13:52:03 +00:00  
				
					
						
							
							
								 
						
							
								24729a34ce 
								
							 
						 
						
							
							
								
								Added support for both call/jmpl instructions  
							
							... 
							
							
							
							llvm-svn: 930 
							
						 
						
							2001-10-21 16:43:41 +00:00  
				
					
						
							
							
								 
						
							
								01c55ba00c 
								
							 
						 
						
							
							
								
								Added code to PhyRegAlloc to mark unusable suggested regs  
							
							... 
							
							
							
							Added initialization to AdjList to IGNode constructor - major bug fix
llvm-svn: 920 
							
						 
						
							2001-10-19 21:39:31 +00:00  
				
					
						
							
							
								 
						
							
								09d7a2a496 
								
							 
						 
						
							
							
								
								Corrected call interference bug  
							
							... 
							
							
							
							llvm-svn: 916 
							
						 
						
							2001-10-19 17:21:03 +00:00  
				
					
						
							
							
								 
						
							
								6b1d2691c6 
								
							 
						 
						
							
							
								
								no major change  
							
							... 
							
							
							
							llvm-svn: 914 
							
						 
						
							2001-10-18 23:58:08 +00:00  
				
					
						
							
							
								 
						
							
								0a2990a7c6 
								
							 
						 
						
							
							
								
								removed some debug messages  
							
							... 
							
							
							
							llvm-svn: 910 
							
						 
						
							2001-10-18 22:36:26 +00:00  
				
					
						
							
							
								 
						
							
								7d23a2bee9 
								
							 
						 
						
							
							
								
								changed debugg message printing - no change to useful code  
							
							... 
							
							
							
							llvm-svn: 850 
							
						 
						
							2001-10-16 16:34:44 +00:00  
				
					
						
							
							
								 
						
							
								3d878424d2 
								
							 
						 
						
							
							
								
								No major change - commented some debug code  
							
							... 
							
							
							
							llvm-svn: 849 
							
						 
						
							2001-10-16 01:33:55 +00:00  
				
					
						
							
							
								 
						
							
								5b8971f418 
								
							 
						 
						
							
							
								
								Added support for caller saving  
							
							... 
							
							
							
							llvm-svn: 847 
							
						 
						
							2001-10-16 01:23:19 +00:00  
				
					
						
							
							
								 
						
							
								f3f1e452ea 
								
							 
						 
						
							
							
								
								Output to cerr rather than cout so that debug info doesn't mess up assembly generation  
							
							... 
							
							
							
							llvm-svn: 840 
							
						 
						
							2001-10-15 18:15:27 +00:00  
				
					
						
							
							
								 
						
							
								2a6cc8300d 
								
							 
						 
						
							
							
								
								updated suggesting/coloring of call & return args & implicit operands.  
							
							... 
							
							
							
							Changed added instr to a deque (from a vector)
llvm-svn: 831 
							
						 
						
							2001-10-15 16:26:38 +00:00  
				
					
						
							
							
								 
						
							
								e3b9faddad 
								
							 
						 
						
							
							
								
								--added suggesting colors; call/ret arg handling  
							
							... 
							
							
							
							llvm-svn: 670 
							
						 
						
							2001-09-30 23:11:59 +00:00