Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a10fff51d9 
								
							 
						 
						
							
							
								
								Rename SSARegMap -> MachineRegisterInfo in keeping with the idea  
							
							 
							
							... 
							
							
							
							that "machine" classes are used to represent the current state of
the code being compiled.  Given this expanded name, we can start 
moving other stuff into it.  For now, move the UsedPhysRegs and
LiveIn/LoveOuts vectors from MachineFunction into it.
Update all the clients to match.
This also reduces some needless #includes, such as MachineModuleInfo
from MachineFunction.
llvm-svn: 45467 
							
						 
						
							2007-12-31 04:13:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f3ebc3f3d2 
								
							 
						 
						
							
							
								
								Remove attribution from file headers, per discussion on llvmdev.  
							
							 
							
							... 
							
							
							
							llvm-svn: 45418 
							
						 
						
							2007-12-29 20:36:04 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								a160361c85 
								
							 
						 
						
							
							
								
								Migrate X86 and ARM from using X86ISD::{,I}DIV and ARMISD::MULHILO{U,S} to  
							
							 
							
							... 
							
							
							
							use ISD::{S,U}DIVREM and ISD::{S,U}MUL_HIO. Move the lowering code
associated with these operators into target-independent in LegalizeDAG.cpp
and TargetLowering.cpp.
llvm-svn: 42762 
							
						 
						
							2007-10-08 18:33:35 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								9d41b311fb 
								
							 
						 
						
							
							
								
								Remove clobbersPred. Add an OptionalDefOperand to instructions which have the 's' bit.  
							
							 
							
							... 
							
							
							
							llvm-svn: 38501 
							
						 
						
							2007-07-10 18:08:01 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								7e90b11550 
								
							 
						 
						
							
							
								
								Unfortunately we now require C++ code to isel Bcc, conditional moves, etc.  
							
							 
							
							... 
							
							
							
							llvm-svn: 37896 
							
						 
						
							2007-07-05 07:15:27 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								0f7cbe8370 
								
							 
						 
						
							
							
								
								Add PredicateOperand to all ARM instructions that have the condition field.  
							
							 
							
							... 
							
							
							
							llvm-svn: 37066 
							
						 
						
							2007-05-15 01:29:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1c1082133c 
								
							 
						 
						
							
							
								
								match a reassociated form of fnmul.  This implements CodeGen/ARM/fnmul.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 36660 
							
						 
						
							2007-05-03 00:32:00 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								9bb01c9f4f 
								
							 
						 
						
							
							
								
								Fix naming inconsistencies.  
							
							 
							
							... 
							
							
							
							llvm-svn: 35163 
							
						 
						
							2007-03-19 07:48:02 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								ee2763f76f 
								
							 
						 
						
							
							
								
								Special LDR instructions to load from non-pc-relative constantpools. These are  
							
							 
							
							... 
							
							
							
							rematerializable. Only used for constant generation for now.
llvm-svn: 35162 
							
						 
						
							2007-03-19 07:20:03 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								72a8bcf238 
								
							 
						 
						
							
							
								
								AM2 can match 2^n +/- 1. e.g.  ldr r3, [r2, r2, lsl  #2 ]  
							
							 
							
							... 
							
							
							
							llvm-svn: 35088 
							
						 
						
							2007-03-13 21:05:54 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								62aef236de 
								
							 
						 
						
							
							
								
								Get rid of references to iostream.  
							
							 
							
							... 
							
							
							
							llvm-svn: 34009 
							
						 
						
							2007-02-07 21:18:32 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								a974031ebd 
								
							 
						 
						
							
							
								
								Select add FI, c correctly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33960 
							
						 
						
							2007-02-06 09:11:20 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								650d0672f7 
								
							 
						 
						
							
							
								
								- Store val, [sp, c] must be selected to tSTRsp.  
							
							 
							
							... 
							
							
							
							- If c does not fit in the offset field, materialize sp + c into a register
  using tADDhirr.
llvm-svn: 33944 
							
						 
						
							2007-02-06 00:22:06 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								1cd3c0efb8 
								
							 
						 
						
							
							
								
								Change the operand orders to t_addrmode_s* to make it easier to morph  
							
							 
							
							... 
							
							
							
							instructions that use these address modes to instructions that use
t_addrmode_sp.
llvm-svn: 33651 
							
						 
						
							2007-01-30 02:35:32 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								1526ba50d9 
								
							 
						 
						
							
							
								
								Use PC relative ldr to load from a constantpool in Thumb mode.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33484 
							
						 
						
							2007-01-24 08:53:17 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								8942551dee 
								
							 
						 
						
							
							
								
								Allow [ fi#c, imm ] as ARM load / store addresses.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33474 
							
						 
						
							2007-01-24 02:45:25 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								139edae4a2 
								
							 
						 
						
							
							
								
								Various Thumb mode load / store isel bug fixes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33472 
							
						 
						
							2007-01-24 02:21:22 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								c0b7366cf9 
								
							 
						 
						
							
							
								
								- Reorg Thumb load / store instructions. Combine each rr and ri pair of  
							
							 
							
							... 
							
							
							
							instructions into one (e.g. tLDRrr, tLDRri -> tLDR).
- Thumb ldrsb and ldrsh only have the [reg, reg] address format. If the
  address is not an add, materialize a 0 immediate into a register and use
  it as the offset field.
llvm-svn: 33470 
							
						 
						
							2007-01-23 22:59:13 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								10043e215b 
								
							 
						 
						
							
							
								
								ARM backend contribution from Apple.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33353 
							
						 
						
							2007-01-19 07:51:42 +00:00  
						
					 
				
					
						
							
							
								 
								Lauro Ramos Venancio
							
						 
						
							 
							
							
							
							
								
							
							
								c4235e5521 
								
							 
						 
						
							
							
								
								Build constants using instructions mov/orr or mvn/eor.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33141 
							
						 
						
							2007-01-12 20:35:49 +00:00  
						
					 
				
					
						
							
							
								 
								Lauro Ramos Venancio
							
						 
						
							 
							
							
							
							
								
							
							
								7284073ec2 
								
							 
						 
						
							
							
								
								Expand SELECT (f32/f64) and FCOPYSIGN (f32/f64).  
							
							 
							
							... 
							
							
							
							llvm-svn: 32870 
							
						 
						
							2007-01-04 14:01:38 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								fd68718467 
								
							 
						 
						
							
							
								
								implement missing compares  
							
							 
							
							... 
							
							
							
							patch by Lauro
bug fixed by me
llvm-svn: 32795 
							
						 
						
							2006-12-31 18:52:39 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								e63b6518fa 
								
							 
						 
						
							
							
								
								For PR950:  
							
							 
							
							... 
							
							
							
							Three changes:
1. Convert signed integer types to signless versions.
2. Implement the @sext and @zext parameter attributes. Previously the
   type of an function parameter was used to determine whether it should
   be sign extended or zero extended before the call. This information is
   now communicated via the function type's parameter attributes.
3. The interface to LowerCallTo had to be changed in order to accommodate
   the parameter attribute information. Although it would have been
   convenient to pass in the FunctionType itself, there isn't always one
   present in the caller. Consequently, a signedness indication for the
   result type and for each parameter was provided for in the interface
   to this method. All implementations were changed to make the adjustment
   necessary.
llvm-svn: 32788 
							
						 
						
							2006-12-31 05:55:36 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								64493fb30d 
								
							 
						 
						
							
							
								
								fix comment  
							
							 
							
							... 
							
							
							
							llvm-svn: 32767 
							
						 
						
							2006-12-29 14:28:12 +00:00  
						
					 
				
					
						
							
							
								 
								Lauro Ramos Venancio
							
						 
						
							 
							
							
							
							
								
							
							
								7251e57ff8 
								
							 
						 
						
							
							
								
								Implement SELECT_CC (f32/f64) for ARM.  
							
							 
							
							... 
							
							
							
							llvm-svn: 32762 
							
						 
						
							2006-12-28 13:11:14 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								3b7544e24c 
								
							 
						 
						
							
							
								
								avoid using a constant table when a constant can be used inline  
							
							 
							
							... 
							
							
							
							llvm-svn: 32580 
							
						 
						
							2006-12-14 18:58:37 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								67d1c8ae0e 
								
							 
						 
						
							
							
								
								more general matching of the MVN instruction  
							
							 
							
							... 
							
							
							
							llvm-svn: 32484 
							
						 
						
							2006-12-12 17:10:13 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								470d61d82c 
								
							 
						 
						
							
							
								
								don't use "ordinary" addressing mode 1 when mvn is appropriate  
							
							 
							
							... 
							
							
							
							llvm-svn: 32482 
							
						 
						
							2006-12-12 14:03:29 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								9fa0a26808 
								
							 
						 
						
							
							
								
								use MVN to handle small negative constants  
							
							 
							
							... 
							
							
							
							llvm-svn: 32459 
							
						 
						
							2006-12-12 01:03:11 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								9bfb1e1f29 
								
							 
						 
						
							
							
								
								What should be the last unnecessary <iostream>s in the library.  
							
							 
							
							... 
							
							
							
							llvm-svn: 32333 
							
						 
						
							2006-12-07 22:21:48 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								b5dee63958 
								
							 
						 
						
							
							
								
								expand memmove and memcpy  
							
							 
							
							... 
							
							
							
							llvm-svn: 32226 
							
						 
						
							2006-12-05 17:57:23 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								96fd6447c7 
								
							 
						 
						
							
							
								
								add support for the "r" asm constraint  
							
							 
							
							... 
							
							
							
							patch by Lauro Ramos Venancio
llvm-svn: 32224 
							
						 
						
							2006-12-05 17:37:31 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								5f7ab1b964 
								
							 
						 
						
							
							
								
								implement load effective address similar to the alpha backend  
							
							 
							
							... 
							
							
							
							remove lea_addri and the now unused memri addressing mode
llvm-svn: 31592 
							
						 
						
							2006-11-09 13:58:55 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								6cd0909da7 
								
							 
						 
						
							
							
								
								Match tblegen changes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 31571 
							
						 
						
							2006-11-08 20:34:28 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								708cb60588 
								
							 
						 
						
							
							
								
								initial implementation of addressing mode 2  
							
							 
							
							... 
							
							
							
							TODO: fix lea_addri
llvm-svn: 31552 
							
						 
						
							2006-11-08 17:07:32 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								ac8668d62f 
								
							 
						 
						
							
							
								
								move ARMCondCodeToString to ARMAsmPrinter.cpp  
							
							 
							
							... 
							
							
							
							remove unused variables from lowerCall
llvm-svn: 31378 
							
						 
						
							2006-11-02 15:00:02 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								0d41d19427 
								
							 
						 
						
							
							
								
								All targets expand BR_JT for now.  
							
							 
							
							... 
							
							
							
							llvm-svn: 31294 
							
						 
						
							2006-10-30 08:02:39 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								a23166d6a4 
								
							 
						 
						
							
							
								
								initial support for frame pointers  
							
							 
							
							... 
							
							
							
							llvm-svn: 31197 
							
						 
						
							2006-10-26 13:31:26 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								bd29281e97 
								
							 
						 
						
							
							
								
								expand ISD::VACOPY  
							
							 
							
							... 
							
							
							
							llvm-svn: 31170 
							
						 
						
							2006-10-24 20:15:21 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								cd5f662c7b 
								
							 
						 
						
							
							
								
								expand ISD::MEMSET  
							
							 
							
							... 
							
							
							
							llvm-svn: 31137 
							
						 
						
							2006-10-23 20:08:22 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								e0fc4dfc22 
								
							 
						 
						
							
							
								
								For PR950:  
							
							 
							
							... 
							
							
							
							This patch implements the first increment for the Signless Types feature.
All changes pertain to removing the ConstantSInt and ConstantUInt classes
in favor of just using ConstantInt.
llvm-svn: 31063 
							
						 
						
							2006-10-20 07:07:24 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								3c563c5072 
								
							 
						 
						
							
							
								
								expand SIGN_EXTEND_INREG  
							
							 
							
							... 
							
							
							
							llvm-svn: 31046 
							
						 
						
							2006-10-19 12:06:50 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								b260306625 
								
							 
						 
						
							
							
								
								expand brind so that we don't have to implement jump tables right now  
							
							 
							
							... 
							
							
							
							llvm-svn: 31045 
							
						 
						
							2006-10-19 10:56:43 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								b21e8d2e12 
								
							 
						 
						
							
							
								
								implement CallingConv::Fast as CallingConv::C  
							
							 
							
							... 
							
							
							
							llvm-svn: 31034 
							
						 
						
							2006-10-18 12:03:07 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								ba8f296167 
								
							 
						 
						
							
							
								
								expand ISD::SDIV, ISD::UDIV, ISD::SREM and ISD::UREM  
							
							 
							
							... 
							
							
							
							llvm-svn: 31014 
							
						 
						
							2006-10-17 21:05:33 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								19398ec86e 
								
							 
						 
						
							
							
								
								initial implementation of addressing mode 5  
							
							 
							
							... 
							
							
							
							llvm-svn: 31002 
							
						 
						
							2006-10-17 18:04:53 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								f719c5f43d 
								
							 
						 
						
							
							
								
								expand ISD::SHL_PARTS, ISD::SRA_PARTS and ISD::SRL_PARTS  
							
							 
							
							... 
							
							
							
							llvm-svn: 30987 
							
						 
						
							2006-10-16 21:10:32 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								2b7f635951 
								
							 
						 
						
							
							
								
								expand ISD::BRCOND  
							
							 
							
							... 
							
							
							
							llvm-svn: 30963 
							
						 
						
							2006-10-14 17:59:54 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								4c1baf1528 
								
							 
						 
						
							
							
								
								fix some fp condition codes  
							
							 
							
							... 
							
							
							
							use non trapping comparison instructions
llvm-svn: 30962 
							
						 
						
							2006-10-14 13:42:53 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								ab51cf2e78 
								
							 
						 
						
							
							
								
								Merge ISD::TRUNCSTORE to ISD::STORE. Switch to using StoreSDNode.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30945 
							
						 
						
							2006-10-13 21:14:26 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								79d9807c87 
								
							 
						 
						
							
							
								
								implement calls to functions that return long  
							
							 
							
							... 
							
							
							
							llvm-svn: 30929 
							
						 
						
							2006-10-13 16:47:22 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								3874a168d0 
								
							 
						 
						
							
							
								
								implement unordered floating point compares  
							
							 
							
							... 
							
							
							
							llvm-svn: 30928 
							
						 
						
							2006-10-13 13:14:59 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								8429e1f6c3 
								
							 
						 
						
							
							
								
								uint <-> double conversion  
							
							 
							
							... 
							
							
							
							llvm-svn: 30862 
							
						 
						
							2006-10-10 20:38:57 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								57d109fb08 
								
							 
						 
						
							
							
								
								add double <-> int conversion  
							
							 
							
							... 
							
							
							
							llvm-svn: 30858 
							
						 
						
							2006-10-10 18:55:14 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								d1a4ea41c9 
								
							 
						 
						
							
							
								
								compare doubles  
							
							 
							
							... 
							
							
							
							llvm-svn: 30856 
							
						 
						
							2006-10-10 16:33:47 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								d15c892433 
								
							 
						 
						
							
							
								
								initial support for fp compares. Unordered compares not implemented yet  
							
							 
							
							... 
							
							
							
							llvm-svn: 30854 
							
						 
						
							2006-10-10 12:56:00 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								e71fe34d75 
								
							 
						 
						
							
							
								
								Reflects ISD::LOAD / ISD::LOADX / LoadSDNode changes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30844 
							
						 
						
							2006-10-09 20:57:25 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								e4c3276afc 
								
							 
						 
						
							
							
								
								expand ISD::SELECT  
							
							 
							
							... 
							
							
							
							llvm-svn: 30829 
							
						 
						
							2006-10-09 16:28:33 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								41730922bb 
								
							 
						 
						
							
							
								
								expand ISD::EXTLOAD  
							
							 
							
							... 
							
							
							
							llvm-svn: 30827 
							
						 
						
							2006-10-09 14:13:40 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								b50938866b 
								
							 
						 
						
							
							
								
								implement FUITOS and FUITOD  
							
							 
							
							... 
							
							
							
							llvm-svn: 30803 
							
						 
						
							2006-10-07 14:24:52 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								aa2a12f1a2 
								
							 
						 
						
							
							
								
								add optional input flag to FMRRD  
							
							 
							
							... 
							
							
							
							llvm-svn: 30774 
							
						 
						
							2006-10-06 20:33:26 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								671f25281d 
								
							 
						 
						
							
							
								
								add support for calling functions that return double  
							
							 
							
							... 
							
							
							
							llvm-svn: 30771 
							
						 
						
							2006-10-06 19:10:05 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								ef01656ea4 
								
							 
						 
						
							
							
								
								fix some bugs affecting functions with no arguments  
							
							 
							
							... 
							
							
							
							llvm-svn: 30767 
							
						 
						
							2006-10-06 17:26:30 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								5fe7909e18 
								
							 
						 
						
							
							
								
								add support for calling functions that have double arguments  
							
							 
							
							... 
							
							
							
							llvm-svn: 30765 
							
						 
						
							2006-10-06 12:50:22 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								df9ac47e5e 
								
							 
						 
						
							
							
								
								Make use of getStore().  
							
							 
							
							... 
							
							
							
							llvm-svn: 30759 
							
						 
						
							2006-10-05 23:01:46 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								decfeca52d 
								
							 
						 
						
							
							
								
								use a const ref for passing the vector to ArgumentLayout  
							
							 
							
							... 
							
							
							
							llvm-svn: 30756 
							
						 
						
							2006-10-05 17:46:48 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								e04df41ca2 
								
							 
						 
						
							
							
								
								implement a ArgumentLayout class to factor code common to LowerFORMAL_ARGUMENTS and LowerCALL  
							
							 
							
							... 
							
							
							
							implement FMDRR
add support for f64 function arguments
llvm-svn: 30754 
							
						 
						
							2006-10-05 16:48:49 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								68d238801c 
								
							 
						 
						
							
							
								
								Implement floating point constants  
							
							 
							
							... 
							
							
							
							llvm-svn: 30704 
							
						 
						
							2006-10-03 17:27:58 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								d55c0a41df 
								
							 
						 
						
							
							
								
								fix the names of the 64bit fp register  
							
							 
							
							... 
							
							
							
							initial support for returning 64bit floating point numbers
llvm-svn: 30692 
							
						 
						
							2006-10-02 19:30:56 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								53f78be49e 
								
							 
						 
						
							
							
								
								add floating point registers  
							
							 
							
							... 
							
							
							
							implement SINT_TO_FP
llvm-svn: 30673 
							
						 
						
							2006-09-29 21:20:16 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								7b700e517a 
								
							 
						 
						
							
							
								
								more condition codes  
							
							 
							
							... 
							
							
							
							llvm-svn: 30567 
							
						 
						
							2006-09-21 13:06:26 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								0c71a5adc8 
								
							 
						 
						
							
							
								
								if a constant can't be an immediate, add it to the constant pool  
							
							 
							
							... 
							
							
							
							llvm-svn: 30566 
							
						 
						
							2006-09-21 11:29:52 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								3130a756ef 
								
							 
						 
						
							
							
								
								add shifts to addressing mode 1  
							
							 
							
							... 
							
							
							
							llvm-svn: 30291 
							
						 
						
							2006-09-13 12:09:43 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								9a083a4121 
								
							 
						 
						
							
							
								
								Reflects MachineConstantPoolEntry changes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 30279 
							
						 
						
							2006-09-12 21:04:05 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								bccf9c2f1b 
								
							 
						 
						
							
							
								
								add the correct fallback for ARMDAGToDAGISel::SelectAddrMode1  
							
							 
							
							... 
							
							
							
							llvm-svn: 30261 
							
						 
						
							2006-09-11 19:23:32 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								e45a79a9e2 
								
							 
						 
						
							
							
								
								partial implementation of the ARM Addressing Mode 1  
							
							 
							
							... 
							
							
							
							llvm-svn: 30252 
							
						 
						
							2006-09-11 17:25:40 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								8386105f3f 
								
							 
						 
						
							
							
								
								add support for returning 64bit values  
							
							 
							
							... 
							
							
							
							llvm-svn: 30103 
							
						 
						
							2006-09-04 19:05:01 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								5328ba96e1 
								
							 
						 
						
							
							
								
								add the SETULT condition code  
							
							 
							
							... 
							
							
							
							llvm-svn: 30067 
							
						 
						
							2006-09-03 13:19:16 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								c585b6919b 
								
							 
						 
						
							
							
								
								add more condition codes  
							
							 
							
							... 
							
							
							
							llvm-svn: 30056 
							
						 
						
							2006-09-02 20:24:25 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								61413a3d72 
								
							 
						 
						
							
							
								
								Select() no longer require Result operand by reference.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29898 
							
						 
						
							2006-08-26 05:34:46 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								98dc23fd1f 
								
							 
						 
						
							
							
								
								use @ for comments  
							
							 
							
							... 
							
							
							
							store LR in an arbitrary stack slot
add support for writing varargs functions
llvm-svn: 29876 
							
						 
						
							2006-08-25 17:55:16 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								29e4875f57 
								
							 
						 
						
							
							
								
								add the "eq" condition code  
							
							 
							
							... 
							
							
							
							implement a movcond instruction
llvm-svn: 29857 
							
						 
						
							2006-08-24 17:19:08 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								fe03fe9bf4 
								
							 
						 
						
							
							
								
								create a generic bcond instruction that has a conditional code argument  
							
							 
							
							... 
							
							
							
							llvm-svn: 29856 
							
						 
						
							2006-08-24 16:13:15 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								e08b9853cc 
								
							 
						 
						
							
							
								
								initial support for branches  
							
							 
							
							... 
							
							
							
							llvm-svn: 29854 
							
						 
						
							2006-08-24 13:45:55 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								d0dee77718 
								
							 
						 
						
							
							
								
								initial support for select  
							
							 
							
							... 
							
							
							
							llvm-svn: 29802 
							
						 
						
							2006-08-21 22:00:32 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								8a675a5d09 
								
							 
						 
						
							
							
								
								call computeRegisterProperties  
							
							 
							
							... 
							
							
							
							llvm-svn: 29780 
							
						 
						
							2006-08-20 01:49:49 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								c3ed77e1b9 
								
							 
						 
						
							
							
								
								add a "load effective address"  
							
							 
							
							... 
							
							
							
							llvm-svn: 29748 
							
						 
						
							2006-08-17 17:09:40 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								bf8e751488 
								
							 
						 
						
							
							
								
								Declare the callee saved regs  
							
							 
							
							... 
							
							
							
							Remove the hard coded store and load of the link register
Implement ARMFrameInfo
llvm-svn: 29727 
							
						 
						
							2006-08-16 14:43:33 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								157971b04a 
								
							 
						 
						
							
							
								
								select code like  
							
							 
							
							... 
							
							
							
							ldr rx, [ry, #offset]
llvm-svn: 29664 
							
						 
						
							2006-08-14 19:01:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ed728e8dc9 
								
							 
						 
						
							
							
								
								Eliminate use of getNode that takes a vector.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29614 
							
						 
						
							2006-08-11 17:38:39 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c62914880f 
								
							 
						 
						
							
							
								
								elimiante use of getNode that takes vector of operands.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29612 
							
						 
						
							2006-08-11 17:22:35 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								bd1c5a8fb8 
								
							 
						 
						
							
							
								
								Match tablegen changes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29604 
							
						 
						
							2006-08-11 09:08:15 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								f5ce475540 
								
							 
						 
						
							
							
								
								fix the spill code  
							
							 
							
							... 
							
							
							
							llvm-svn: 29583 
							
						 
						
							2006-08-09 16:41:12 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								39083e7836 
								
							 
						 
						
							
							
								
								initial support for variable number of arguments  
							
							 
							
							... 
							
							
							
							llvm-svn: 29567 
							
						 
						
							2006-08-08 13:02:29 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								b9d34bd098 
								
							 
						 
						
							
							
								
								Match tablegen isel changes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29549 
							
						 
						
							2006-08-07 22:28:20 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								2bcb8c0f05 
								
							 
						 
						
							
							
								
								use a 'register pressure reducing' scheduler  
							
							 
							
							... 
							
							
							
							make sure only one move is used in a hello world
llvm-svn: 29520 
							
						 
						
							2006-08-04 12:48:42 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								e19f6fde2d 
								
							 
						 
						
							
							
								
								Bug fix: always generate a RET_FLAG in LowerRET  
							
							 
							
							... 
							
							
							
							fixes ret_null.ll and call.ll
llvm-svn: 29519 
							
						 
						
							2006-08-03 22:50:11 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								a94b9e33af 
								
							 
						 
						
							
							
								
								add and use ARMISD::RET_FLAG  
							
							 
							
							... 
							
							
							
							llvm-svn: 29499 
							
						 
						
							2006-08-03 17:02:20 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								95035cf001 
								
							 
						 
						
							
							
								
								implement LowerConstantPool and LowerGlobalAddress  
							
							 
							
							... 
							
							
							
							llvm-svn: 29433 
							
						 
						
							2006-08-01 12:58:43 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								b572401bea 
								
							 
						 
						
							
							
								
								Remove InFlightSet hack. No longer needed.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29373 
							
						 
						
							2006-07-28 00:47:19 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								8902fd702b 
								
							 
						 
						
							
							
								
								implement function calling of functions with up to 4 arguments  
							
							 
							
							... 
							
							
							
							llvm-svn: 29274 
							
						 
						
							2006-07-25 20:17:20 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								75269be065 
								
							 
						 
						
							
							
								
								skeleton of a lowerCall implementation for ARM  
							
							 
							
							... 
							
							
							
							llvm-svn: 29159 
							
						 
						
							2006-07-16 01:02:57 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								185c5c2bdf 
								
							 
						 
						
							
							
								
								add the memri memory operand  
							
							 
							
							... 
							
							
							
							this makes it possible for ldr instructions with non-zero immediate
llvm-svn: 29103 
							
						 
						
							2006-07-11 11:36:48 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								e40a7e2aa2 
								
							 
						 
						
							
							
								
								create the raddr addressing mode that matches any register and the frame index  
							
							 
							
							... 
							
							
							
							use raddr for the ldr instruction. This removes a dummy mov from the assembly output
remove SelectFrameIndex
remove isLoadFromStackSlot
remove isStoreToStackSlot
llvm-svn: 29079 
							
						 
						
							2006-07-10 01:41:35 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								f6f5aff038 
								
							 
						 
						
							
							
								
								handle the "mov reg1, reg2" case in isMoveInstr  
							
							 
							
							... 
							
							
							
							llvm-svn: 28945 
							
						 
						
							2006-06-27 21:52:45 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								4e76015e0b 
								
							 
						 
						
							
							
								
								lower more then 4 formal arguments. The offset is currently hard coded.  
							
							 
							
							... 
							
							
							
							implement SelectFrameIndex
llvm-svn: 28751 
							
						 
						
							2006-06-12 12:28:08 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								6306becc49 
								
							 
						 
						
							
							
								
								add R0 to liveout  
							
							 
							
							... 
							
							
							
							expand "ret null" (implements test/Regression/CodeGen/ARM/ret_void.ll)
note that a Flag link is missing between the copy and the branch
llvm-svn: 28691 
							
						 
						
							2006-06-05 22:26:14 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								5bc60da112 
								
							 
						 
						
							
							
								
								Expand ret into "CopyToReg;BRIND"  
							
							 
							
							... 
							
							
							
							llvm-svn: 28559 
							
						 
						
							2006-05-30 17:33:19 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								a3add0fea8 
								
							 
						 
						
							
							
								
								Change RET node to include signness information of the return values. i.e.  
							
							 
							
							... 
							
							
							
							RET chain, value1, sign1, value2, sign2, ...
llvm-svn: 28510 
							
						 
						
							2006-05-26 23:10:12 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								4781610886 
								
							 
						 
						
							
							
								
								port the ARM backend to use ISD::CALL instead of LowerCallTo  
							
							 
							
							... 
							
							
							
							llvm-svn: 28469 
							
						 
						
							2006-05-25 11:00:18 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								4af59dac0b 
								
							 
						 
						
							
							
								
								Assert if InflightSet is not cleared after instruction selecting a BB.  
							
							 
							
							... 
							
							
							
							llvm-svn: 28459 
							
						 
						
							2006-05-25 00:24:28 +00:00  
						
					 
				
					
						
							
							
								 
								Evan Cheng
							
						 
						
							 
							
							
							
							
								
							
							
								1a8e74d113 
								
							 
						 
						
							
							
								
								Clear HandleMap and ReplaceMap after instruction selection. Or it may cause  
							
							 
							
							... 
							
							
							
							non-deterministic behavior.
llvm-svn: 28454 
							
						 
						
							2006-05-24 20:46:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								aa2372562e 
								
							 
						 
						
							
							
								
								Patches to make the LLVM sources more -pedantic clean.  Patch provided  
							
							 
							
							... 
							
							
							
							by Anton Korobeynikov!  This is a step towards closing PR786.
llvm-svn: 28447 
							
						 
						
							2006-05-24 17:04:05 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								27f8bdc7e5 
								
							 
						 
						
							
							
								
								implement minimal versions of  
							
							 
							
							... 
							
							
							
							ARMAsmPrinter::runOnMachineFunction
LowerFORMAL_ARGUMENTS
ARMInstrInfo::isMoveInstr
llvm-svn: 28431 
							
						 
						
							2006-05-23 02:48:20 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								b15597b59a 
								
							 
						 
						
							
							
								
								implement movri  
							
							 
							
							... 
							
							
							
							add a stub LowerFORMAL_ARGUMENTS
llvm-svn: 28388 
							
						 
						
							2006-05-18 21:45:49 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								4abf33f56e 
								
							 
						 
						
							
							
								
								add an abort after every assert(0)  
							
							 
							
							... 
							
							
							
							llvm-svn: 28310 
							
						 
						
							2006-05-15 22:34:39 +00:00  
						
					 
				
					
						
							
							
								 
								Rafael Espindola
							
						 
						
							 
							
							
							
							
								
							
							
								ffdc24b847 
								
							 
						 
						
							
							
								
								added a skeleton of the ARM backend  
							
							 
							
							... 
							
							
							
							llvm-svn: 28301 
							
						 
						
							2006-05-14 22:18:28 +00:00