- May 24, 2010
-
-
Bob Wilson authored
Fix it by changing the T2I_rbin_s_is multiclass to handle the CPSR output and 'S' suffix in the same way as T2I_bin_s_irs. llvm-svn: 104531
-
- May 19, 2010
-
-
Evan Cheng authored
t2LEApcrel and tLEApcrel are re-materializable. This makes it possible to hoist more loads during machine LICM. llvm-svn: 104115
-
Evan Cheng authored
Mark pattern-less mayLoad / mayStore instructions neverHasSideEffects. These do not have other un-modeled side effects. llvm-svn: 104111
-
Evan Cheng authored
Mark a few more pattern-less instructions with neverHasSideEffects. This is especially important on instructions like t2LEApcreal which are prime candidate for machine LICM. llvm-svn: 104102
-
- May 16, 2010
-
-
Anton Korobeynikov authored
llvm-svn: 103903
-
- May 06, 2010
-
-
Jim Grosbach authored
instructions to subtarget features and update tests to reflect. PR5717. llvm-svn: 103136
-
- May 05, 2010
-
-
Jim Grosbach authored
Jordy <snhjordy@gmail.com>. Followup patches will add some tests and adjust to use Subtarget features for the instructions. llvm-svn: 103119
-
- Apr 09, 2010
-
-
Bob Wilson authored
such that the non-VFP versions have no implicit defs of VFP registers. If any callee-saved VFP registers are marked as having been defined, the prologue/epilogue code will try to save and restore them. Radar 7770432. llvm-svn: 100892
-
- Mar 16, 2010
-
-
Bob Wilson authored
instructions for ld/st with writeback, the flag is completely redundant. llvm-svn: 98643
-
- Mar 13, 2010
-
-
Bob Wilson authored
writebacks to the address register. This gets rid of the hack that the first register on the list was the magic writeback register operand. There was an implicit constraint that if that operand was not reg0 it had to match the base register operand. The post-RA scheduler's antidependency breaker did not understand that constraint and sometimes changed one without the other. This also fixes Radar 7495976 and should help the verifier work better for ARM code. There are now new ld/st instructions explicit writeback operands and explicit constraints that tie those registers together. llvm-svn: 98409
-
- Mar 11, 2010
-
-
Johnny Chen authored
instead of Pseudo, which helps Thumb decoder to recognize them as Thumb instr. llvm-svn: 98285
-
Johnny Chen authored
Plus fixed the encoding of t2LDRDpci such that P = 1 and W = 0 (offset mode). llvm-svn: 98217
-
- Mar 10, 2010
-
-
Johnny Chen authored
operands into their own PrintMethod, in order not to pollute the printOperand() impl with disassembly only Imm modifiers. llvm-svn: 98172
-
- Mar 09, 2010
-
-
Johnny Chen authored
what fields of the CPSR or SPSR are affected. llvm-svn: 98085
-
- Mar 08, 2010
-
-
Bob Wilson authored
immediate instructions cannot set the condition codes, so they do not have the extra cc_out operand. We hit an assertion during tail duplication because the instruction being duplicated had more operands that expected. llvm-svn: 98001
-
- Mar 05, 2010
-
-
Johnny Chen authored
llvm-svn: 97776
-
- Mar 04, 2010
-
-
Johnny Chen authored
of either sxtb16 or uxtb16, and the unified syntax does not specify ".w". llvm-svn: 97760
-
Johnny Chen authored
Instruction (PLI) for disassembly only. According to A8.6.120 PLI (immediate, literal), for example, different instructions are generated for "pli [pc, #0]" and "pli [pc, #-0"]. The disassembler solves it by mapping -0 (negative zero) to -1, -1 to -2, ..., etc. llvm-svn: 97731
-
- Mar 03, 2010
-
-
Johnny Chen authored
and STRHT for disassembly only. llvm-svn: 97655
-
Johnny Chen authored
for disassembly only. llvm-svn: 97632
-
Evan Cheng authored
llvm-svn: 97617
-
Johnny Chen authored
disassembly only. llvm-svn: 97614
-
- Mar 02, 2010
-
-
Johnny Chen authored
llvm-svn: 97595
-
Johnny Chen authored
the opc string passed in, since it's a given from the class inheritance of T2sI. The fixed the extra 's' in adcss & sbcss when disassembly printing. llvm-svn: 97582
-
Johnny Chen authored
SMMULR, SMMLAR, SMMLSR, TBB, TBH, and 16-bit Thumb instruction CPS for disassembly only. llvm-svn: 97573
-
Johnny Chen authored
Add printMandatoryPredicateOperand() PrintMethod for IT predicate printing. Ref: A8.3 Conditional execution llvm-svn: 97571
-
- Feb 28, 2010
-
-
Dan Gohman authored
llvm-svn: 97348
-
- Feb 26, 2010
-
-
Johnny Chen authored
o Parallel addition and subtraction, signed/unsigned o Miscellaneous operations: QADD, QDADD, QSUB, QDSUB o Unsigned sum of absolute differences [and accumulate]: USAD8, USADA8 o Signed/Unsigned saturate: SSAT, SSAT16, USAT, USAT16 o Signed multiply accumulate long (halfwords): SMLAL<x><y> o Signed multiply accumulate/subtract [long] (dual): SMLAD[x], SMLALD[X], SMLSD[X], SMLSLD[X] o Signed dual multiply add/subtract [long]: SMUAD[X], SMUSD[X] llvm-svn: 97276
-
- Feb 25, 2010
-
-
Johnny Chen authored
and SRS. llvm-svn: 97164
-
Johnny Chen authored
llvm-svn: 97163
-
Johnny Chen authored
llvm-svn: 97159
-
- Feb 16, 2010
-
-
Jim Grosbach authored
llvm-svn: 96393
-
Jim Grosbach authored
llvm-svn: 96388
-
Jim Grosbach authored
to have the predicate on the pattern itself instead. Support for the new ISel. Remove definitions of CarryDefIsUnused and CarryDefIsUsed since they are no longer used anywhere. llvm-svn: 96384
-
- Feb 09, 2010
-
-
Jim Grosbach authored
llvm-svn: 95603
-
- Feb 02, 2010
-
-
Johnny Chen authored
llvm-svn: 95112
-
- Jan 22, 2010
-
-
Jim Grosbach authored
cannot be directly interchanged for comparisons against negated values. Disable the CMN instructions for the time being. llvm-svn: 94119
-
- Jan 19, 2010
-
-
Evan Cheng authored
Fix r93758. Use isel patterns instead of c++ selection code to select rbit and make sure we pick different instructions for ARM vs. Thumb2. llvm-svn: 93829
-
- Jan 18, 2010
-
-
Jim Grosbach authored
"On ARMv6T2 this turns cttz into rbit, clz instead of the 4 instruction sequence it is now." llvm-svn: 93758
-
- Jan 08, 2010
-
-
Johnny Chen authored
T2I_bin_ii12rs definition. llvm-svn: 93006
-