Chris Lattner 
							
						 
					 
					
						
						
							
						
						620c93cca1 
					 
					
						
						
							
							fix PHI node emission for basic blocks that have select_cc's in them on ppc32  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23113  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-27 00:58:02 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						025c39bf36 
					 
					
						
						
							
							Call the InsertAtEndOfBasicBlock hook if the usesCustomDAGSchedInserter  
						
						... 
						
						
						
						flag is set on an instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23098  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-26 20:54:47 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						5839bf2b3b 
					 
					
						
						
							
							Change ConstantPoolSDNode to actually hold the Constant itself instead of  
						
						... 
						
						
						
						putting it into the constant pool.  This allows the isel machinery to
create constants that it will end up deciding are not needed, without them
ending up in the resultant function constant pool.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23081  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-26 17:15:30 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						376d54f9b6 
					 
					
						
						
							
							Add support for flag operands  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23050  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-25 17:48:54 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						14b392af1d 
					 
					
						
						
							
							Add support for external symbols, and support for variable arity instructions  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@23022  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-24 22:02:41 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						23553cfb4a 
					 
					
						
						
							
							Add a fast-path for register values.  Add support for constant pool entries,  
						
						... 
						
						
						
						allowing us to compile this:
float %test2(float* %P) {
        %Q = load float* %P
        %R = add float %Q, 10.1
        ret float %R
}
to this:
_test2:
        lfs r2, 0(r3)
        lis r3, ha16(.CPI_test2_0)
        lfs r3, lo16(.CPI_test2_0)(r3)
        fadds f1, r2, r3
        blr
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22962  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-22 01:04:32 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						81e72b13d7 
					 
					
						
						
							
							Add support for frame index nodes  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22956  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-21 19:56:04 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						f85ab15acf 
					 
					
						
						
							
							Add support for basic blocks, fix a bug in result # computation  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22948  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-21 18:49:29 +00:00 
						 
				 
			
				
					
						
							
							
								Chris Lattner 
							
						 
					 
					
						
						
							
						
						fe0c2c8721 
					 
					
						
						
							
							fix bogus warning  
						
						... 
						
						
						
						git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22943  91177308-0d34-0410-b5e6-96231b3b80d8 
						
						
					 
					
						2005-08-20 18:07:27 +00:00 
						 
				 
			
				
					
						
							
							
								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