Chris Lattner 
							
						 
					 
					
						
						
							
						
						bec6a9ea12 
					 
					
						
						
							
							When a virtual register is folded into an instruction, keep track of whether  
						
						... 
						
						
						
						it was a use, def, or both.  This allows us to be less pessimistic in our
analysis of them.  In practice, this doesn't make a big difference, but it
doesn't hurt either.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16632  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-10-01 23:15:36 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						c736b3a37a 
					 
					
						
						
							
							Document this class a bit :-)  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16626  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-10-01 00:35:07 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7f690e6258 
					 
					
						
						
							
							Use longer and more explicit names for instance vars (particularly important  
						
						... 
						
						
						
						data structures).  Fix the print method to send to the right ostream, not
always cerr.  Delete typedefs that are only used once.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16606  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-09-30 02:15:18 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						8c4d88d369 
					 
					
						
						
							
							Reindent code, improve comments, move huge nested methods out of classes,  
						
						... 
						
						
						
						prune #includes, add print/dump methods, etc.  No functionality changes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16604  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-09-30 01:54:45 +00:00 
						 
				 
			
				
					
						
							
							
								Reid Spencer 
							
						 
					 
					
						
						
							
						
						551ccae044 
					 
					
						
						
							
							Changes For Bug 352  
						
						... 
						
						
						
						Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@16137  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-09-01 22:55:40 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						a39fc0efcf 
					 
					
						
						
							
							Add function to clear all virtual->physical mappings but not assigned  
						
						... 
						
						
						
						stack slots. This is in preparation for the iterative linear scan.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15032  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-07-20 13:28:17 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						38af59a43c 
					 
					
						
						
							
							Add method to assign stack slot to virtual register without creating a  
						
						... 
						
						
						
						new one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13895  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-05-29 20:38:05 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						f174cc303b 
					 
					
						
						
							
							Add grow() member that grows the maps when the number of virtual  
						
						... 
						
						
						
						registers in the function has changed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13893  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-05-29 19:03:29 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						dd420e060a 
					 
					
						
						
							
							Add a spiller option to llc. A simple spiller will come soon. When we get CFG in the machine code represenation a global spiller will also be possible. Also document the linear scan register allocator but mark it as experimental for now.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12062  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-01 23:18:15 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						5f37502bfb 
					 
					
						
						
							
							Add the long awaited memory operand folding support for linear scan  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@12058  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-03-01 20:05:10 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						fc54e83cea 
					 
					
						
						
							
							Rename member function to be consistent with the rest.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11898  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-27 06:11:15 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						4d0d864be3 
					 
					
						
						
							
							Add DenseMap template and actually use it for for mapping virtual regs  
						
						... 
						
						
						
						to objects.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11840  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-25 21:55:45 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						0d6c5b6489 
					 
					
						
						
							
							Move machine code rewriter and spiller outside the register  
						
						... 
						
						
						
						allocator.
The implementation is completely rewritten and now employs several
optimizations not exercised before. For example for 164.gzip we have
997 loads and 699 stores vs the 1221 loads and 880 stores we have
before.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11798  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-24 08:58:30 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						ec8b8bb9ab 
					 
					
						
						
							
							Add predicates for checking if a virtual register has a physical  
						
						... 
						
						
						
						register mapping or a stack slot mapping.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11795  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-24 06:30:36 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						e8124b9ddb 
					 
					
						
						
							
							Make enum private as it is an implementation detail.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11782  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-23 23:49:40 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						797428719f 
					 
					
						
						
							
							Remove '4Virt' from member function names as it is obvious.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11781  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-23 23:47:10 +00:00 
						 
				 
			
				
					
						
							
							
								Alkis Evlogimenos 
							
						 
					 
					
						
						
							
						
						34d9bc9f16 
					 
					
						
						
							
							Refactor VirtRegMap out of RegAllocLinearScan as the first part of bug  
						
						... 
						
						
						
						251 (providing a generic machine code rewriter/spiller).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11780  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2004-02-23 23:08:11 +00:00