Chris Lattner 
							
						 
					 
					
						
						
							
						
						9b78db7f16 
					 
					
						
						
							
							Add support for global address nodes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22940  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-19 22:38:24 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						7ef330478f 
					 
					
						
						
							
							Implement CopyFromReg, TokenFactor, and fix a bug in CopyToReg.  This allows  
						
						... 
						
						
						
						us to compile stuff like this:
double %test(double %A, double %B, double %C, double %E) {
        %F = mul double %A, %A
        %G = add double %F, %B
        %H = sub double -0.0, %G
        %I = mul double %H, %C
        %J = add double %I, %E
        ret double %J
}
to:
_test:
        fnmadd f0, f1, f1, f2
        fmadd f1, f0, f3, f4
        blr
woot!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22937  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-19 21:43:53 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						0189197608 
					 
					
						
						
							
							Before implementing copyfromreg, we'll implement copytoreg correctly.  
						
						... 
						
						
						
						This gets us this for the previous testcase:
_test:
        lis r2, 0
        ori r3, r2, 65535
        blr
Note that we actually write to r3 (the return reg) correctly now :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22933  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-19 20:50:53 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						4ccd406317 
					 
					
						
						
							
							Now that we have operand info for machine instructions, use it to create  
						
						... 
						
						
						
						temporary registers for things that define a register.  This allows dag->dag
isel to compile this:
int %test() { ret int 65535 }
into:
_test:
        lis r2, 0
        ori r2, r2, 65535
        blr
Next up, getting CopyFromReg to work, allowing arguments and cross-bb values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22932  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-19 20:45:43 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						ca6aa2f70c 
					 
					
						
						
							
							Fix computation of # operands, add a temporary hack for CopyToReg  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22896  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-19 01:01:34 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						068ca15d5e 
					 
					
						
						
							
							add a new -view-sched-dags option to view dags as they are sent to the scheduler.  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22878  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-18 20:11:49 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						2d973e45b8 
					 
					
						
						
							
							Implement the first chunk of a code emitter.  This is sophisticated enough to  
						
						... 
						
						
						
						codegen:
_empty:
.LBB_empty_0:   ;
        blr
but can't do anything more (yet). :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22876  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-18 20:07:59 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						d32b23690d 
					 
					
						
						
							
							new file, obviously just a stub  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22868  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-18 18:45:24 +00:00