- Nov 04, 2010
-
-
Bill Wendling authored
llvm-svn: 118220
-
Jim Grosbach authored
CodeEmitter. llvm-svn: 118209
-
Owen Anderson authored
This is both the conceptually correct place for it, as well as allowing it to be more aggressive. llvm-svn: 118204
-
- Nov 03, 2010
-
-
Owen Anderson authored
We could be more aggressive about making this work for a larger range of constants, but this seems like a good start. llvm-svn: 118201
-
Jim Grosbach authored
llvm-svn: 118199
-
Eric Christopher authored
llvm-svn: 118192
-
Owen Anderson authored
all of the different element sizes are pseudo instructions that map down to vext.8 underneath, with the immediate shifted left to reflect the increased element size. llvm-svn: 118183
-
Bob Wilson authored
llvm-svn: 118176
-
Bob Wilson authored
For NEON we had been assuming this was always an immediate constant. llvm-svn: 118175
-
Duncan Sands authored
with a SimpleValueType, while an EVT supports equality and inequality comparisons with SimpleValueType. llvm-svn: 118169
-
Duncan Sands authored
value type, so there is no point in passing it around using an EVT. Use the simpler MVT everywhere. Rather than trying to propagate this information maximally in all the code that using the calling convention stuff, I chose to do a mainly low impact change instead. llvm-svn: 118167
-
Evan Cheng authored
Fix preload instruction isel. Only v7 supports pli, and only v7 with mp extension supports pldw. Add subtarget attribute to denote mp extension support and legalize illegal ones to nothing. llvm-svn: 118160
-
-
Bill Wendling authored
llvm-svn: 118151
-
Eric Christopher authored
easier to read. llvm-svn: 118148
-
Bill Wendling authored
vldr.64 d1, [r0, #-32] The problem was with how the addressing mode 5 encodes the offsets. This change makes sure that the way offsets are handled in addressing mode 5 is consistent throughout the MC code. It involves re-refactoring the "getAddrModeImmOpValue" method into an "Imm12" and "addressing mode 5" version. But not to worry! The majority of the duplicated code has been unified. llvm-svn: 118144
-
Jim Grosbach authored
llvm-svn: 118141
-
Jim Grosbach authored
printOperand() asm printer helper functions. rdar://8425198 llvm-svn: 118140
-
Jim Grosbach authored
llvm-svn: 118139
-
Jim Grosbach authored
parts. Represent the operation mode as an optional operand instead. rdar://8614429 llvm-svn: 118137
-
Evan Cheng authored
1. Fix pre-ra scheduler so it doesn't try to push instructions above calls to "optimize for latency". Call instructions don't have the right latency and this is more likely to use introduce spills. 2. Fix if-converter cost function. For ARM, it should use instruction latencies, not # of micro-ops since multi-latency instructions is completely executed even when the predicate is false. Also, some instruction will be "slower" when they are predicated due to the register def becoming implicit input. rdar://8598427 llvm-svn: 118135
-
Evan Cheng authored
latencies) of loads. llvm-svn: 118134
-
Eric Christopher authored
llvm-svn: 118126
-
Chris Lattner authored
instructions as isCodeGenOnly in the parent class instead of sprinkling it throughout the .td files. llvm-svn: 118125
-
Owen Anderson authored
llvm-svn: 118121
-
Chris Lattner authored
ins/outs list that isn't specified by their asmstring. Previously the asmmatcher would just force a 0 register into it, which clearly isn't right. Mark a bunch of ARM instructions that use this as isCodeGenOnly. Some of them are clearly pseudo instructions (like t2TBB) others use a weird hasExtraSrcRegAllocReq thing that will either need to be removed or the asmmatcher will need to be taught about it (someday). llvm-svn: 118119
-
- Nov 02, 2010
-
-
Bill Wendling authored
llvm-svn: 118103
-
Bill Wendling authored
llvm-svn: 118099
-
Bill Wendling authored
is handled with the MC encoder. llvm-svn: 118098
-
Owen Anderson authored
Since these fields are not exactly equivalent to the encoded field, rename them to something with semantic meaning. llvm-svn: 118097
-
Bill Wendling authored
with immediates up to 16-bits in size. The same logic is applied to other LDR encodings, e.g. VLDR, but which use a different immediate bit width (8-bits in VLDR's case). Removing the "12" allows it to be more generic. llvm-svn: 118094
-
Owen Anderson authored
llvm-svn: 118093
-
Chris Lattner authored
llvm-svn: 118092
-
Owen Anderson authored
llvm-svn: 118087
-
Owen Anderson authored
llvm-svn: 118084
-
Owen Anderson authored
llvm-svn: 118082
-
Bob Wilson authored
llvm-svn: 118069
-
Owen Anderson authored
llvm-svn: 118068
-
Owen Anderson authored
llvm-svn: 118067
-
Owen Anderson authored
llvm-svn: 118055
-