- Jul 19, 2007
-
-
Evan Cheng authored
InOperandList. This gives one piece of important information: # of results produced by an instruction. An example of the change: def ADD32rr : I<0x01, MRMDestReg, (ops GR32:$dst, GR32:$src1, GR32:$src2), "add{l} {$src2, $dst|$dst, $src2}", [(set GR32:$dst, (add GR32:$src1, GR32:$src2))]>; => def ADD32rr : I<0x01, MRMDestReg, (outs GR32:$dst), (ins GR32:$src1, GR32:$src2), "add{l} {$src2, $dst|$dst, $src2}", [(set GR32:$dst, (add GR32:$src1, GR32:$src2))]>; llvm-svn: 40033
-
- Jul 10, 2007
-
-
Evan Cheng authored
llvm-svn: 38501
-
- Jul 07, 2007
-
-
Evan Cheng authored
llvm-svn: 37965
-
- Jul 05, 2007
-
-
Evan Cheng authored
Each ARM use predicate operand is now made up of two components. The new component is the CPSR register. llvm-svn: 37895
-
- Jun 26, 2007
-
-
Dan Gohman authored
instruction flag, and use the flag along with a virtual member function hook for targets to override if there are instructions that are only trivially rematerializable with specific operands (i.e. constant pool loads). llvm-svn: 37728
-
- Jun 19, 2007
-
-
Dan Gohman authored
with a general target hook to identify rematerializable instructions. Some instructions are only rematerializable with specific operands, such as loads from constant pools, while others are always rematerializable. This hook allows both to be identified as being rematerializable with the same mechanism. llvm-svn: 37644
-
Evan Cheng authored
llvm-svn: 37643
-
- Jun 08, 2007
-
-
Evan Cheng authored
llvm-svn: 37516
-
- Jun 06, 2007
-
-
Evan Cheng authored
llvm-svn: 37468
-
- May 16, 2007
-
-
Evan Cheng authored
llvm-svn: 37125
-
- May 15, 2007
-
-
Evan Cheng authored
llvm-svn: 37066
-
- May 08, 2007
-
-
Evan Cheng authored
llvm-svn: 36948
-
- May 01, 2007
-
-
Evan Cheng authored
llvm-svn: 36630
-
- Apr 27, 2007
-
-
Lauro Ramos Venancio authored
llvm-svn: 36506
-
Evan Cheng authored
llvm-svn: 36503
-
Evan Cheng authored
llvm-svn: 36502
-
- Apr 02, 2007
-
-
Lauro Ramos Venancio authored
flags (ARMISD::CMPNZ) and comparisons that use all flags (ARMISD::CMP). - Defines the instructions: TST, TEQ (ARM) and TST (Thumb). llvm-svn: 35573
-
- Mar 29, 2007
-
-
Evan Cheng authored
llvm-svn: 35479
-
- Mar 27, 2007
-
-
Lauro Ramos Venancio authored
llvm-svn: 35381
-
- Mar 20, 2007
-
-
Lauro Ramos Venancio authored
mov lr, pc bx lr So, the function was not called. llvm-svn: 35218
-
- Mar 19, 2007
-
-
Evan Cheng authored
llvm-svn: 35163
-
Evan Cheng authored
rematerializable. Only used for constant generation for now. llvm-svn: 35162
-
Evan Cheng authored
llvm-svn: 35161
-
- Feb 07, 2007
-
-
Evan Cheng authored
llvm-svn: 33971
-
- Feb 01, 2007
-
-
Evan Cheng authored
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
-
Evan Cheng authored
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
-
- Jan 31, 2007
-
-
Evan Cheng authored
llvm-svn: 33717
-
- Jan 30, 2007
-
-
Evan Cheng authored
.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
-
Evan Cheng authored
instructions that use these address modes to instructions that use t_addrmode_sp. llvm-svn: 33651
-
Evan Cheng authored
llvm-svn: 33649
-
- Jan 27, 2007
-
-
Evan Cheng authored
llvm-svn: 33568
-
Evan Cheng authored
llvm-svn: 33562
-
- Jan 26, 2007
-
-
Evan Cheng authored
llvm-svn: 33551
-
Evan Cheng authored
llvm-svn: 33542
-
- Jan 24, 2007
-
-
Evan Cheng authored
llvm-svn: 33484
-
- Jan 23, 2007
-
-
Evan Cheng authored
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
-
- Jan 19, 2007
-
-
Evan Cheng authored
llvm-svn: 33353
-