d9990f061f 
								
							 
						 
						
							
							
								
								Special handling of LEApcrel and tLEApcrel.  
							
							... 
							
							
							
							llvm-svn: 36504 
							
						 
						
							2007-04-27 08:14:15 +00:00  
				
					
						
							
							
								 
						
							
								e54018687d 
								
							 
						 
						
							
							
								
								Back out previous check-in. Incorrect.  
							
							... 
							
							
							
							llvm-svn: 36503 
							
						 
						
							2007-04-27 07:50:02 +00:00  
				
					
						
							
							
								 
						
							
								68ec63b3d7 
								
							 
						 
						
							
							
								
								tLEApcrel is a AddrModeTs, i.e. pc relative.  
							
							... 
							
							
							
							llvm-svn: 36502 
							
						 
						
							2007-04-27 07:37:22 +00:00  
				
					
						
							
							
								 
						
							
								910c80851e 
								
							 
						 
						
							
							
								
								Rename findRegisterUseOperand to findRegisterUseOperandIdx to avoid confusion.  
							
							... 
							
							
							
							llvm-svn: 36483 
							
						 
						
							2007-04-26 19:00:32 +00:00  
				
					
						
							
							
								 
						
							
								0ba174534c 
								
							 
						 
						
							
							
								
								Match MachineFunction::UsedPhysRegs changes.  
							
							... 
							
							
							
							llvm-svn: 36452 
							
						 
						
							2007-04-25 22:13:27 +00:00  
				
					
						
							
							
								 
						
							
								4ae9425bb6 
								
							 
						 
						
							
							
								
								remember to emit weak reference in one more case.  
							
							... 
							
							
							
							llvm-svn: 36438 
							
						 
						
							2007-04-25 14:50:40 +00:00  
				
					
						
							
							
								 
						
							
								8cd224e81c 
								
							 
						 
						
							
							
								
								Relex assertions to account for additional implicit def / use operands.  
							
							... 
							
							
							
							llvm-svn: 36430 
							
						 
						
							2007-04-25 07:12:14 +00:00  
				
					
						
							
							
								 
						
							
								fdfb757682 
								
							 
						 
						
							
							
								
								Make Thumb funcs containing islands 4-byte aligned.  Fix bugs maintaining  
							
							... 
							
							
							
							BBOffsets and BBSizes when adjusting conditional branches.
llvm-svn: 36372 
							
						 
						
							2007-04-23 20:09:04 +00:00  
				
					
						
							
							
								 
						
							
								ed0ecdb7ff 
								
							 
						 
						
							
							
								
								add Align field, and use when generating function alignment  
							
							... 
							
							
							
							llvm-svn: 36371 
							
						 
						
							2007-04-23 20:07:25 +00:00  
				
					
						
							
							
								 
						
							
								8eb9bff493 
								
							 
						 
						
							
							
								
								add isThumb (unused as yet)  
							
							... 
							
							
							
							llvm-svn: 36370 
							
						 
						
							2007-04-23 20:04:35 +00:00  
				
					
						
							
							
								 
						
							
								ee2d164f0f 
								
							 
						 
						
							
							
								
								Implement PIC for arm-linux.  
							
							... 
							
							
							
							llvm-svn: 36324 
							
						 
						
							2007-04-22 00:04:12 +00:00  
				
					
						
							
							
								 
						
							
								e656d093a5 
								
							 
						 
						
							
							
								
								Specify S registers as D registers' sub-registers.  
							
							... 
							
							
							
							llvm-svn: 36280 
							
						 
						
							2007-04-20 21:20:10 +00:00  
				
					
						
							
							
								 
						
							
								3d3f22766a 
								
							 
						 
						
							
							
								
								add a crazy idea  
							
							... 
							
							
							
							llvm-svn: 36273 
							
						 
						
							2007-04-20 20:18:43 +00:00  
				
					
						
							
							
								 
						
							
								42cd7253b1 
								
							 
						 
						
							
							
								
								Fix a bug in getFrameRegister.  
							
							... 
							
							
							
							Reported by Raul Herbster.
llvm-svn: 36262 
							
						 
						
							2007-04-19 14:09:38 +00:00  
				
					
						
							
							
								 
						
							
								598bc0d9a3 
								
							 
						 
						
							
							
								
								dag combiner just got better at pruning bits.  This fixes CodeGen/ARM/rev.ll  
							
							... 
							
							
							
							llvm-svn: 36222 
							
						 
						
							2007-04-17 22:39:58 +00:00  
				
					
						
							
							
								 
						
							
								2509d7547d 
								
							 
						 
						
							
							
								
								add a note  
							
							... 
							
							
							
							llvm-svn: 36203 
							
						 
						
							2007-04-17 18:03:00 +00:00  
				
					
						
							
							
								 
						
							
								fb80151c42 
								
							 
						 
						
							
							
								
								Removed tabs everywhere except autogenerated & external files. Add make  
							
							... 
							
							
							
							target for tabs checking.
llvm-svn: 36146 
							
						 
						
							2007-04-16 18:10:23 +00:00  
				
					
						
							
							
								 
						
							
								502c3f48d9 
								
							 
						 
						
							
							
								
								arm has r+r*s and r+i addr modes, but no r+i+r*s addr modes.  
							
							... 
							
							
							
							llvm-svn: 35962 
							
						 
						
							2007-04-13 06:50:55 +00:00  
				
					
						
							
							
								 
						
							
								fe926e2960 
								
							 
						 
						
							
							
								
								Fix incorrect fall-throughs in addr mode code.  This fixes CodeGen/ARM/arm-negative-stride.ll  
							
							... 
							
							
							
							llvm-svn: 35909 
							
						 
						
							2007-04-11 16:17:12 +00:00  
				
					
						
							
							
								 
						
							
								9b6d69e0c2 
								
							 
						 
						
							
							
								
								restore support for negative strides  
							
							... 
							
							
							
							llvm-svn: 35859 
							
						 
						
							2007-04-10 03:48:29 +00:00  
				
					
						
							
							
								 
						
							
								d44e24c896 
								
							 
						 
						
							
							
								
								remove dead target hooks  
							
							... 
							
							
							
							llvm-svn: 35846 
							
						 
						
							2007-04-09 23:33:39 +00:00  
				
					
						
							
							
								 
						
							
								39f65335d5 
								
							 
						 
						
							
							
								
								remove some dead target hooks, subsumed by isLegalAddressingMode  
							
							... 
							
							
							
							llvm-svn: 35840 
							
						 
						
							2007-04-09 22:27:04 +00:00  
				
					
						
							
							
								 
						
							
								1e150dedd1 
								
							 
						 
						
							
							
								
								Implement inline asm modifier P.  
							
							... 
							
							
							
							llvm-svn: 35640 
							
						 
						
							2007-04-04 00:13:29 +00:00  
				
					
						
							
							
								 
						
							
								bd31f41daa 
								
							 
						 
						
							
							
								
								Typo.  
							
							... 
							
							
							
							llvm-svn: 35639 
							
						 
						
							2007-04-04 00:06:07 +00:00  
				
					
						
							
							
								 
						
							
								3c68d4e8ba 
								
							 
						 
						
							
							
								
								Remove unused constant pool entries.  
							
							... 
							
							
							
							llvm-svn: 35635 
							
						 
						
							2007-04-03 23:39:48 +00:00  
				
					
						
							
							
								 
						
							
								39d8b4db92 
								
							 
						 
						
							
							
								
								Fixed a bug that causes codegen of noop like add r0, r0,  #0 .  
							
							... 
							
							
							
							llvm-svn: 35627 
							
						 
						
							2007-04-03 21:31:21 +00:00  
				
					
						
							
							
								 
						
							
								e8315fe3f5 
								
							 
						 
						
							
							
								
								Inverted logic.  
							
							... 
							
							
							
							llvm-svn: 35619 
							
						 
						
							2007-04-03 06:44:25 +00:00  
				
					
						
							
							
								 
						
							
								f742e2fe70 
								
							 
						 
						
							
							
								
								Arm supports negative strides as well, add them.  This lets us compile:  
							
							... 
							
							
							
							CodeGen/ARM/arm-negative-stride.ll to:
LBB1_2: @bb 
        str r1, [r3, -r0, lsl #2 ]
        add r0, r0, #1 
        cmp r0, r2
        bne LBB1_2      @bb 
llvm-svn: 35609 
							
						 
						
							2007-04-03 00:13:57 +00:00  
				
					
						
							
							
								 
						
							
								d13786dd82 
								
							 
						 
						
							
							
								
								fix off by 1 error in displacement computation  
							
							... 
							
							
							
							llvm-svn: 35602 
							
						 
						
							2007-04-02 20:31:06 +00:00  
				
					
						
							
							
								 
						
							
								8e168a4f36 
								
							 
						 
						
							
							
								
								fix the CodeGen/ARM/2007-03-13-InstrSched.ll regression: allow IV's with scales  
							
							... 
							
							
							
							to be folded into non-store instructions.
llvm-svn: 35601 
							
						 
						
							2007-04-02 18:51:18 +00:00  
				
					
						
							
							
								 
						
							
								6223e83f6d 
								
							 
						 
						
							
							
								
								add support for the 'w' inline asm register class.  
							
							... 
							
							
							
							llvm-svn: 35598 
							
						 
						
							2007-04-02 17:24:08 +00:00  
				
					
						
							
							
								 
						
							
								6be85337b0 
								
							 
						 
						
							
							
								
								- Divides the comparisons in two types: comparisons that only use N and Z  
							
							... 
							
							
							
							flags (ARMISD::CMPNZ) and comparisons that use all flags (ARMISD::CMP).
- Defines the instructions: TST, TEQ (ARM) and TST (Thumb).
llvm-svn: 35573 
							
						 
						
							2007-04-02 01:30:03 +00:00  
				
					
						
							
							
								 
						
							
								17d48a8bc2 
								
							 
						 
						
							
							
								
								Add i16 address mode.  
							
							... 
							
							
							
							llvm-svn: 35551 
							
						 
						
							2007-04-01 08:06:46 +00:00  
				
					
						
							
							
								 
						
							
								1eb94d973a 
								
							 
						 
						
							
							
								
								implement the new addressing mode description hook.  
							
							... 
							
							
							
							llvm-svn: 35521 
							
						 
						
							2007-03-30 23:15:24 +00:00  
				
					
						
							
							
								 
						
							
								045414aa8e 
								
							 
						 
						
							
							
								
								New entry.  
							
							... 
							
							
							
							llvm-svn: 35480 
							
						 
						
							2007-03-29 21:40:13 +00:00  
				
					
						
							
							
								 
						
							
								cc44b1e743 
								
							 
						 
						
							
							
								
								Can't re-materialize mov r, imm in thumb since mov would clobber the condition code.  
							
							... 
							
							
							
							llvm-svn: 35479 
							
						 
						
							2007-03-29 21:38:31 +00:00  
				
					
						
							
							
								 
						
							
								8f592160c0 
								
							 
						 
						
							
							
								
								Add support for hidden visibility to darwin/arm.  
							
							... 
							
							
							
							llvm-svn: 35448 
							
						 
						
							2007-03-29 07:49:34 +00:00  
				
					
						
							
							
								 
						
							
								c2cba18f2b 
								
							 
						 
						
							
							
								
								Remove isLegalAddressImmediate.  
							
							... 
							
							
							
							llvm-svn: 35406 
							
						 
						
							2007-03-28 01:53:55 +00:00  
				
					
						
							
							
								 
						
							
								143b0dff31 
								
							 
						 
						
							
							
								
								bugfix: sometimes the spiller puts a load between the "mov lr, pc" and "bx" of a CALL_NOLINK.  
							
							... 
							
							
							
							llvm-svn: 35381 
							
						 
						
							2007-03-27 16:19:21 +00:00  
				
					
						
							
							
								 
						
							
								7dbbd00b06 
								
							 
						 
						
							
							
								
								findRegisterUseOperand() changed.  
							
							... 
							
							
							
							llvm-svn: 35366 
							
						 
						
							2007-03-26 22:41:48 +00:00  
				
					
						
							
							
								 
						
							
								d685514e2e 
								
							 
						 
						
							
							
								
								switch TargetLowering::getConstraintType to take the entire constraint,  
							
							... 
							
							
							
							not just the first letter.  No functionality change.
llvm-svn: 35322 
							
						 
						
							2007-03-25 02:14:49 +00:00  
				
					
						
							
							
								 
						
							
								0c6bb5eab7 
								
							 
						 
						
							
							
								
								repair x86 performance, dejagnu problems from previous change  
							
							... 
							
							
							
							llvm-svn: 35245 
							
						 
						
							2007-03-21 21:51:52 +00:00  
				
					
						
							
							
								 
						
							
								cba9538499 
								
							 
						 
						
							
							
								
								Updated.  
							
							... 
							
							
							
							llvm-svn: 35229 
							
						 
						
							2007-03-20 22:32:39 +00:00  
				
					
						
							
							
								 
						
							
								bacf4acf65 
								
							 
						 
						
							
							
								
								do not share old induction variables when this would result in invalid  
							
							... 
							
							
							
							instructions (that would have to be split later)
llvm-svn: 35227 
							
						 
						
							2007-03-20 21:54:54 +00:00  
				
					
						
							
							
								 
						
							
								a88c4a74f3 
								
							 
						 
						
							
							
								
								bugfix: When the source register of CALL_NOLINK was LR, the following code was emitted:  
							
							... 
							
							
							
							mov lr, pc
    bx lr
So, the function was not called.
llvm-svn: 35218 
							
						 
						
							2007-03-20 17:57:23 +00:00  
				
					
						
							
							
								 
						
							
								9e7b838469 
								
							 
						 
						
							
							
								
								Make two piece constant generation as a single instruction. It's re-materialized as a load from constantpool.  
							
							... 
							
							
							
							llvm-svn: 35207 
							
						 
						
							2007-03-20 08:11:30 +00:00  
				
					
						
							
							
								 
						
							
								39eb62ea3b 
								
							 
						 
						
							
							
								
								New entry.  
							
							... 
							
							
							
							llvm-svn: 35206 
							
						 
						
							2007-03-20 08:10:17 +00:00  
				
					
						
							
							
								 
						
							
								61f39d186c 
								
							 
						 
						
							
							
								
								Added MRegisterInfo hook to re-materialize an instruction.  
							
							... 
							
							
							
							llvm-svn: 35205 
							
						 
						
							2007-03-20 08:09:38 +00:00  
				
					
						
							
							
								 
						
							
								f806e1cdbc 
								
							 
						 
						
							
							
								
								fix indentation  
							
							... 
							
							
							
							llvm-svn: 35202 
							
						 
						
							2007-03-20 02:25:53 +00:00  
				
					
						
							
							
								 
						
							
								8447d34903 
								
							 
						 
						
							
							
								
								fix obvious comment bug  
							
							... 
							
							
							
							llvm-svn: 35196 
							
						 
						
							2007-03-20 00:30:56 +00:00  
				
					
						
							
							
								 
						
							
								9bb01c9f4f 
								
							 
						 
						
							
							
								
								Fix naming inconsistencies.  
							
							... 
							
							
							
							llvm-svn: 35163 
							
						 
						
							2007-03-19 07:48:02 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								5be3e09a30 
								
							 
						 
						
							
							
								
								Constant generation instructions are re-materializable.  
							
							... 
							
							
							
							llvm-svn: 35161 
							
						 
						
							2007-03-19 07:09:02 +00:00  
				
					
						
							
							
								 
						
							
								25d4052af6 
								
							 
						 
						
							
							
								
								Only ARMv6 has BSWAP.  
							
							... 
							
							
							
							Fix MultiSource/Applications/aha test.
llvm-svn: 35128 
							
						 
						
							2007-03-16 22:54:16 +00:00  
				
					
						
							
							
								 
						
							
								0e34d6af6b 
								
							 
						 
						
							
							
								
								Added isLegalAddressExpression(). Only allows X +/- C for now.  
							
							... 
							
							
							
							llvm-svn: 35122 
							
						 
						
							2007-03-16 08:43:56 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								507eefa757 
								
							 
						 
						
							
							
								
								Zero is always a legal AM immediate.  
							
							... 
							
							
							
							llvm-svn: 35087 
							
						 
						
							2007-03-13 20:37:59 +00:00  
				
					
						
							
							
								 
						
							
								818242bbaf 
								
							 
						 
						
							
							
								
								Implement getTargetLowering() or else LSR won't be using ARM specific hooks.  
							
							... 
							
							
							
							llvm-svn: 35077 
							
						 
						
							2007-03-13 01:20:42 +00:00  
				
					
						
							
							
								 
						
							
								2150b9286f 
								
							 
						 
						
							
							
								
								Updated TargetLowering LSR addressing mode hooks for ARM and Thumb.  
							
							... 
							
							
							
							llvm-svn: 35075 
							
						 
						
							2007-03-12 23:30:29 +00:00  
				
					
						
							
							
								 
						
							
								09663aeac7 
								
							 
						 
						
							
							
								
								Minor stuff.  
							
							... 
							
							
							
							llvm-svn: 35049 
							
						 
						
							2007-03-09 19:46:06 +00:00  
				
					
						
							
							
								 
						
							
								31ef0ab7cf 
								
							 
						 
						
							
							
								
								Add comments about LSR / ARM.  
							
							... 
							
							
							
							llvm-svn: 35048 
							
						 
						
							2007-03-09 19:35:33 +00:00  
				
					
						
							
							
								 
						
							
								603f3094eb 
								
							 
						 
						
							
							
								
								Unfinished work and ideas related to register scavenger.  
							
							... 
							
							
							
							llvm-svn: 35047 
							
						 
						
							2007-03-09 19:34:51 +00:00  
				
					
						
							
							
								 
						
							
								368faf9acd 
								
							 
						 
						
							
							
								
								apply comments from review of last patch  
							
							... 
							
							
							
							llvm-svn: 35045 
							
						 
						
							2007-03-09 19:18:59 +00:00  
				
					
						
							
							
								 
						
							
								af0cff2671 
								
							 
						 
						
							
							
								
								Add some observations from CoreGraphics benchmark.  Remove register  
							
							... 
							
							
							
							scavenging todo item, since it is now implemented.
llvm-svn: 35044 
							
						 
						
							2007-03-09 17:58:17 +00:00  
				
					
						
							
							
								 
						
							
								ea28fc5dc4 
								
							 
						 
						
							
							
								
								Implement inline asm modifier c.  
							
							... 
							
							
							
							llvm-svn: 35035 
							
						 
						
							2007-03-08 22:42:46 +00:00  
				
					
						
							
							
								 
						
							
								63170b6959 
								
							 
						 
						
							
							
								
								Fix a typo.  
							
							... 
							
							
							
							llvm-svn: 35030 
							
						 
						
							2007-03-08 21:59:30 +00:00  
				
					
						
							
							
								 
						
							
								ddf082082c 
								
							 
						 
						
							
							
								
								Putting more constants which do not contain relocations into .literal{4|8|16}  
							
							... 
							
							
							
							llvm-svn: 35026 
							
						 
						
							2007-03-08 08:31:54 +00:00  
				
					
						
							
							
								 
						
							
								e94a2f8026 
								
							 
						 
						
							
							
								
								Change register allocation order to Dale's suggestion.  
							
							... 
							
							
							
							llvm-svn: 35021 
							
						 
						
							2007-03-08 02:56:40 +00:00  
				
					
						
							
							
								 
						
							
								977195e912 
								
							 
						 
						
							
							
								
								Bug fix. Not advancing the register scavenger iterator correctly.  
							
							... 
							
							
							
							llvm-svn: 35020 
							
						 
						
							2007-03-08 02:55:08 +00:00  
				
					
						
							
							
								 
						
							
								d918477ac3 
								
							 
						 
						
							
							
								
								For Darwin, put constant data into .const, .const_data, .literal{4|8|16}  
							
							... 
							
							
							
							sections.
llvm-svn: 35017 
							
						 
						
							2007-03-08 01:25:25 +00:00  
				
					
						
							
							
								 
						
							
								f030f2d628 
								
							 
						 
						
							
							
								
								Only safe to use a call-clobbered or spilled callee-saved register as scratch register.  
							
							... 
							
							
							
							llvm-svn: 35010 
							
						 
						
							2007-03-07 20:30:36 +00:00  
				
					
						
							
							
								 
						
							
								ed4b303c10 
								
							 
						 
						
							
							
								
								Refactoring of formal parameter flags. Enable properly use of  
							
							... 
							
							
							
							zext/sext/aext stuff.
llvm-svn: 35008 
							
						 
						
							2007-03-07 16:25:09 +00:00  
				
					
						
							
							
								 
						
							
								17cdad0687 
								
							 
						 
						
							
							
								
								ARM always use register scavenger. No longer reserves R12.  
							
							... 
							
							
							
							llvm-svn: 34999 
							
						 
						
							2007-03-07 02:46:23 +00:00  
				
					
						
							
							
								 
						
							
								2818fdd019 
								
							 
						 
						
							
							
								
								Fix some brittle code. Watch out for cases where register scavenger is pointing to deleted instructions.  
							
							... 
							
							
							
							llvm-svn: 34998 
							
						 
						
							2007-03-07 02:38:05 +00:00  
				
					
						
							
							
								 
						
							
								67038e7a8b 
								
							 
						 
						
							
							
								
								Fix one more Thumb eliminateFrameIndex bug.  
							
							... 
							
							
							
							llvm-svn: 34990 
							
						 
						
							2007-03-07 00:12:18 +00:00  
				
					
						
							
							
								 
						
							
								5ed781b0db 
								
							 
						 
						
							
							
								
								Register scavenging is now on by default for ARM.  
							
							... 
							
							
							
							llvm-svn: 34987 
							
						 
						
							2007-03-06 22:02:53 +00:00  
				
					
						
							
							
								 
						
							
								41bc2fd242 
								
							 
						 
						
							
							
								
								Make load / store optimizer use register scavenger.  
							
							... 
							
							
							
							llvm-svn: 34986 
							
						 
						
							2007-03-06 21:59:20 +00:00  
				
					
						
							
							
								 
						
							
								d28de6700b 
								
							 
						 
						
							
							
								
								Code clean up. Prepare to use register scavenger.  
							
							... 
							
							
							
							llvm-svn: 34976 
							
						 
						
							2007-03-06 18:02:41 +00:00  
				
					
						
							
							
								 
						
							
								4783ae8ac1 
								
							 
						 
						
							
							
								
								Scavenge a register using the register scavenger when needed.  
							
							... 
							
							
							
							llvm-svn: 34966 
							
						 
						
							2007-03-06 10:03:56 +00:00  
				
					
						
							
							
								 
						
							
								e7ec3bc7bc 
								
							 
						 
						
							
							
								
								Use new SDIselParamAttr enumeration. This removes "magick" constants  
							
							... 
							
							
							
							from formal attributes' flags processing.
llvm-svn: 34963 
							
						 
						
							2007-03-06 08:12:33 +00:00  
				
					
						
							
							
								 
						
							
								f10769dda7 
								
							 
						 
						
							
							
								
								Use init_array/fini_array sections for static contructors/destructors when the ABI is AAPCS.  
							
							... 
							
							
							
							Fix SingleSource/Regression/C/ConstructorDestructorAttributes test on arm-linux-gnueabi.
llvm-svn: 34931 
							
						 
						
							2007-03-05 17:59:58 +00:00  
				
					
						
							
							
								 
						
							
								32bc81341b 
								
							 
						 
						
							
							
								
								eliminate unnecessary reset of SP in epilog on darwin  
							
							... 
							
							
							
							llvm-svn: 34824 
							
						 
						
							2007-03-02 01:17:17 +00:00  
				
					
						
							
							
								 
						
							
								2c0fd3ee4c 
								
							 
						 
						
							
							
								
								Use a spilled free callee-saved register as scratch register.  
							
							... 
							
							
							
							llvm-svn: 34785 
							
						 
						
							2007-03-01 08:57:52 +00:00  
				
					
						
							
							
								 
						
							
								6f059e3e0a 
								
							 
						 
						
							
							
								
								- Track which callee-saved registers are spilled.  
							
							... 
							
							
							
							- Some code clean up.
llvm-svn: 34783 
							
						 
						
							2007-03-01 08:26:31 +00:00  
				
					
						
							
							
								 
						
							
								677bb3b460 
								
							 
						 
						
							
							
								
								Switch from std::vector<bool> to BitVector.  
							
							... 
							
							
							
							llvm-svn: 34781 
							
						 
						
							2007-03-01 07:52:44 +00:00  
				
					
						
							
							
								 
						
							
								65c75b57d4 
								
							 
						 
						
							
							
								
								Get rid of verboten <iostream> include.  
							
							... 
							
							
							
							llvm-svn: 34777 
							
						 
						
							2007-03-01 06:05:39 +00:00  
				
					
						
							
							
								 
						
							
								962fa8eb9a 
								
							 
						 
						
							
							
								
								Changes requested in review of last pass.  Also pulled isThumb into a  
							
							... 
							
							
							
							member, instead of resetting in every function that uses it.
llvm-svn: 34764 
							
						 
						
							2007-02-28 23:20:38 +00:00  
				
					
						
							
							
								 
						
							
								f6ca943638 
								
							 
						 
						
							
							
								
								Doh. ARM::PC is obvious a reserved register.  
							
							... 
							
							
							
							llvm-svn: 34763 
							
						 
						
							2007-02-28 23:12:34 +00:00  
				
					
						
							
							
								 
						
							
								440995bd9a 
								
							 
						 
						
							
							
								
								Add intelligence about where to break large blocks.  
							
							... 
							
							
							
							llvm-svn: 34755 
							
						 
						
							2007-02-28 18:41:23 +00:00  
				
					
						
							
							
								 
						
							
								e8af69632f 
								
							 
						 
						
							
							
								
								Make requiresRegisterScavenging determination on a per MachineFunction basis.  
							
							... 
							
							
							
							llvm-svn: 34711 
							
						 
						
							2007-02-28 00:59:19 +00:00  
				
					
						
							
							
								 
						
							
								9049cd72e6 
								
							 
						 
						
							
							
								
								Temporary: make R12 available in ARM mode if RegScavenger is being used.  
							
							... 
							
							
							
							llvm-svn: 34709 
							
						 
						
							2007-02-28 00:22:44 +00:00  
				
					
						
							
							
								 
						
							
								30508919c8 
								
							 
						 
						
							
							
								
								Start making use of RegScavenger.  
							
							... 
							
							
							
							llvm-svn: 34708 
							
						 
						
							2007-02-28 00:21:58 +00:00  
				
					
						
							
							
								 
						
							
								95ae95a6a6 
								
							 
						 
						
							
							
								
								PEI now passes a RegScavenger ptr to eliminateFrameIndex.  
							
							... 
							
							
							
							llvm-svn: 34707 
							
						 
						
							2007-02-28 00:21:17 +00:00  
				
					
						
							
							
								 
						
							
								ee8aca0cfa 
								
							 
						 
						
							
							
								
								Minor tweak. Allocate r0 to r3 in reverse order, r3 is least likely to be livein to a function.  
							
							... 
							
							
							
							llvm-svn: 34701 
							
						 
						
							2007-02-27 23:03:55 +00:00  
				
					
						
							
							
								 
						
							
								71a7271b8b 
								
							 
						 
						
							
							
								
								Let MRegisterInfo now owns RegScavenger; eliminateFrameIndex must preserve register kill info.  
							
							... 
							
							
							
							llvm-svn: 34692 
							
						 
						
							2007-02-27 21:12:35 +00:00  
				
					
						
							
							
								 
						
							
								c2f3d015e0 
								
							 
						 
						
							
							
								
								cosmetic changes from review of last patch.  obvious  
							
							... 
							
							
							
							llvm-svn: 34598 
							
						 
						
							2007-02-25 18:31:31 +00:00  
				
					
						
							
							
								 
						
							
								e80e31eada 
								
							 
						 
						
							
							
								
								remove crediting of Evan Cheng and me.  
							
							... 
							
							
							
							llvm-svn: 34568 
							
						 
						
							2007-02-25 01:42:36 +00:00  
				
					
						
							
							
								 
						
							
								01ee5750f4 
								
							 
						 
						
							
							
								
								Removed WaterListOffset, inserted BBOffsets.  Remove TODO item about this  
							
							... 
							
							
							
							from README.
When no water available, use end of block if in range.  (More to do here.)
llvm-svn: 34563 
							
						 
						
							2007-02-25 00:47:03 +00:00  
				
					
						
							
							
								 
						
							
								0eb70ebbe5 
								
							 
						 
						
							
							
								
								bugfix: SP wasn't updated for varargs when frame pointer was eliminated.  
							
							... 
							
							
							
							llvm-svn: 34537 
							
						 
						
							2007-02-23 21:53:48 +00:00  
				
					
						
							
							
								 
						
							
								3e906c48d3 
								
							 
						 
						
							
							
								
								Fix stack alignment in functions with varargs.  
							
							... 
							
							
							
							llvm-svn: 34532 
							
						 
						
							2007-02-23 20:32:57 +00:00  
				
					
						
							
							
								 
						
							
								e18b13b213 
								
							 
						 
						
							
							
								
								rewrite of constant islands  
							
							... 
							
							
							
							llvm-svn: 34523 
							
						 
						
							2007-02-23 05:02:36 +00:00  
				
					
						
							
							
								 
						
							
								9f8301413c 
								
							 
						 
						
							
							
								
								Added -march=thumb; removed -enable-thumb.  
							
							... 
							
							
							
							llvm-svn: 34521 
							
						 
						
							2007-02-23 03:14:31 +00:00  
				
					
						
							
							
								 
						
							
								15af662314 
								
							 
						 
						
							
							
								
								Add option to turn on register scavenger; By default, spills kills the register being stored.  
							
							... 
							
							
							
							llvm-svn: 34514 
							
						 
						
							2007-02-23 01:09:11 +00:00  
				
					
						
							
							
								 
						
							
								e0008e23cf 
								
							 
						 
						
							
							
								
								Simplify lowering and selection of exception ops.  
							
							... 
							
							
							
							llvm-svn: 34488 
							
						 
						
							2007-02-22 14:56:36 +00:00  
				
					
						
							
							
								 
						
							
								3796abea0f 
								
							 
						 
						
							
							
								
								Support to provide exception and selector registers.  
							
							... 
							
							
							
							llvm-svn: 34482 
							
						 
						
							2007-02-21 22:54:50 +00:00  
				
					
						
							
							
								 
						
							
								f7ed82da10 
								
							 
						 
						
							
							
								
								Re-apply my liveintervalanalysis changes. Now with PR1207 fixes.  
							
							... 
							
							
							
							llvm-svn: 34428 
							
						 
						
							2007-02-19 21:49:54 +00:00  
				
					
						
							
							
								 
						
							
								da81bf4d3e 
								
							 
						 
						
							
							
								
								For PR1207:  
							
							... 
							
							
							
							Revert patches that caused the problem. Evan, please investigate and reapply
when you've discovered the problem.
llvm-svn: 34399 
							
						 
						
							2007-02-19 03:20:00 +00:00  
				
					
						
							
							
								 
						
							
								9865be6d40 
								
							 
						 
						
							
							
								
								Added getReservedRegs().  
							
							... 
							
							
							
							llvm-svn: 34376 
							
						 
						
							2007-02-17 11:06:00 +00:00  
				
					
						
							
							
								 
						
							
								945e437c65 
								
							 
						 
						
							
							
								
								Generalize TargetData strings, to support more interesting forms of data.  
							
							... 
							
							
							
							Patch by Scott Michel.
llvm-svn: 34266 
							
						 
						
							2007-02-14 05:52:17 +00:00  
				
					
						
							
							
								 
						
							
								50c6a8c3a1 
								
							 
						 
						
							
							
								
								Add space between // and the comment.  
							
							... 
							
							
							
							llvm-svn: 34246 
							
						 
						
							2007-02-13 20:06:15 +00:00  
				
					
						
							
							
								 
						
							
								048e16ff8f 
								
							 
						 
						
							
							
								
								Add ABI information to ARM subtarget.  
							
							... 
							
							
							
							llvm-svn: 34245 
							
						 
						
							2007-02-13 19:52:28 +00:00  
				
					
						
							
							
								 
						
							
								603f201cba 
								
							 
						 
						
							
							
								
								According to ARM EABI, 8-bytes function arguments must be 8-bytes aligned.  
							
							... 
							
							
							
							llvm-svn: 34241 
							
						 
						
							2007-02-13 14:07:13 +00:00  
				
					
						
							
							
								 
						
							
								540f5e0d41 
								
							 
						 
						
							
							
								
								These vectors are frequently large. Use std::vector instead.  
							
							... 
							
							
							
							llvm-svn: 34109 
							
						 
						
							2007-02-09 23:59:14 +00:00  
				
					
						
							
							
								 
						
							
								8b7700f146 
								
							 
						 
						
							
							
								
								Add reference counting to constantpool entries. Delete the unused ones.  
							
							... 
							
							
							
							llvm-svn: 34105 
							
						 
						
							2007-02-09 20:54:44 +00:00  
				
					
						
							
							
								 
						
							
								2ff4c973b1 
								
							 
						 
						
							
							
								
								isLowRegister() expects input is a physical register.  
							
							... 
							
							
							
							llvm-svn: 34013 
							
						 
						
							2007-02-07 21:44:33 +00:00  
				
					
						
							
							
								 
						
							
								cca9b1d768 
								
							 
						 
						
							
							
								
								Rename.  
							
							... 
							
							
							
							llvm-svn: 34011 
							
						 
						
							2007-02-07 21:24:09 +00:00  
				
					
						
							
							
								 
						
							
								ec4c67f0a7 
								
							 
						 
						
							
							
								
								If sp offset will be materialized in a register. Clear the offset field of str / ldr.  
							
							... 
							
							
							
							llvm-svn: 34010 
							
						 
						
							2007-02-07 21:19:58 +00:00  
				
					
						
							
							
								 
						
							
								62aef236de 
								
							 
						 
						
							
							
								
								Get rid of references to iostream.  
							
							... 
							
							
							
							llvm-svn: 34009 
							
						 
						
							2007-02-07 21:18:32 +00:00  
				
					
						
							
							
								 
						
							
								b216ea1aa6 
								
							 
						 
						
							
							
								
								New entry.  
							
							... 
							
							
							
							llvm-svn: 34000 
							
						 
						
							2007-02-07 09:22:15 +00:00  
				
					
						
							
							
								 
						
							
								78c5a9422d 
								
							 
						 
						
							
							
								
								In thumb mode, R3 is reserved, but it can be live in to the function. If  
							
							... 
							
							
							
							that is the case, whenever we use it as a scratch register, save it to R12
first and then restore it after the use.
This is a temporary and truly horrible workaround!
llvm-svn: 33999 
							
						 
						
							2007-02-07 09:17:36 +00:00  
				
					
						
							
							
								 
						
							
								2ff0d3a2ab 
								
							 
						 
						
							
							
								
								Update  
							
							... 
							
							
							
							llvm-svn: 33998 
							
						 
						
							2007-02-07 08:37:57 +00:00  
				
					
						
							
							
								 
						
							
								b5519b5361 
								
							 
						 
						
							
							
								
								- If fp (r7) is used to reference stack objects, use [r, r] address mode.  
							
							... 
							
							
							
							- If there is a dynamic alloca, in the epilogue, restore the value of sp
  using r7 - offset.
- Other bug fixes.
llvm-svn: 33997 
							
						 
						
							2007-02-07 08:37:31 +00:00  
				
					
						
							
							
								 
						
							
								12cf8ddaea 
								
							 
						 
						
							
							
								
								eliminateFrameIndex() is even more complicated if frame ptr is used instead of SP when there are dynamic alloca's.  
							
							... 
							
							
							
							llvm-svn: 33975 
							
						 
						
							2007-02-07 02:44:23 +00:00  
				
					
						
							
							
								 
						
							
								ec13f826a2 
								
							 
						 
						
							
							
								
								Spill / restore should avoid modifying the condition register.  
							
							... 
							
							
							
							llvm-svn: 33971 
							
						 
						
							2007-02-07 00:06:56 +00:00  
				
					
						
							
							
								 
						
							
								a974031ebd 
								
							 
						 
						
							
							
								
								Select add FI, c correctly.  
							
							... 
							
							
							
							llvm-svn: 33960 
							
						 
						
							2007-02-06 09:11:20 +00:00  
				
					
						
							
							
								 
						
							
								ea3308aef0 
								
							 
						 
						
							
							
								
								foldMemoryOperand() cannot fold tMOVrr sp into load / store in thumb mode. tLDRspi / tSTRspi cannot target / store high registers.  
							
							... 
							
							
							
							llvm-svn: 33958 
							
						 
						
							2007-02-06 06:13:29 +00:00  
				
					
						
							
							
								 
						
							
								2fc792f86b 
								
							 
						 
						
							
							
								
								eliminateFrameIndex() bug when frame pointer is used as base register.  
							
							... 
							
							
							
							llvm-svn: 33945 
							
						 
						
							2007-02-06 00:23:31 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								456db39ea9 
								
							 
						 
						
							
							
								
								ARM callseq_end should have a input flag operand so it would be scheduled right after the call.  
							
							... 
							
							
							
							llvm-svn: 33832 
							
						 
						
							2007-02-03 09:11:58 +00:00  
				
					
						
							
							
								 
						
							
								4b6c8f7f5e 
								
							 
						 
						
							
							
								
								Fix comments.  
							
							... 
							
							
							
							llvm-svn: 33831 
							
						 
						
							2007-02-03 08:53:01 +00:00  
				
					
						
							
							
								 
						
							
								36d559d369 
								
							 
						 
						
							
							
								
								- Branch max. displacement calculation bug.  
							
							... 
							
							
							
							- Add debugging info.
llvm-svn: 33811 
							
						 
						
							2007-02-03 02:08:34 +00:00  
				
					
						
							
							
								 
						
							
								b739f7d337 
								
							 
						 
						
							
							
								
								bugfix: SP isn't resetted when function has FP and there is no spills.  
							
							... 
							
							
							
							llvm-svn: 33800 
							
						 
						
							2007-02-02 23:08:40 +00:00  
				
					
						
							
							
								 
						
							
								f089c99f1d 
								
							 
						 
						
							
							
								
								Another thumb large stack offset codegen bug.  
							
							... 
							
							
							
							llvm-svn: 33795 
							
						 
						
							2007-02-02 21:08:39 +00:00  
				
					
						
							
							
								 
						
							
								d9d94700a4 
								
							 
						 
						
							
							
								
								Use MBB.empty() instead of MBB.size() for speed.  
							
							... 
							
							
							
							llvm-svn: 33789 
							
						 
						
							2007-02-02 19:09:19 +00:00  
				
					
						
							
							
								 
						
							
								3ad22567b3 
								
							 
						 
						
							
							
								
								Watch out for empty BB.  
							
							... 
							
							
							
							llvm-svn: 33788 
							
						 
						
							2007-02-02 18:49:02 +00:00  
				
					
						
							
							
								 
						
							
								fda6550545 
								
							 
						 
						
							
							
								
								Ugh. Only meant to do this in thumb mode.  
							
							... 
							
							
							
							llvm-svn: 33780 
							
						 
						
							2007-02-02 08:58:48 +00:00  
				
					
						
							
							
								 
						
							
								2d5b4ac38f 
								
							 
						 
						
							
							
								
								add a note  
							
							... 
							
							
							
							llvm-svn: 33778 
							
						 
						
							2007-02-02 04:36:46 +00:00  
				
					
						
							
							
								 
						
							
								48b094d9dd 
								
							 
						 
						
							
							
								
								Fix a bug in getARMCMP (which translate CondCode to ARM specific CC) when the RHS is a constant.  
							
							... 
							
							
							
							llvm-svn: 33775 
							
						 
						
							2007-02-02 01:53:26 +00:00  
				
					
						
							
							
								 
						
							
								9b9e4ae796 
								
							 
						 
						
							
							
								
								Thumb does not have clz.  
							
							... 
							
							
							
							llvm-svn: 33773 
							
						 
						
							2007-02-01 23:34:03 +00:00  
				
					
						
							
							
								 
						
							
								2c355da986 
								
							 
						 
						
							
							
								
								Define PrivateGlobalPrefix for ARM Linux. (Fix CodeGen/ARM/large_stack.ll)  
							
							... 
							
							
							
							llvm-svn: 33763 
							
						 
						
							2007-02-01 21:43:53 +00:00  
				
					
						
							
							
								 
						
							
								fd522996c8 
								
							 
						 
						
							
							
								
								Pasto. Lots of it.  
							
							... 
							
							
							
							llvm-svn: 33762 
							
						 
						
							2007-02-01 20:44:52 +00:00  
				
					
						
							
							
								 
						
							
								903e01d407 
								
							 
						 
						
							
							
								
								Fix .thumb_func directive on linux.  
							
							... 
							
							
							
							llvm-svn: 33759 
							
						 
						
							2007-02-01 18:25:34 +00:00  
				
					
						
							
							
								 
						
							
								f9a4c690de 
								
							 
						 
						
							
							
								
								- Off by one bugs in maximum displacement calculation / testing.  
							
							... 
							
							
							
							- In thumb mode, a new constpool island BB size should be 4 + 2 to
  compensate for the potential padding due to alignment requirement.
llvm-svn: 33753 
							
						 
						
							2007-02-01 10:16:15 +00:00  
				
					
						
							
							
								 
						
							
								06736d0f88 
								
							 
						 
						
							
							
								
								.set pc relative displacement bug: label should be moved down one instruction  
							
							... 
							
							
							
							to just before the add r1, pc:
Before:
        .set PCRELV0, (LJTI1_0_0-(LPCRELL0+4))
LPCRELL0:
        mov r1, #PCRELV0
        add r1, pc
Now:
        .set PCRELV0, (LJTI1_0_0-(LPCRELL0+4))
        mov r1, #PCRELV0
LPCRELL0:
        add r1, pc
llvm-svn: 33744 
							
						 
						
							2007-02-01 03:04:49 +00:00  
				
					
						
							
							
								 
						
							
								0df1536173 
								
							 
						 
						
							
							
								
								Add a note.  
							
							... 
							
							
							
							llvm-svn: 33743 
							
						 
						
							2007-02-01 02:46:20 +00:00  
				
					
						
							
							
								 
						
							
								e724492566 
								
							 
						 
						
							
							
								
								Also set alignment of stack-based structs to 4 in thumb mode.  
							
							... 
							
							
							
							llvm-svn: 33741 
							
						 
						
							2007-02-01 02:18:36 +00:00  
				
					
						
							
							
								 
						
							
								e7e966de5e 
								
							 
						 
						
							
							
								
								Special epilogue for vararg functions. We cannot do a pop to pc because  
							
							... 
							
							
							
							there follows a sp increment for the va register save region. Instead issue
a separate pop to another register, increment sp, and then return:
        pop {r4, r5, r6, r7}
        pop {r3}
        add sp, #3  * 4
        bx r3
llvm-svn: 33739 
							
						 
						
							2007-02-01 01:49:46 +00:00  
				
					
						
							
							
								 
						
							
								234e031e36 
								
							 
						 
						
							
							
								
								Pessmistically assume the .align 2 before the first constpool entry adds  
							
							... 
							
							
							
							two bytes padding.
llvm-svn: 33734 
							
						 
						
							2007-02-01 01:09:47 +00:00  
				
					
						
							
							
								 
						
							
								29f920877d 
								
							 
						 
						
							
							
								
								Possible JT improvements.  
							
							... 
							
							
							
							llvm-svn: 33733 
							
						 
						
							2007-02-01 01:07:48 +00:00  
				
					
						
							
							
								 
						
							
								ed81dea45b 
								
							 
						 
						
							
							
								
								Don't emit unnecessary .align directive.  
							
							... 
							
							
							
							llvm-svn: 33729 
							
						 
						
							2007-01-31 23:39:39 +00:00  
				
					
						
							
							
								 
						
							
								e5c19993cd 
								
							 
						 
						
							
							
								
								Handle an interesting corner case: the constpool_entry being reference is two  
							
							... 
							
							
							
							instructions away, i.e. its address is equal to PC.
        %r0 = tLDRpci <cp#0>
        bx
        CONSTPOOL_ENTRY 0 <cp#0>, 4
llvm-svn: 33728 
							
						 
						
							2007-01-31 23:35:18 +00:00  
				
					
						
							
							
								 
						
							
								b0ff625a31 
								
							 
						 
						
							
							
								
								Don't want to add FramePtr to callee save spill list twice.  
							
							... 
							
							
							
							llvm-svn: 33727 
							
						 
						
							2007-01-31 23:17:29 +00:00  
				
					
						
							
							
								 
						
							
								6f1c20a8e6 
								
							 
						 
						
							
							
								
								Darwin ABI requires FP to point to stack slot of prev FP.  
							
							... 
							
							
							
							llvm-svn: 33724 
							
						 
						
							2007-01-31 22:25:33 +00:00  
				
					
						
							
							
								 
						
							
								2e309b15a7 
								
							 
						 
						
							
							
								
								Add entry.  
							
							... 
							
							
							
							llvm-svn: 33723 
							
						 
						
							2007-01-31 22:11:38 +00:00  
				
					
						
							
							
								 
						
							
								1c5837dc4a 
								
							 
						 
						
							
							
								
								Thumb add sp, #imm requires the immediate value be multiple of 4. For now,  
							
							... 
							
							
							
							change preferred alignment of short, byte, bool to 4.
llvm-svn: 33722 
							
						 
						
							2007-01-31 22:08:40 +00:00  
				
					
						
							
							
								 
						
							
								ffe1d9f7fa 
								
							 
						 
						
							
							
								
								Update comment.  
							
							... 
							
							
							
							llvm-svn: 33721 
							
						 
						
							2007-01-31 22:06:44 +00:00  
				
					
						
							
							
								 
						
							
								0584836340 
								
							 
						 
						
							
							
								
								Thumb asm syntax does not want 's' suffix for flag setting opcodes.  
							
							... 
							
							
							
							llvm-svn: 33717 
							
						 
						
							2007-01-31 20:12:31 +00:00  
				
					
						
							
							
								 
						
							
								1f3fc4b3f0 
								
							 
						 
						
							
							
								
								When determining whether a pc relative branch / load displacement fits in the  
							
							... 
							
							
							
							instruction field, adjust it for PC value (4 for thumb, 8 for arm).
llvm-svn: 33711 
							
						 
						
							2007-01-31 19:57:44 +00:00  
				
					
						
							
							
								 
						
							
								7169bd8784 
								
							 
						 
						
							
							
								
								Some comments.  
							
							... 
							
							
							
							llvm-svn: 33707 
							
						 
						
							2007-01-31 18:29:27 +00:00  
				
					
						
							
							
								 
						
							
								456928bbbc 
								
							 
						 
						
							
							
								
								ConstPool island bug: watch out for cases where UserMI is the last MI of the BB.  
							
							... 
							
							
							
							llvm-svn: 33706 
							
						 
						
							2007-01-31 18:19:07 +00:00  
				
					
						
							
							
								 
						
							
								7ae4f5599e 
								
							 
						 
						
							
							
								
								ARM fix: Miscompilation when frame pointer can't be eliminated. Uninitialized frame pointer register is used.  
							
							... 
							
							
							
							llvm-svn: 33703 
							
						 
						
							2007-01-31 13:12:46 +00:00  
				
					
						
							
							
								 
						
							
								143576ddd2 
								
							 
						 
						
							
							
								
								Specify the right CC for comparison libcalls.  
							
							... 
							
							
							
							llvm-svn: 33702 
							
						 
						
							2007-01-31 09:30:58 +00:00  
				
					
						
							
							
								 
						
							
								491fcdb49b 
								
							 
						 
						
							
							
								
								Observe -soft-float.  
							
							... 
							
							
							
							llvm-svn: 33699 
							
						 
						
							2007-01-31 08:40:13 +00:00  
				
					
						
							
							
								 
						
							
								345877e77c 
								
							 
						 
						
							
							
								
								- Added Thumb constpool island support.  
							
							... 
							
							
							
							- Islands are inserted right after the user MI since thumb LDR cannot encode
  negative offset.
llvm-svn: 33690 
							
						 
						
							2007-01-31 02:22:22 +00:00  
				
					
						
							
							
								 
						
							
								dd7a688bb8 
								
							 
						 
						
							
							
								
								During PEI, if the immediate value of sp + offset is too large (i.e. something  
							
							... 
							
							
							
							that would require > 3 instructions to materialize), load the immediate from a
constpool entry.
llvm-svn: 33667 
							
						 
						
							2007-01-30 23:01:46 +00:00  
				
					
						
							
							
								 
						
							
								83f35170fa 
								
							 
						 
						
							
							
								
								- Fix codegen for pc relative constant (e.g. JT) in thumb mode:  
							
							... 
							
							
							
							.set PCRELV0, (LJTI1_0_0-(LPCRELL0+4))
LPCRELL0:
        add r1, pc, #PCRELV0
This is not legal since add r1, pc, #c requires the constant be a multiple of 4.
Do the following instead:
        .set PCRELV0, (LJTI1_0_0-(LPCRELL0+4))
LPCRELL0:
        mov r1, #PCRELV0
        add r1, pc
- In thumb mode, it's not possible to use .set generate a pc relative stub
  address. The stub is ARM code which is in a different section from the thumb
  code. Load the value from a constpool instead.
- Some asm printing clean up.
llvm-svn: 33664 
							
						 
						
							2007-01-30 20:37:08 +00:00  
				
					
						
							
							
								 
						
							
								5301e7c605 
								
							 
						 
						
							
							
								
								For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoid  
							
							... 
							
							
							
							confusion with external linkage types.
llvm-svn: 33663 
							
						 
						
							2007-01-30 20:08:39 +00:00  
				
					
						
							
							
								 
						
							
								95b85e34ff 
								
							 
						 
						
							
							
								
								Copy and paste bug.  
							
							... 
							
							
							
							llvm-svn: 33658 
							
						 
						
							2007-01-30 08:22:33 +00:00  
				
					
						
							
							
								 
						
							
								0e083d0161 
								
							 
						 
						
							
							
								
								Darwin -static should codegen static ctors / dtors to .constructor / .destructor sections.  
							
							... 
							
							
							
							llvm-svn: 33657 
							
						 
						
							2007-01-30 08:04:53 +00:00  
				
					
						
							
							
								 
						
							
								ce8fa3ed83 
								
							 
						 
						
							
							
								
								Misseed thumb jumptable branch.  
							
							... 
							
							
							
							llvm-svn: 33656 
							
						 
						
							2007-01-30 08:03:06 +00:00  
				
					
						
							
							
								 
						
							
								e43ca022bf 
								
							 
						 
						
							
							
								
								In thumb mode, round up stack frame size to multiple of 4 since add/sub  
							
							... 
							
							
							
							sp, imm instructions implicitly multiply the offset by 4.
llvm-svn: 33653 
							
						 
						
							2007-01-30 02:57:02 +00:00  
				
					
						
							
							
								 
						
							
								c419d983d6 
								
							 
						 
						
							
							
								
								Thumb eliminateFrameIndex fixes.  
							
							... 
							
							
							
							llvm-svn: 33652 
							
						 
						
							2007-01-30 02:36:01 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								7fa6964dc2 
								
							 
						 
						
							
							
								
								- In thumb mode, if size of MachineFunction is >= 2048, force LR to be  
							
							... 
							
							
							
							spilled (if it is not already).
- If LR is spilled, use BL to implement far jumps. LR is not used as a GPR
  in thumb mode so it can be clobbered if it is properly spilled / restored
  in prologue / epilogue.
- If LR is force spilled but no far jump has been emitted, try undo'ing the
  spill by:
  push lr -> delete
  pop pc -> bx lr
llvm-svn: 33650 
							
						 
						
							2007-01-30 01:18:38 +00:00  
				
					
						
							
							
								 
						
							
								863736b0ad 
								
							 
						 
						
							
							
								
								Use BL to implement Thumb far jumps.  
							
							... 
							
							
							
							llvm-svn: 33649 
							
						 
						
							2007-01-30 01:13:37 +00:00  
				
					
						
							
							
								 
						
							
								760c68b8af 
								
							 
						 
						
							
							
								
								Factor GetInstSize() out of constpool island pass.  
							
							... 
							
							
							
							llvm-svn: 33644 
							
						 
						
							2007-01-29 23:45:17 +00:00  
				
					
						
							
							
								 
						
							
								eda5997cc8 
								
							 
						 
						
							
							
								
								Finish off bug 680, allowing targets to custom lower frame and return  
							
							... 
							
							
							
							address nodes.
llvm-svn: 33636 
							
						 
						
							2007-01-29 22:58:52 +00:00  
				
					
						
							
							
								 
						
							
								8953edc8a5 
								
							 
						 
						
							
							
								
								Comment.  
							
							... 
							
							
							
							llvm-svn: 33633 
							
						 
						
							2007-01-29 22:23:02 +00:00  
				
					
						
							
							
								 
						
							
								43e8518d8b 
								
							 
						 
						
							
							
								
								Remember if LR register has been spilled in this function.  
							
							... 
							
							
							
							llvm-svn: 33632 
							
						 
						
							2007-01-29 22:22:24 +00:00  
				
					
						
							
							
								 
						
							
								037c867b54 
								
							 
						 
						
							
							
								
								Propagate changes from my local tree. This patch includes:  
							
							... 
							
							
							
							1. New parameter attribute called 'inreg'. It has meaning "place this
parameter in registers, if possible". This is some generalization of
gcc's regparm(n) attribute. It's currently used only in X86-32 backend.
2. Completely rewritten CC handling/lowering code inside X86 backend.
Merged stdcall + c CCs and fastcall + fast CC.
3. Dropped CSRET CC. We cannot add struct return variant for each
target-specific CC (e.g. stdcall + csretcc and so on).
4. Instead of CSRET CC introduced 'sret' parameter attribute. Setting in
on first attribute has meaning 'This is hidden pointer to structure
return. Handle it gently'.
5. Fixed small bug in llvm-extract + add new feature to
FunctionExtraction pass, which relinks all internal-linkaged callees
from deleted function to external linkage. This will allow further
linking everything together.
NOTEs: 1. Documentation will be updated soon.
       2. llvm-upgrade should be improved to translate csret => sret.
          Before this, there will be some unexpected test fails.
llvm-svn: 33597 
							
						 
						
							2007-01-28 13:31:35 +00:00  
				
					
						
							
							
								 
						
							
								0cd49bc8a2 
								
							 
						 
						
							
							
								
								New entry.  
							
							... 
							
							
							
							llvm-svn: 33569 
							
						 
						
							2007-01-27 02:33:22 +00:00  
				
					
						
							
							
								 
						
							
								0701c5a074 
								
							 
						 
						
							
							
								
								Thumb jumptable support.  
							
							... 
							
							
							
							llvm-svn: 33568 
							
						 
						
							2007-01-27 02:29:45 +00:00  
				
					
						
							
							
								 
						
							
								f40b9006a8 
								
							 
						 
						
							
							
								
								Thumb add / sub with carry.  
							
							... 
							
							
							
							llvm-svn: 33562 
							
						 
						
							2007-01-27 00:07:15 +00:00  
				
					
						
							
							
								 
						
							
								7d47719af0 
								
							 
						 
						
							
							
								
								Some asm directives fixes for ELF.  
							
							... 
							
							
							
							Now we can compile llvm-gcc on arm-linux-gnueabi!
llvm-svn: 33558 
							
						 
						
							2007-01-26 23:24:43 +00:00  
				
					
						
							
							
								 
						
							
								add7f164a1 
								
							 
						 
						
							
							
								
								Represent tADDspi and tSUBspi as two-address instructions.  
							
							... 
							
							
							
							llvm-svn: 33551 
							
						 
						
							2007-01-26 21:33:19 +00:00  
				
					
						
							
							
								 
						
							
								c56315c2b5 
								
							 
						 
						
							
							
								
								Change the MachineDebugInfo to MachineModuleInfo to better reflect usage  
							
							... 
							
							
							
							for debugging and exception handling.
llvm-svn: 33550 
							
						 
						
							2007-01-26 21:22:28 +00:00  
				
					
						
							
							
								 
						
							
								d45cd5eb81 
								
							 
						 
						
							
							
								
								Fix Data16bitsDirective for ELF.  
							
							... 
							
							
							
							llvm-svn: 33549 
							
						 
						
							2007-01-26 21:20:45 +00:00  
				
					
						
							
							
								 
						
							
								3c9dc6bd46 
								
							 
						 
						
							
							
								
								Conditional branch being fixed up is not the last MI in the BB, there is a  
							
							... 
							
							
							
							unconditional branch following it. Simply invert the condition and swap
destinations if the conditional branch can reach the destination of the
unconditional branch:
beq L1
b   L2
=>
bne L2
b   L1
llvm-svn: 33548 
							
						 
						
							2007-01-26 20:38:26 +00:00  
				
					
						
							
							
								 
						
							
								aa26c1ab9d 
								
							 
						 
						
							
							
								
								If the constant pool value is a extern weak symbol, emit the weak reference.  
							
							... 
							
							
							
							llvm-svn: 33543 
							
						 
						
							2007-01-26 19:51:32 +00:00  
				
					
						
							
							
								 
						
							
								d02d75c295 
								
							 
						 
						
							
							
								
								extload -> zextload  
							
							... 
							
							
							
							llvm-svn: 33542 
							
						 
						
							2007-01-26 19:13:16 +00:00  
				
					
						
							
							
								 
						
							
								f9e5445ed4 
								
							 
						 
						
							
							
								
								Make LABEL a builtin opcode.  
							
							... 
							
							
							
							llvm-svn: 33537 
							
						 
						
							2007-01-26 14:34:52 +00:00  
				
					
						
							
							
								 
						
							
								1e270b639d 
								
							 
						 
						
							
							
								
								SplitBlockBeforeInstr() insert a unconditional branch to the next BB. This  
							
							... 
							
							
							
							is unnecessary when we are fixing up a conditional branch since we will be
adding a unconditional branch to the destination of the original branch.
llvm-svn: 33517 
							
						 
						
							2007-01-26 02:02:39 +00:00  
				
					
						
							
							
								 
						
							
								db7f0591f3 
								
							 
						 
						
							
							
								
								Need to scan the function for branches even if there aren't any constants.  
							
							... 
							
							
							
							llvm-svn: 33515 
							
						 
						
							2007-01-26 01:04:44 +00:00  
				
					
						
							
							
								 
						
							
								1d138989f4 
								
							 
						 
						
							
							
								
								Forgot to update this.  
							
							... 
							
							
							
							llvm-svn: 33512 
							
						 
						
							2007-01-25 23:31:04 +00:00  
				
					
						
							
							
								 
						
							
								010ae386b8 
								
							 
						 
						
							
							
								
								Add comment, fix typo, reduce memory usage, etc.  
							
							... 
							
							
							
							llvm-svn: 33510 
							
						 
						
							2007-01-25 23:18:59 +00:00  
				
					
						
							
							
								 
						
							
								fa824b9f73 
								
							 
						 
						
							
							
								
								I am an idiot.  
							
							... 
							
							
							
							llvm-svn: 33509 
							
						 
						
							2007-01-25 23:18:16 +00:00  
				
					
						
							
							
								 
						
							
								4f7d37fe04 
								
							 
						 
						
							
							
								
								Fix elf object definition.  
							
							... 
							
							
							
							llvm-svn: 33502 
							
						 
						
							2007-01-25 20:11:04 +00:00  
				
					
						
							
							
								 
						
							
								417260dc11 
								
							 
						 
						
							
							
								
								Doh. Skip JT branches.  
							
							... 
							
							
							
							llvm-svn: 33501 
							
						 
						
							2007-01-25 19:43:52 +00:00  
				
					
						
							
							
								 
						
							
								22c7cf504e 
								
							 
						 
						
							
							
								
								Added (preliminary) branch shortening capability to constantpool island pass.  
							
							... 
							
							
							
							llvm-svn: 33497 
							
						 
						
							2007-01-25 03:12:46 +00:00  
				
					
						
							
							
								 
						
							
								c1a1bd18e3 
								
							 
						 
						
							
							
								
								Getting rid uses of evil std::set<>  
							
							... 
							
							
							
							llvm-svn: 33496 
							
						 
						
							2007-01-25 03:07:27 +00:00  
				
					
						
							
							
								 
						
							
								1526ba50d9 
								
							 
						 
						
							
							
								
								Use PC relative ldr to load from a constantpool in Thumb mode.  
							
							... 
							
							
							
							llvm-svn: 33484 
							
						 
						
							2007-01-24 08:53:17 +00:00  
				
					
						
							
							
								 
						
							
								8942551dee 
								
							 
						 
						
							
							
								
								Allow [ fi#c, imm ] as ARM load / store addresses.  
							
							... 
							
							
							
							llvm-svn: 33474 
							
						 
						
							2007-01-24 02:45:25 +00:00  
				
					
						
							
							
								 
						
							
								139edae4a2 
								
							 
						 
						
							
							
								
								Various Thumb mode load / store isel bug fixes.  
							
							... 
							
							
							
							llvm-svn: 33472 
							
						 
						
							2007-01-24 02:21:22 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								2cfbcce102 
								
							 
						 
						
							
							
								
								Darwin HiddenDirective is .private_extern.  
							
							... 
							
							
							
							llvm-svn: 33465 
							
						 
						
							2007-01-23 19:06:03 +00:00  
				
					
						
							
							
								 
						
							
								6730e12ae4 
								
							 
						 
						
							
							
								
								PEI is now responsible for adding MaxCallFrameSize to frame size and align the stack. Each target can further adjust the frame size if necessary.  
							
							... 
							
							
							
							llvm-svn: 33460 
							
						 
						
							2007-01-23 09:38:11 +00:00  
				
					
						
							
							
								 
						
							
								16e58be1bc 
								
							 
						 
						
							
							
								
								hasFP() is now a virtual method of MRegisterInfo.  
							
							... 
							
							
							
							llvm-svn: 33455 
							
						 
						
							2007-01-23 00:57:47 +00:00  
				
					
						
							
							
								 
						
							
								107015e2fa 
								
							 
						 
						
							
							
								
								ARM AAPCS abi (Linux, etc.) requires 8-byte double / long alignment; Mac  
							
							... 
							
							
							
							requires 4-bytes alignment.
llvm-svn: 33448 
							
						 
						
							2007-01-22 23:13:01 +00:00  
				
					
						
							
							
								 
						
							
								4abf2e7bcc 
								
							 
						 
						
							
							
								
								Double and Long preferred alignment is 4 for Darwin, 8 for Linux.  
							
							... 
							
							
							
							llvm-svn: 33440 
							
						 
						
							2007-01-22 21:24:13 +00:00  
				
					
						
							
							
								 
						
							
								52189b5805 
								
							 
						 
						
							
							
								
								Use bl to call Thumb fuctions directly.  
							
							... 
							
							
							
							llvm-svn: 33433 
							
						 
						
							2007-01-22 19:40:10 +00:00  
				
					
						
							
							
								 
						
							
								e3d8e42e27 
								
							 
						 
						
							
							
								
								Round up stack to multiple of alignment only if it's a leaf function without alloca.  
							
							... 
							
							
							
							llvm-svn: 33401 
							
						 
						
							2007-01-20 10:22:33 +00:00  
				
					
						
							
							
								 
						
							
								a9af4be5ac 
								
							 
						 
						
							
							
								
								Prologue and epilogue bugs for non-Darwin targets.  
							
							... 
							
							
							
							llvm-svn: 33390 
							
						 
						
							2007-01-20 03:24:07 +00:00  
				
					
						
							
							
								 
						
							
								aa24f08926 
								
							 
						 
						
							
							
								
								Clean up ARM PEI code.  
							
							... 
							
							
							
							llvm-svn: 33389 
							
						 
						
							2007-01-20 02:09:25 +00:00  
				
					
						
							
							
								 
						
							
								77c15ded10 
								
							 
						 
						
							
							
								
								Code clean up. Use def : pat instead of defining new instructions.  
							
							... 
							
							
							
							llvm-svn: 33368 
							
						 
						
							2007-01-19 20:27:35 +00:00  
				
					
						
							
							
								 
						
							
								bf216c364f 
								
							 
						 
						
							
							
								
								isDarwin -> isTargetDarwin  
							
							... 
							
							
							
							llvm-svn: 33366 
							
						 
						
							2007-01-19 19:28:01 +00:00  
				
					
						
							
							
								 
						
							
								1199c2d653 
								
							 
						 
						
							
							
								
								Restructure code a bit to make use of continue (simplifying things).  Generalize  
							
							... 
							
							
							
							the .zerofill directive emission to not be darwin-specific.
llvm-svn: 33365 
							
						 
						
							2007-01-19 19:25:36 +00:00  
				
					
						
							
							
								 
						
							
								023c7d667d 
								
							 
						 
						
							
							
								
								Darwin doesn't support .bss, but it does have .zerofill  
							
							... 
							
							
							
							llvm-svn: 33364 
							
						 
						
							2007-01-19 19:23:47 +00:00  
				
					
						
							
							
								 
						
							
								181fe36d6c 
								
							 
						 
						
							
							
								
								Introduce TargetType's ELF and Darwin.  
							
							... 
							
							
							
							llvm-svn: 33363 
							
						 
						
							2007-01-19 19:22:40 +00:00  
				
					
						
							
							
								 
						
							
								df62250cee 
								
							 
						 
						
							
							
								
								Modify emission of jump tables on darwin to emit an extra "l" label that  
							
							... 
							
							
							
							delimits the boundaries of jump tables.  This lets the linker's dead code
stripping optimization do a better job.
llvm-svn: 33362 
							
						 
						
							2007-01-19 18:59:56 +00:00  
				
					
						
							
							
								 
						
							
								75aaf1fa6a 
								
							 
						 
						
							
							
								
								Fix section definition.  
							
							... 
							
							
							
							llvm-svn: 33359 
							
						 
						
							2007-01-19 17:33:22 +00:00  
				
					
						
							
							
								 
						
							
								10043e215b 
								
							 
						 
						
							
							
								
								ARM backend contribution from Apple.  
							
							... 
							
							
							
							llvm-svn: 33353 
							
						 
						
							2007-01-19 07:51:42 +00:00  
				
					
						
							
							
								 
						
							
								901d9e65f6 
								
							 
						 
						
							
							
								
								Don't add or sub zero to sp.  
							
							... 
							
							
							
							llvm-svn: 33142 
							
						 
						
							2007-01-12 20:52:27 +00:00  
				
					
						
							
							
								 
						
							
								c4235e5521 
								
							 
						 
						
							
							
								
								Build constants using instructions mov/orr or mvn/eor.  
							
							... 
							
							
							
							llvm-svn: 33141 
							
						 
						
							2007-01-12 20:35:49 +00:00  
				
					
						
							
							
								 
						
							
								7284073ec2 
								
							 
						 
						
							
							
								
								Expand SELECT (f32/f64) and FCOPYSIGN (f32/f64).  
							
							... 
							
							
							
							llvm-svn: 32870 
							
						 
						
							2007-01-04 14:01:38 +00:00  
				
					
						
							
							
								 
						
							
								74b46e8c05 
								
							 
						 
						
							
							
								
								Fix naming inconsistency.  
							
							... 
							
							
							
							llvm-svn: 32823 
							
						 
						
							2007-01-02 21:33:40 +00:00  
				
					
						
							
							
								 
						
							
								fd68718467 
								
							 
						 
						
							
							
								
								implement missing compares  
							
							... 
							
							
							
							patch by Lauro
bug fixed by me
llvm-svn: 32795 
							
						 
						
							2006-12-31 18:52:39 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								64493fb30d 
								
							 
						 
						
							
							
								
								fix comment  
							
							... 
							
							
							
							llvm-svn: 32767 
							
						 
						
							2006-12-29 14:28:12 +00:00  
				
					
						
							
							
								 
						
							
								8ab8f7df6f 
								
							 
						 
						
							
							
								
								Define StaticCtorsSection and StaticDtorsSection for ARM.  
							
							... 
							
							
							
							llvm-svn: 32763 
							
						 
						
							2006-12-28 13:13:00 +00:00  
				
					
						
							
							
								 
						
							
								7251e57ff8 
								
							 
						 
						
							
							
								
								Implement SELECT_CC (f32/f64) for ARM.  
							
							... 
							
							
							
							llvm-svn: 32762 
							
						 
						
							2006-12-28 13:11:14 +00:00  
				
					
						
							
							
								 
						
							
								865b979833 
								
							 
						 
						
							
							
								
								remove duplicated line  
							
							... 
							
							
							
							bug noticed by Lauro
llvm-svn: 32761 
							
						 
						
							2006-12-28 12:51:40 +00:00  
				
					
						
							
							
								 
						
							
								d0ced3f1e8 
								
							 
						 
						
							
							
								
								This patch defines extloadi1 and fixes an internal compiler error on  
							
							... 
							
							
							
							arm.
llvm-svn: 32760 
							
						 
						
							2006-12-26 19:30:42 +00:00  
				
					
						
							
							
								 
						
							
								5cfa5ef912 
								
							 
						 
						
							
							
								
								Fix for ARM weak symbols, patch by Lauro Ramos Venancio!  
							
							... 
							
							
							
							llvm-svn: 32740 
							
						 
						
							2006-12-21 22:59:58 +00:00  
				
					
						
							
							
								 
						
							
								1ef9cd400d 
								
							 
						 
						
							
							
								
								eliminate static ctors for Statistic objects.  
							
							... 
							
							
							
							llvm-svn: 32703 
							
						 
						
							2006-12-19 22:59:26 +00:00  
				
					
						
							
							
								 
						
							
								3ab9256d19 
								
							 
						 
						
							
							
								
								macros -> Inline functions  
							
							... 
							
							
							
							Lauros's patch
llvm-svn: 32656 
							
						 
						
							2006-12-18 11:07:09 +00:00  
				
					
						
							
							
								 
						
							
								d7998d0e6d 
								
							 
						 
						
							
							
								
								move ExtWeakSymbols to AsmPrinter  
							
							... 
							
							
							
							llvm-svn: 32648 
							
						 
						
							2006-12-18 03:37:18 +00:00  
				
					
						
							
							
								 
						
							
								3b7544e24c 
								
							 
						 
						
							
							
								
								avoid using a constant table when a constant can be used inline  
							
							... 
							
							
							
							llvm-svn: 32580 
							
						 
						
							2006-12-14 18:58:37 +00:00  
				
					
						
							
							
								 
						
							
								09e2921d9a 
								
							 
						 
						
							
							
								
								Avoid creating invalid sub/add instructions on the prolog/epilog  
							
							... 
							
							
							
							patch by Lauro
llvm-svn: 32577 
							
						 
						
							2006-12-14 13:31:27 +00:00  
				
					
						
							
							
								 
						
							
								67d1c8ae0e 
								
							 
						 
						
							
							
								
								more general matching of the MVN instruction  
							
							... 
							
							
							
							llvm-svn: 32484 
							
						 
						
							2006-12-12 17:10:13 +00:00  
				
					
						
							
							
								 
						
							
								470d61d82c 
								
							 
						 
						
							
							
								
								don't use "ordinary" addressing mode 1 when mvn is appropriate  
							
							... 
							
							
							
							llvm-svn: 32482 
							
						 
						
							2006-12-12 14:03:29 +00:00  
				
					
						
							
							
								 
						
							
								9fa0a26808 
								
							 
						 
						
							
							
								
								use MVN to handle small negative constants  
							
							... 
							
							
							
							llvm-svn: 32459 
							
						 
						
							2006-12-12 01:03:11 +00:00  
				
					
						
							
							
								 
						
							
								1bbe581d0f 
								
							 
						 
						
							
							
								
								add mvn  
							
							... 
							
							
							
							llvm-svn: 32454 
							
						 
						
							2006-12-12 00:37:38 +00:00  
				
					
						
							
							
								 
						
							
								eb3e8d75df 
								
							 
						 
						
							
							
								
								add note  
							
							... 
							
							
							
							llvm-svn: 32452 
							
						 
						
							2006-12-11 23:56:10 +00:00  
				
					
						
							
							
								 
						
							
								b8ada08b26 
								
							 
						 
						
							
							
								
								.align is in bits  
							
							... 
							
							
							
							.comm is in bytes
:-(
llvm-svn: 32408 
							
						 
						
							2006-12-10 02:53:14 +00:00  
				
					
						
							
							
								 
						
							
								d12d2250a7 
								
							 
						 
						
							
							
								
								%progbits not @progbits  
							
							... 
							
							
							
							llvm-svn: 32376 
							
						 
						
							2006-12-08 22:06:02 +00:00  
				
					
						
							
							
								 
						
							
								94f29f129d 
								
							 
						 
						
							
							
								
								add \"aw\",@progbits" to ctors and dtors  
							
							... 
							
							
							
							llvm-svn: 32373 
							
						 
						
							2006-12-08 21:24:58 +00:00  
				
					
						
							
							
								 
						
							
								87f4382163 
								
							 
						 
						
							
							
								
								fix truncstorei1  
							
							... 
							
							
							
							llvm-svn: 32364 
							
						 
						
							2006-12-08 18:41:21 +00:00  
				
					
						
							
							
								 
						
							
								265fa68bd8 
								
							 
						 
						
							
							
								
								fix alignment  
							
							... 
							
							
							
							llvm-svn: 32337 
							
						 
						
							2006-12-07 22:38:06 +00:00  
				
					
						
							
							
								 
						
							
								9bfb1e1f29 
								
							 
						 
						
							
							
								
								What should be the last unnecessary <iostream>s in the library.  
							
							... 
							
							
							
							llvm-svn: 32333 
							
						 
						
							2006-12-07 22:21:48 +00:00  
				
					
						
							
							
								 
						
							
								219a796475 
								
							 
						 
						
							
							
								
								make sure that we don't use a common symbol if a section was specified  
							
							... 
							
							
							
							llvm-svn: 32310 
							
						 
						
							2006-12-07 18:33:58 +00:00  
				
					
						
							
							
								 
						
							
								700b873130 
								
							 
						 
						
							
							
								
								Detemplatize the Statistic class.  The only type it is instantiated with  
							
							... 
							
							
							
							is 'unsigned'.
llvm-svn: 32279 
							
						 
						
							2006-12-06 17:46:33 +00:00  
				
					
						
							
							
								 
						
							
								776abee608 
								
							 
						 
						
							
							
								
								print weak references  
							
							... 
							
							
							
							llvm-svn: 32276 
							
						 
						
							2006-12-06 13:35:10 +00:00  
				
					
						
							
							
								 
						
							
								81cf22d873 
								
							 
						 
						
							
							
								
								These asm printers shouldn't use assembly/writer.h  
							
							... 
							
							
							
							llvm-svn: 32262 
							
						 
						
							2006-12-06 06:13:25 +00:00  
				
					
						
							
							
								 
						
							
								b5dee63958 
								
							 
						 
						
							
							
								
								expand memmove and memcpy  
							
							... 
							
							
							
							llvm-svn: 32226 
							
						 
						
							2006-12-05 17:57:23 +00:00  
				
					
						
							
							
								 
						
							
								96fd6447c7 
								
							 
						 
						
							
							
								
								add support for the "r" asm constraint  
							
							... 
							
							
							
							patch by Lauro Ramos Venancio
llvm-svn: 32224 
							
						 
						
							2006-12-05 17:37:31 +00:00  
				
					
						
							
							
								 
						
							
								2369a024d7 
								
							 
						 
						
							
							
								
								add support for weak linkage  
							
							... 
							
							
							
							llvm-svn: 32222 
							
						 
						
							2006-12-05 17:00:17 +00:00  
				
					
						
							
							
								 
						
							
								20350c4025 
								
							 
						 
						
							
							
								
								Change MachineInstr ctor's to take a TargetInstrDescriptor reference instead  
							
							... 
							
							
							
							of opcode and number of operands.
llvm-svn: 31947 
							
						 
						
							2006-11-27 23:37:22 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								6cd0909da7 
								
							 
						 
						
							
							
								
								Match tblegen changes.  
							
							... 
							
							
							
							llvm-svn: 31571 
							
						 
						
							2006-11-08 20:34:28 +00:00  
				
					
						
							
							
								 
						
							
								708cb60588 
								
							 
						 
						
							
							
								
								initial implementation of addressing mode 2  
							
							... 
							
							
							
							TODO: fix lea_addri
llvm-svn: 31552 
							
						 
						
							2006-11-08 17:07:32 +00:00  
				
					
						
							
							
								 
						
							
								9ac6442db6 
								
							 
						 
						
							
							
								
								remove dead/redundant vars  
							
							... 
							
							
							
							llvm-svn: 31435 
							
						 
						
							2006-11-03 23:48:56 +00:00  
				
					
						
							
							
								 
						
							
								4ece5c04f4 
								
							 
						 
						
							
							
								
								revert previous patch  
							
							... 
							
							
							
							llvm-svn: 31411 
							
						 
						
							2006-11-03 03:08:28 +00:00  
				
					
						
							
							
								 
						
							
								38b162c1d2 
								
							 
						 
						
							
							
								
								add createCFGSimplificationPass to ARMTargetMachine::addInstSelector  
							
							... 
							
							
							
							llvm-svn: 31400 
							
						 
						
							2006-11-03 01:39:25 +00:00  
				
					
						
							
							
								 
						
							
								ac8668d62f 
								
							 
						 
						
							
							
								
								move ARMCondCodeToString to ARMAsmPrinter.cpp  
							
							... 
							
							
							
							remove unused variables from lowerCall
llvm-svn: 31378 
							
						 
						
							2006-11-02 15:00:02 +00:00  
				
					
						
							
							
								 
						
							
								3576405a26 
								
							 
						 
						
							
							
								
								print null values in bss  
							
							... 
							
							
							
							llvm-svn: 31349 
							
						 
						
							2006-11-01 14:26:44 +00:00  
				
					
						
							
							
								 
						
							
								0cd8d14c7c 
								
							 
						 
						
							
							
								
								implement  zextload bool and truncstore bool  
							
							... 
							
							
							
							llvm-svn: 31348 
							
						 
						
							2006-11-01 14:13:27 +00:00  
				
					
						
							
							
								 
						
							
								4e825336a0 
								
							 
						 
						
							
							
								
								add support for calling functions when the caller has variable sized objects  
							
							... 
							
							
							
							llvm-svn: 31312 
							
						 
						
							2006-10-31 13:03:26 +00:00  
				
					
						
							
							
								 
						
							
								0d41d19427 
								
							 
						 
						
							
							
								
								All targets expand BR_JT for now.  
							
							... 
							
							
							
							llvm-svn: 31294 
							
						 
						
							2006-10-30 08:02:39 +00:00  
				
					
						
							
							
								 
						
							
								a23166d6a4 
								
							 
						 
						
							
							
								
								initial support for frame pointers  
							
							... 
							
							
							
							llvm-svn: 31197 
							
						 
						
							2006-10-26 13:31:26 +00:00  
				
					
						
							
							
								 
						
							
								bd29281e97 
								
							 
						 
						
							
							
								
								expand ISD::VACOPY  
							
							... 
							
							
							
							llvm-svn: 31170 
							
						 
						
							2006-10-24 20:15:21 +00:00  
				
					
						
							
							
								 
						
							
								ed32883b27 
								
							 
						 
						
							
							
								
								fix warning about missing newline at end of file  
							
							... 
							
							
							
							llvm-svn: 31162 
							
						 
						
							2006-10-24 17:07:11 +00:00  
				
					
						
							
							
								 
						
							
								aaeede0aa2 
								
							 
						 
						
							
							
								
								implement uncond branch insertion, mark branches with isBranch.  
							
							... 
							
							
							
							llvm-svn: 31160 
							
						 
						
							2006-10-24 16:47:57 +00:00  
				
					
						
							
							
								 
						
							
								b43efe86f5 
								
							 
						 
						
							
							
								
								implement STRB and STRH  
							
							... 
							
							
							
							llvm-svn: 31138 
							
						 
						
							2006-10-23 20:34:27 +00:00  
				
					
						
							
							
								 
						
							
								cd5f662c7b 
								
							 
						 
						
							
							
								
								expand ISD::MEMSET  
							
							... 
							
							
							
							llvm-svn: 31137 
							
						 
						
							2006-10-23 20:08:22 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								336d62e99a 
								
							 
						 
						
							
							
								
								use Pat to implement extloadi8 and extloadi16  
							
							... 
							
							
							
							llvm-svn: 31052 
							
						 
						
							2006-10-19 17:05:03 +00:00  
				
					
						
							
							
								 
						
							
								f8274c0318 
								
							 
						 
						
							
							
								
								implement undef  
							
							... 
							
							
							
							llvm-svn: 31049 
							
						 
						
							2006-10-19 13:45:00 +00:00  
				
					
						
							
							
								 
						
							
								ea67b973c2 
								
							 
						 
						
							
							
								
								print common symbols  
							
							... 
							
							
							
							llvm-svn: 31048 
							
						 
						
							2006-10-19 13:30:40 +00:00  
				
					
						
							
							
								 
						
							
								ff62819e2f 
								
							 
						 
						
							
							
								
								implement extloadi8 and extloadi16  
							
							... 
							
							
							
							llvm-svn: 31047 
							
						 
						
							2006-10-19 12:45:04 +00:00  
				
					
						
							
							
								 
						
							
								3c563c5072 
								
							 
						 
						
							
							
								
								expand SIGN_EXTEND_INREG  
							
							... 
							
							
							
							llvm-svn: 31046 
							
						 
						
							2006-10-19 12:06:50 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								bad440742e 
								
							 
						 
						
							
							
								
								add blx  
							
							... 
							
							
							
							llvm-svn: 31037 
							
						 
						
							2006-10-18 16:21:43 +00:00  
				
					
						
							
							
								 
						
							
								01dd97a8aa 
								
							 
						 
						
							
							
								
								add isTerminatortto b and bcond  
							
							... 
							
							
							
							llvm-svn: 31036 
							
						 
						
							2006-10-18 16:20:57 +00:00  
				
					
						
							
							
								 
						
							
								b21e8d2e12 
								
							 
						 
						
							
							
								
								implement CallingConv::Fast as CallingConv::C  
							
							... 
							
							
							
							llvm-svn: 31034 
							
						 
						
							2006-10-18 12:03:07 +00:00  
				
					
						
							
							
								 
						
							
								ba8f296167 
								
							 
						 
						
							
							
								
								expand ISD::SDIV, ISD::UDIV, ISD::SREM and ISD::UREM  
							
							... 
							
							
							
							llvm-svn: 31014 
							
						 
						
							2006-10-17 21:05:33 +00:00  
				
					
						
							
							
								 
						
							
								3968263ca8 
								
							 
						 
						
							
							
								
								add the FPUnaryOp and DFPUnaryOp classes  
							
							... 
							
							
							
							llvm-svn: 31013 
							
						 
						
							2006-10-17 20:45:22 +00:00  
				
					
						
							
							
								 
						
							
								99bf133d58 
								
							 
						 
						
							
							
								
								add FABSS and FABSD  
							
							... 
							
							
							
							llvm-svn: 31012 
							
						 
						
							2006-10-17 20:33:13 +00:00  
				
					
						
							
							
								 
						
							
								2d7d14262a 
								
							 
						 
						
							
							
								
								remove extra [] in stores  
							
							... 
							
							
							
							llvm-svn: 31008 
							
						 
						
							2006-10-17 18:29:14 +00:00  
				
					
						
							
							
								 
						
							
								19398ec86e 
								
							 
						 
						
							
							
								
								initial implementation of addressing mode 5  
							
							... 
							
							
							
							llvm-svn: 31002 
							
						 
						
							2006-10-17 18:04:53 +00:00  
				
					
						
							
							
								 
						
							
								feb50708eb 
								
							 
						 
						
							
							
								
								add the immediate to the Offset in eliminateFrameIndex  
							
							... 
							
							
							
							llvm-svn: 30998 
							
						 
						
							2006-10-17 14:34:02 +00:00  
				
					
						
							
							
								 
						
							
								418c8e69bb 
								
							 
						 
						
							
							
								
								add FSTD and FSTS  
							
							... 
							
							
							
							llvm-svn: 30996 
							
						 
						
							2006-10-17 13:36:07 +00:00  
				
					
						
							
							
								 
						
							
								c31ee94920 
								
							 
						 
						
							
							
								
								add FCPYS and FCPYD  
							
							... 
							
							
							
							llvm-svn: 30995 
							
						 
						
							2006-10-17 13:13:23 +00:00  
				
					
						
							
							
								 
						
							
								afdd47ace4 
								
							 
						 
						
							
							
								
								add fdivs e fdivd  
							
							... 
							
							
							
							llvm-svn: 30988 
							
						 
						
							2006-10-16 21:50:04 +00:00  
				
					
						
							
							
								 
						
							
								f719c5f43d 
								
							 
						 
						
							
							
								
								expand ISD::SHL_PARTS, ISD::SRA_PARTS and ISD::SRL_PARTS  
							
							... 
							
							
							
							llvm-svn: 30987 
							
						 
						
							2006-10-16 21:10:32 +00:00  
				
					
						
							
							
								 
						
							
								e341d60f53 
								
							 
						 
						
							
							
								
								define the DFPBinOp class  
							
							... 
							
							
							
							llvm-svn: 30981 
							
						 
						
							2006-10-16 18:39:22 +00:00  
				
					
						
							
							
								 
						
							
								f63752f94b 
								
							 
						 
						
							
							
								
								add the FPBinOp class  
							
							... 
							
							
							
							llvm-svn: 30980 
							
						 
						
							2006-10-16 18:32:36 +00:00  
				
					
						
							
							
								 
						
							
								b23dc14135 
								
							 
						 
						
							
							
								
								define the Addr1BinOp class  
							
							... 
							
							
							
							llvm-svn: 30979 
							
						 
						
							2006-10-16 18:18:14 +00:00  
				
					
						
							
							
								 
						
							
								203922d083 
								
							 
						 
						
							
							
								
								define the IntBinOp class and use it to implement the multiply instructions  
							
							... 
							
							
							
							llvm-svn: 30978 
							
						 
						
							2006-10-16 17:57:20 +00:00  
				
					
						
							
							
								 
						
							
								c4abf8dc5b 
								
							 
						 
						
							
							
								
								fix assembly syntax  
							
							... 
							
							
							
							llvm-svn: 30977 
							
						 
						
							2006-10-16 17:38:12 +00:00  
				
					
						
							
							
								 
						
							
								677ee8390d 
								
							 
						 
						
							
							
								
								implement LDRB, LDRSB, LDRH and LDRSH  
							
							... 
							
							
							
							llvm-svn: 30976 
							
						 
						
							2006-10-16 17:17:22 +00:00  
				
					
						
							
							
								 
						
							
								595dc4c884 
								
							 
						 
						
							
							
								
								implement smull and umull  
							
							... 
							
							
							
							llvm-svn: 30975 
							
						 
						
							2006-10-16 16:33:29 +00:00  
				
					
						
							
							
								 
						
							
								2b7f635951 
								
							 
						 
						
							
							
								
								expand ISD::BRCOND  
							
							... 
							
							
							
							llvm-svn: 30963 
							
						 
						
							2006-10-14 17:59:54 +00:00  
				
					
						
							
							
								 
						
							
								4c1baf1528 
								
							 
						 
						
							
							
								
								fix some fp condition codes  
							
							... 
							
							
							
							use non trapping comparison instructions
llvm-svn: 30962 
							
						 
						
							2006-10-14 13:42:53 +00:00  
				
					
						
							
							
								 
						
							
								ab51cf2e78 
								
							 
						 
						
							
							
								
								Merge ISD::TRUNCSTORE to ISD::STORE. Switch to using StoreSDNode.  
							
							... 
							
							
							
							llvm-svn: 30945 
							
						 
						
							2006-10-13 21:14:26 +00:00  
				
					
						
							
							
								 
						
							
								5ab3166f74 
								
							 
						 
						
							
							
								
								add FNEGS and FNEGD  
							
							... 
							
							
							
							llvm-svn: 30932 
							
						 
						
							2006-10-13 17:37:35 +00:00  
				
					
						
							
							
								 
						
							
								d6050c3149 
								
							 
						 
						
							
							
								
								add SBCS and SUBS  
							
							... 
							
							
							
							llvm-svn: 30930 
							
						 
						
							2006-10-13 17:19:20 +00:00  
				
					
						
							
							
								 
						
							
								79d9807c87 
								
							 
						 
						
							
							
								
								implement calls to functions that return long  
							
							... 
							
							
							
							llvm-svn: 30929 
							
						 
						
							2006-10-13 16:47:22 +00:00  
				
					
						
							
							
								 
						
							
								3874a168d0 
								
							 
						 
						
							
							
								
								implement unordered floating point compares  
							
							... 
							
							
							
							llvm-svn: 30928 
							
						 
						
							2006-10-13 13:14:59 +00:00  
				
					
						
							
							
								 
						
							
								8c9422c4b8 
								
							 
						 
						
							
							
								
								mark call adjustments as modifying the SP  
							
							... 
							
							
							
							llvm-svn: 30911 
							
						 
						
							2006-10-12 18:00:26 +00:00  
				
					
						
							
							
								 
						
							
								577ef7694e 
								
							 
						 
						
							
							
								
								Add properties to ComplexPattern.  
							
							... 
							
							
							
							llvm-svn: 30891 
							
						 
						
							2006-10-11 21:03:53 +00:00  
				
					
						
							
							
								 
						
							
								8429e1f6c3 
								
							 
						 
						
							
							
								
								uint <-> double conversion  
							
							... 
							
							
							
							llvm-svn: 30862 
							
						 
						
							2006-10-10 20:38:57 +00:00  
				
					
						
							
							
								 
						
							
								b5f1ff336a 
								
							 
						 
						
							
							
								
								add fp sub  
							
							... 
							
							
							
							llvm-svn: 30859 
							
						 
						
							2006-10-10 19:35:01 +00:00  
				
					
						
							
							
								 
						
							
								57d109fb08 
								
							 
						 
						
							
							
								
								add double <-> int conversion  
							
							... 
							
							
							
							llvm-svn: 30858 
							
						 
						
							2006-10-10 18:55:14 +00:00  
				
					
						
							
							
								 
						
							
								d1a4ea41c9 
								
							 
						 
						
							
							
								
								compare doubles  
							
							... 
							
							
							
							llvm-svn: 30856 
							
						 
						
							2006-10-10 16:33:47 +00:00  
				
					
						
							
							
								 
						
							
								d15c892433 
								
							 
						 
						
							
							
								
								initial support for fp compares. Unordered compares not implemented yet  
							
							... 
							
							
							
							llvm-svn: 30854 
							
						 
						
							2006-10-10 12:56:00 +00:00  
				
					
						
							
							
								 
						
							
								e71fe34d75 
								
							 
						 
						
							
							
								
								Reflects ISD::LOAD / ISD::LOADX / LoadSDNode changes.  
							
							... 
							
							
							
							llvm-svn: 30844 
							
						 
						
							2006-10-09 20:57:25 +00:00  
				
					
						
							
							
								 
						
							
								9e29ec371a 
								
							 
						 
						
							
							
								
								add float -> double and double -> float conversion  
							
							... 
							
							
							
							llvm-svn: 30835 
							
						 
						
							2006-10-09 17:50:29 +00:00  
				
					
						
							
							
								 
						
							
								396b4a6b7b 
								
							 
						 
						
							
							
								
								add ADDS and ADCS  
							
							... 
							
							
							
							llvm-svn: 30830 
							
						 
						
							2006-10-09 17:18:28 +00:00  
				
					
						
							
							
								 
						
							
								e4c3276afc 
								
							 
						 
						
							
							
								
								expand ISD::SELECT  
							
							... 
							
							
							
							llvm-svn: 30829 
							
						 
						
							2006-10-09 16:28:33 +00:00  
				
					
						
							
							
								 
						
							
								c154dacb2f 
								
							 
						 
						
							
							
								
								add a note  
							
							... 
							
							
							
							llvm-svn: 30828 
							
						 
						
							2006-10-09 14:18:33 +00:00  
				
					
						
							
							
								 
						
							
								41730922bb 
								
							 
						 
						
							
							
								
								expand ISD::EXTLOAD  
							
							... 
							
							
							
							llvm-svn: 30827 
							
						 
						
							2006-10-09 14:13:40 +00:00  
				
					
						
							
							
								 
						
							
								78d6c2bf59 
								
							 
						 
						
							
							
								
								most ARM targets are little endian  
							
							... 
							
							
							
							llvm-svn: 30826 
							
						 
						
							2006-10-09 14:12:15 +00:00  
				
					
						
							
							
								 
						
							
								b50938866b 
								
							 
						 
						
							
							
								
								implement FUITOS and FUITOD  
							
							... 
							
							
							
							llvm-svn: 30803 
							
						 
						
							2006-10-07 14:24:52 +00:00  
				
					
						
							
							
								 
						
							
								58c368bc4f 
								
							 
						 
						
							
							
								
								implement FLDD  
							
							... 
							
							
							
							llvm-svn: 30802 
							
						 
						
							2006-10-07 14:03:39 +00:00  
				
					
						
							
							
								 
						
							
								40f5dd27f0 
								
							 
						 
						
							
							
								
								implement fadds, faddd, fmuls and fmuld  
							
							... 
							
							
							
							llvm-svn: 30801 
							
						 
						
							2006-10-07 13:46:42 +00:00  
				
					
						
							
							
								 
						
							
								aa2a12f1a2 
								
							 
						 
						
							
							
								
								add optional input flag to FMRRD  
							
							... 
							
							
							
							llvm-svn: 30774 
							
						 
						
							2006-10-06 20:33:26 +00:00  
				
					
						
							
							
								 
						
							
								671f25281d 
								
							 
						 
						
							
							
								
								add support for calling functions that return double  
							
							... 
							
							
							
							llvm-svn: 30771 
							
						 
						
							2006-10-06 19:10:05 +00:00  
				
					
						
							
							
								 
						
							
								ef01656ea4 
								
							 
						 
						
							
							
								
								fix some bugs affecting functions with no arguments  
							
							... 
							
							
							
							llvm-svn: 30767 
							
						 
						
							2006-10-06 17:26:30 +00:00  
				
					
						
							
							
								 
						
							
								6024ea8383 
								
							 
						 
						
							
							
								
								fix the stack alignment  
							
							... 
							
							
							
							llvm-svn: 30766 
							
						 
						
							2006-10-06 14:29:47 +00:00  
				
					
						
							
							
								 
						
							
								5fe7909e18 
								
							 
						 
						
							
							
								
								add support for calling functions that have double arguments  
							
							... 
							
							
							
							llvm-svn: 30765 
							
						 
						
							2006-10-06 12:50:22 +00:00  
				
					
						
							
							
								 
						
							
								df9ac47e5e 
								
							 
						 
						
							
							
								
								Make use of getStore().  
							
							... 
							
							
							
							llvm-svn: 30759 
							
						 
						
							2006-10-05 23:01:46 +00:00  
				
					
						
							
							
								 
						
							
								decfeca52d 
								
							 
						 
						
							
							
								
								use a const ref for passing the vector to ArgumentLayout  
							
							... 
							
							
							
							llvm-svn: 30756 
							
						 
						
							2006-10-05 17:46:48 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								a6a570e02f 
								
							 
						 
						
							
							
								
								Pass the MachineFunction into EmitJumpTableInfo.  
							
							... 
							
							
							
							llvm-svn: 30742 
							
						 
						
							2006-10-05 03:01:21 +00:00  
				
					
						
							
							
								 
						
							
								4431699187 
								
							 
						 
						
							
							
								
								Use getSectionForFunction.  
							
							... 
							
							
							
							llvm-svn: 30740 
							
						 
						
							2006-10-05 02:49:23 +00:00  
				
					
						
							
							
								 
						
							
								68d238801c 
								
							 
						 
						
							
							
								
								Implement floating point constants  
							
							... 
							
							
							
							llvm-svn: 30704 
							
						 
						
							2006-10-03 17:27:58 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								53f78be49e 
								
							 
						 
						
							
							
								
								add floating point registers  
							
							... 
							
							
							
							implement SINT_TO_FP
llvm-svn: 30673 
							
						 
						
							2006-09-29 21:20:16 +00:00  
				
					
						
							
							
								 
						
							
								72d4c070c0 
								
							 
						 
						
							
							
								
								add a note  
							
							... 
							
							
							
							llvm-svn: 30581 
							
						 
						
							2006-09-22 11:36:17 +00:00  
				
					
						
							
							
								 
						
							
								7b700e517a 
								
							 
						 
						
							
							
								
								more condition codes  
							
							... 
							
							
							
							llvm-svn: 30567 
							
						 
						
							2006-09-21 13:06:26 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								fa7217f970 
								
							 
						 
						
							
							
								
								fix header  
							
							... 
							
							
							
							add comments
untabify
llvm-svn: 30486 
							
						 
						
							2006-09-19 16:41:40 +00:00  
				
					
						
							
							
								 
						
							
								f7d4a9900c 
								
							 
						 
						
							
							
								
								Implement a MachineFunctionPass to fix the mul instruction  
							
							... 
							
							
							
							llvm-svn: 30485 
							
						 
						
							2006-09-19 15:49:25 +00:00  
				
					
						
							
							
								 
						
							
								3130a756ef 
								
							 
						 
						
							
							
								
								add shifts to addressing mode 1  
							
							... 
							
							
							
							llvm-svn: 30291 
							
						 
						
							2006-09-13 12:09:43 +00:00  
				
					
						
							
							
								 
						
							
								9a083a4121 
								
							 
						 
						
							
							
								
								Reflects MachineConstantPoolEntry changes.  
							
							... 
							
							
							
							llvm-svn: 30279 
							
						 
						
							2006-09-12 21:04:05 +00:00  
				
					
						
							
							
								 
						
							
								c7829d62c0 
								
							 
						 
						
							
							
								
								implement SRL and MUL  
							
							... 
							
							
							
							llvm-svn: 30262 
							
						 
						
							2006-09-11 19:24:19 +00:00  
				
					
						
							
							
								 
						
							
								bccf9c2f1b 
								
							 
						 
						
							
							
								
								add the correct fallback for ARMDAGToDAGISel::SelectAddrMode1  
							
							... 
							
							
							
							llvm-svn: 30261 
							
						 
						
							2006-09-11 19:23:32 +00:00  
				
					
						
							
							
								 
						
							
								e45a79a9e2 
								
							 
						 
						
							
							
								
								partial implementation of the ARM Addressing Mode 1  
							
							... 
							
							
							
							llvm-svn: 30252 
							
						 
						
							2006-09-11 17:25:40 +00:00  
				
					
						
							
							
								 
						
							
								ecb0d686f8 
								
							 
						 
						
							
							
								
								call AsmPrinter::doInitialization in ARMAsmPrinter::doInitialization  
							
							... 
							
							
							
							llvm-svn: 30246 
							
						 
						
							2006-09-11 12:49:38 +00:00  
				
					
						
							
							
								 
						
							
								fbee8bfe48 
								
							 
						 
						
							
							
								
								Removed unnecessary Mangler creation.  
							
							... 
							
							
							
							llvm-svn: 30239 
							
						 
						
							2006-09-10 21:17:03 +00:00  
				
					
						
							
							
								 
						
							
								d11fb5d13b 
								
							 
						 
						
							
							
								
								implement shl and sra  
							
							... 
							
							
							
							llvm-svn: 30191 
							
						 
						
							2006-09-08 17:36:23 +00:00  
				
					
						
							
							
								 
						
							
								4443c7d60a 
								
							 
						 
						
							
							
								
								add the eor (xor) instruction  
							
							... 
							
							
							
							llvm-svn: 30189 
							
						 
						
							2006-09-08 16:59:47 +00:00  
				
					
						
							
							
								 
						
							
								778769aafb 
								
							 
						 
						
							
							
								
								implement unconditional branches  
							
							... 
							
							
							
							fix select.ll
llvm-svn: 30186 
							
						 
						
							2006-09-08 12:47:03 +00:00  
				
					
						
							
							
								 
						
							
								ae92ce8798 
								
							 
						 
						
							
							
								
								1. Remove condition on delete.  
							
							... 
							
							
							
							2. Protect and outline createTargetAsmInfo.
3. Misc. kruft.
llvm-svn: 30169 
							
						 
						
							2006-09-07 23:39:26 +00:00  
				
					
						
							
							
								 
						
							
								261779bb45 
								
							 
						 
						
							
							
								
								Make target asm info a property of the target machine.  
							
							... 
							
							
							
							llvm-svn: 30162 
							
						 
						
							2006-09-07 22:06:40 +00:00  
				
					
						
							
							
								 
						
							
								0e83541f8b 
								
							 
						 
						
							
							
								
								Break out target asm info into separate files.  
							
							... 
							
							
							
							llvm-svn: 30161 
							
						 
						
							2006-09-07 22:05:02 +00:00  
				
					
						
							
							
								 
						
							
								a6211dcdad 
								
							 
						 
						
							
							
								
								Separate target specific asm properties from the asm printers.  
							
							... 
							
							
							
							llvm-svn: 30126 
							
						 
						
							2006-09-06 18:34:40 +00:00  
				
					
						
							
							
								 
						
							
								abd8bcbe5e 
								
							 
						 
						
							
							
								
								add the orr instruction  
							
							... 
							
							
							
							llvm-svn: 30125 
							
						 
						
							2006-09-06 18:03:12 +00:00  
				
					
						
							
							
								 
						
							
								af23f9b5f6 
								
							 
						 
						
							
							
								
								Completely eliminate def&use operands.  Now a register operand is EITHER a  
							
							... 
							
							
							
							def operand or a use operand.
llvm-svn: 30109 
							
						 
						
							2006-09-05 02:31:13 +00:00  
				
					
						
							
							
								 
						
							
								8386105f3f 
								
							 
						 
						
							
							
								
								add support for returning 64bit values  
							
							... 
							
							
							
							llvm-svn: 30103 
							
						 
						
							2006-09-04 19:05:01 +00:00  
				
					
						
							
							
								 
						
							
								12e97307a1 
								
							 
						 
						
							
							
								
								Completely rearchitect the interface between targets and the pass manager.  
							
							... 
							
							
							
							This pass:
1. Splits TargetMachine into TargetMachine (generic targets, can be implemented
any way, like the CBE) and LLVMTargetMachine (subclass of TM that is used by
things using libcodegen and other support).
2. Instead of having each target fully populate the passmgr for file or JIT
   output, move all this to common code, and give targets hooks they can
   implement.
3. Commonalize the target population stuff between file emission and JIT
   emission.
4. All (native code) codegen stuff now happens in a FunctionPassManager, which
   paves the way for "fast -O0" stuff in the CFE later, and now LLC could
   lazily stream .bc files from disk to use less memory.
5. There are now many fewer #includes and the targets don't depend on the
   scalar xforms or libanalysis anymore (but codegen does).
6. Changing common code generator pass ordering stuff no longer requires
   touching all targets.
7. The JIT now has the option of "-fast" codegen or normal optimized codegen,
   which is now orthogonal to the fact that JIT'ing is being done.
llvm-svn: 30081 
							
						 
						
							2006-09-04 04:14:57 +00:00  
				
					
						
							
							
								 
						
							
								0fc4541c67 
								
							 
						 
						
							
							
								
								Simplify target construction.  
							
							... 
							
							
							
							llvm-svn: 30070 
							
						 
						
							2006-09-03 18:44:02 +00:00  
				
					
						
							
							
								 
						
							
								5328ba96e1 
								
							 
						 
						
							
							
								
								add the SETULT condition code  
							
							... 
							
							
							
							llvm-svn: 30067 
							
						 
						
							2006-09-03 13:19:16 +00:00  
				
					
						
							
							
								 
						
							
								c585b6919b 
								
							 
						 
						
							
							
								
								add more condition codes  
							
							... 
							
							
							
							llvm-svn: 30056 
							
						 
						
							2006-09-02 20:24:25 +00:00  
				
					
						
							
							
								 
						
							
								61413a3d72 
								
							 
						 
						
							
							
								
								Select() no longer require Result operand by reference.  
							
							... 
							
							
							
							llvm-svn: 29898 
							
						 
						
							2006-08-26 05:34:46 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								29e4875f57 
								
							 
						 
						
							
							
								
								add the "eq" condition code  
							
							... 
							
							
							
							implement a movcond instruction
llvm-svn: 29857 
							
						 
						
							2006-08-24 17:19:08 +00:00  
				
					
						
							
							
								 
						
							
								fe03fe9bf4 
								
							 
						 
						
							
							
								
								create a generic bcond instruction that has a conditional code argument  
							
							... 
							
							
							
							llvm-svn: 29856 
							
						 
						
							2006-08-24 16:13:15 +00:00  
				
					
						
							
							
								 
						
							
								e08b9853cc 
								
							 
						 
						
							
							
								
								initial support for branches  
							
							... 
							
							
							
							llvm-svn: 29854 
							
						 
						
							2006-08-24 13:45:55 +00:00  
				
					
						
							
							
								 
						
							
								ea500426d6 
								
							 
						 
						
							
							
								
								add a README.txt  
							
							... 
							
							
							
							llvm-svn: 29814 
							
						 
						
							2006-08-22 12:22:46 +00:00  
				
					
						
							
							
								 
						
							
								d0dee77718 
								
							 
						 
						
							
							
								
								initial support for select  
							
							... 
							
							
							
							llvm-svn: 29802 
							
						 
						
							2006-08-21 22:00:32 +00:00  
				
					
						
							
							
								 
						
							
								9d77f9fd24 
								
							 
						 
						
							
							
								
								add the and instruction  
							
							... 
							
							
							
							llvm-svn: 29793 
							
						 
						
							2006-08-21 13:58:59 +00:00  
				
					
						
							
							
								 
						
							
								8a675a5d09 
								
							 
						 
						
							
							
								
								call computeRegisterProperties  
							
							... 
							
							
							
							llvm-svn: 29780 
							
						 
						
							2006-08-20 01:49:49 +00:00  
				
					
						
							
							
								 
						
							
								60f1eecd3a 
								
							 
						 
						
							
							
								
								Constify some methods.  Patch provided by Anton Vayvod, thanks!  
							
							... 
							
							
							
							llvm-svn: 29756 
							
						 
						
							2006-08-17 22:00:08 +00:00  
				
					
						
							
							
								 
						
							
								c3ed77e1b9 
								
							 
						 
						
							
							
								
								add a "load effective address"  
							
							... 
							
							
							
							llvm-svn: 29748 
							
						 
						
							2006-08-17 17:09:40 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								157971b04a 
								
							 
						 
						
							
							
								
								select code like  
							
							... 
							
							
							
							ldr rx, [ry, #offset]
llvm-svn: 29664 
							
						 
						
							2006-08-14 19:01:24 +00:00  
				
					
						
							
							
								 
						
							
								ed728e8dc9 
								
							 
						 
						
							
							
								
								Eliminate use of getNode that takes a vector.  
							
							... 
							
							
							
							llvm-svn: 29614 
							
						 
						
							2006-08-11 17:38:39 +00:00  
				
					
						
							
							
								 
						
							
								c62914880f 
								
							 
						 
						
							
							
								
								elimiante use of getNode that takes vector of operands.  
							
							... 
							
							
							
							llvm-svn: 29612 
							
						 
						
							2006-08-11 17:22:35 +00:00  
				
					
						
							
							
								 
						
							
								bd1c5a8fb8 
								
							 
						 
						
							
							
								
								Match tablegen changes.  
							
							... 
							
							
							
							llvm-svn: 29604 
							
						 
						
							2006-08-11 09:08:15 +00:00  
				
					
						
							
							
								 
						
							
								81b645a76b 
								
							 
						 
						
							
							
								
								CALLSEQ_* produces chain even if that's not needed.  
							
							... 
							
							
							
							llvm-svn: 29603 
							
						 
						
							2006-08-11 09:03:33 +00:00  
				
					
						
							
							
								 
						
							
								1c41fc9b06 
								
							 
						 
						
							
							
								
								correctly set LocalAreaOffset of TargetFrameInfo  
							
							... 
							
							
							
							llvm-svn: 29589 
							
						 
						
							2006-08-09 17:37:45 +00:00  
				
					
						
							
							
								 
						
							
								f5ce475540 
								
							 
						 
						
							
							
								
								fix the spill code  
							
							... 
							
							
							
							llvm-svn: 29583 
							
						 
						
							2006-08-09 16:41:12 +00:00  
				
					
						
							
							
								 
						
							
								58159b36a3 
								
							 
						 
						
							
							
								
								fix the loading of the link register in emitepilogue  
							
							... 
							
							
							
							llvm-svn: 29580 
							
						 
						
							2006-08-09 13:15:47 +00:00  
				
					
						
							
							
								 
						
							
								8c41f99e6f 
								
							 
						 
						
							
							
								
								change the addressing mode of the str instruction to reg+imm  
							
							... 
							
							
							
							llvm-svn: 29571 
							
						 
						
							2006-08-08 20:35:03 +00:00  
				
					
						
							
							
								 
						
							
								39083e7836 
								
							 
						 
						
							
							
								
								initial support for variable number of arguments  
							
							... 
							
							
							
							llvm-svn: 29567 
							
						 
						
							2006-08-08 13:02:29 +00:00  
				
					
						
							
							
								 
						
							
								b9d34bd098 
								
							 
						 
						
							
							
								
								Match tablegen isel changes.  
							
							... 
							
							
							
							llvm-svn: 29549 
							
						 
						
							2006-08-07 22:28:20 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								a94b9e33af 
								
							 
						 
						
							
							
								
								add and use ARMISD::RET_FLAG  
							
							... 
							
							
							
							llvm-svn: 29499 
							
						 
						
							2006-08-03 17:02:20 +00:00  
				
					
						
							
							
								 
						
							
								8b7bd8264b 
								
							 
						 
						
							
							
								
								start comments with #  
							
							... 
							
							
							
							move the constant pool to .text
correctly print loads of labels
mark R0, R1, R2 and R3 as caller save
llvm-svn: 29451 
							
						 
						
							2006-08-01 18:53:10 +00:00  
				
					
						
							
							
								 
						
							
								95035cf001 
								
							 
						 
						
							
							
								
								implement LowerConstantPool and LowerGlobalAddress  
							
							... 
							
							
							
							llvm-svn: 29433 
							
						 
						
							2006-08-01 12:58:43 +00:00  
				
					
						
							
							
								 
						
							
								7cc2d19fc1 
								
							 
						 
						
							
							
								
								handle GlobalValue::InternalLinkage in doFinalization  
							
							... 
							
							
							
							llvm-svn: 29417 
							
						 
						
							2006-07-31 20:38:13 +00:00  
				
					
						
							
							
								 
						
							
								b572401bea 
								
							 
						 
						
							
							
								
								Remove InFlightSet hack. No longer needed.  
							
							... 
							
							
							
							llvm-svn: 29373 
							
						 
						
							2006-07-28 00:47:19 +00:00  
				
					
						
							
							
								 
						
							
								89e5cbd897 
								
							 
						 
						
							
							
								
								emit global constants  
							
							... 
							
							
							
							llvm-svn: 29344 
							
						 
						
							2006-07-27 11:38:51 +00:00  
				
					
						
							
							
								 
						
							
								8902fd702b 
								
							 
						 
						
							
							
								
								implement function calling of functions with up to 4 arguments  
							
							... 
							
							
							
							llvm-svn: 29274 
							
						 
						
							2006-07-25 20:17:20 +00:00  
				
					
						
							
							
								 
						
							
								976c93a110 
								
							 
						 
						
							
							
								
								implemented sub  
							
							... 
							
							
							
							correctly update the stack pointer in the prologue and epilogue
llvm-svn: 29244 
							
						 
						
							2006-07-21 12:26:16 +00:00  
				
					
						
							
							
								 
						
							
								bf3a17cd32 
								
							 
						 
						
							
							
								
								initial prologue and epilogue implementation. Need to define add and sub before finishing it :-)  
							
							... 
							
							
							
							llvm-svn: 29175 
							
						 
						
							2006-07-18 17:00:30 +00:00  
				
					
						
							
							
								 
						
							
								75269be065 
								
							 
						 
						
							
							
								
								skeleton of a lowerCall implementation for ARM  
							
							... 
							
							
							
							llvm-svn: 29159 
							
						 
						
							2006-07-16 01:02:57 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								f6f5aff038 
								
							 
						 
						
							
							
								
								handle the "mov reg1, reg2" case in isMoveInstr  
							
							... 
							
							
							
							llvm-svn: 28945 
							
						 
						
							2006-06-27 21:52:45 +00:00  
				
					
						
							
							
								 
						
							
								a88966fd5e 
								
							 
						 
						
							
							
								
								initial implementation of ARMRegisterInfo::eliminateFrameIndex  
							
							... 
							
							
							
							fixes test/Regression/CodeGen/ARM/ret_arg5.ll
llvm-svn: 28854 
							
						 
						
							2006-06-18 00:08:07 +00:00  
				
					
						
							
							
								 
						
							
								f3b5b92e58 
								
							 
						 
						
							
							
								
								Don't pass target name into TargetData anymore, it is never used or needed.  
							
							... 
							
							
							
							Remove explicit casts to std::string now that there is no overload resolution
issues in the TargetData ctors.
llvm-svn: 28830 
							
						 
						
							2006-06-16 18:22:52 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								5bc60da112 
								
							 
						 
						
							
							
								
								Expand ret into "CopyToReg;BRIND"  
							
							... 
							
							
							
							llvm-svn: 28559 
							
						 
						
							2006-05-30 17:33:19 +00:00  
				
					
						
							
							
								 
						
							
								64d8692dee 
								
							 
						 
						
							
							
								
								Ignore generated files  
							
							... 
							
							
							
							llvm-svn: 28520 
							
						 
						
							2006-05-27 01:23:30 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								87bc1a9b0b 
								
							 
						 
						
							
							
								
								On ARM, alignment is in bits  
							
							... 
							
							
							
							Add lr as a hard coded operand of bx
llvm-svn: 28494 
							
						 
						
							2006-05-26 10:56:17 +00:00  
				
					
						
							
							
								 
						
							
								91df1ef41f 
								
							 
						 
						
							
							
								
								implement initial version of ARMAsmPrinter::printOperand  
							
							... 
							
							
							
							llvm-svn: 28470 
							
						 
						
							2006-05-25 12:57:06 +00:00  
				
					
						
							
							
								 
						
							
								4781610886 
								
							 
						 
						
							
							
								
								port the ARM backend to use ISD::CALL instead of LowerCallTo  
							
							... 
							
							
							
							llvm-svn: 28469 
							
						 
						
							2006-05-25 11:00:18 +00:00  
				
					
						
							
							
								 
						
							
								4af59dac0b 
								
							 
						 
						
							
							
								
								Assert if InflightSet is not cleared after instruction selecting a BB.  
							
							... 
							
							
							
							llvm-svn: 28459 
							
						 
						
							2006-05-25 00:24:28 +00:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								27f8bdc7e5 
								
							 
						 
						
							
							
								
								implement minimal versions of  
							
							... 
							
							
							
							ARMAsmPrinter::runOnMachineFunction
LowerFORMAL_ARGUMENTS
ARMInstrInfo::isMoveInstr
llvm-svn: 28431 
							
						 
						
							2006-05-23 02:48:20 +00:00  
				
					
						
							
							
								 
						
							
								88812b5c0a 
								
							 
						 
						
							
							
								
								Make all of the TargetMachine subclasses use the new string TargetData methods.  
							
							... 
							
							
							
							This is part of the on-going work on PR 761.
llvm-svn: 28414 
							
						 
						
							2006-05-20 00:24:56 +00:00  
				
					
						
							
							
								 
						
							
								b15597b59a 
								
							 
						 
						
							
							
								
								implement movri  
							
							... 
							
							
							
							add a stub LowerFORMAL_ARGUMENTS
llvm-svn: 28388 
							
						 
						
							2006-05-18 21:45:49 +00:00  
				
					
						
							
							
								 
						
							
								305c49579c 
								
							 
						 
						
							
							
								
								getCalleeSaveRegs and getCalleeSaveRegClasses are no long TableGen'd.  
							
							... 
							
							
							
							llvm-svn: 28378 
							
						 
						
							2006-05-18 00:12:58 +00:00  
				
					
						
							
							
								 
						
							
								dcec882286 
								
							 
						 
						
							
							
								
								Remove PointerType from class Target  
							
							... 
							
							
							
							llvm-svn: 28368 
							
						 
						
							2006-05-17 21:20:27 +00:00  
				
					
						
							
							
								 
						
							
								4abf33f56e 
								
							 
						 
						
							
							
								
								add an abort after every assert(0)  
							
							... 
							
							
							
							llvm-svn: 28310 
							
						 
						
							2006-05-15 22:34:39 +00:00  
				
					
						
							
							
								 
						
							
								ffdc24b847 
								
							 
						 
						
							
							
								
								added a skeleton of the ARM backend  
							
							... 
							
							
							
							llvm-svn: 28301 
							
						 
						
							2006-05-14 22:18:28 +00:00