- Nov 06, 2010
-
-
Chris Lattner authored
result instruction operand numbering matched the result pattern. Fixing this allows us to move the xchg/test aliases to the .td file. llvm-svn: 118334
-
Eric Christopher authored
Fixes 8559. llvm-svn: 118333
-
Chris Lattner authored
llvm-svn: 118332
-
Chris Lattner authored
tidy up the movsx and movzx aliases. llvm-svn: 118331
-
Chris Lattner authored
from c++ hacks to proper .td InstAlias definitions. Change them! llvm-svn: 118330
-
Chris Lattner authored
operand list instead of the operand list redundantly declared on the alias or instruction. With this change, we finally remove the ins/outs list on the alias. Before: def : InstAlias<(outs GR16:$dst), (ins GR8 :$src), "movsx $src, $dst", (MOVSX16rr8W GR16:$dst, GR8:$src)>; After: def : InstAlias<"movsx $src, $dst", (MOVSX16rr8W GR16:$dst, GR8:$src)>; This also makes the alias mechanism more general and powerful, which will be exploited in subsequent patches. llvm-svn: 118329
-
- Nov 05, 2010
-
-
Jim Grosbach authored
llvm-svn: 118310
-
Jim Grosbach authored
llvm-svn: 118307
-
Jim Grosbach authored
llvm-svn: 118304
-
Jim Grosbach authored
llvm-svn: 118301
-
Owen Anderson authored
llvm-svn: 118300
-
Jim Grosbach authored
llvm-svn: 118295
-
Owen Anderson authored
llvm-svn: 118291
-
Jim Grosbach authored
(relocations, e.g.), but this will allow simple things to flow through. llvm-svn: 118289
-
Jim Grosbach authored
llvm-svn: 118288
-
Jim Grosbach authored
llvm-svn: 118280
-
- Nov 04, 2010
-
-
Duncan Sands authored
sequence of loads and stores was being generated to perform the copy on the x86 targets if the parameter was less than 4 byte aligned, causing llc to use up vast amounts of memory and time. Use a "rep movs" form instead. PR7170. llvm-svn: 118260
-
Duncan Sands authored
and as such can be represented by an MVT - the more complicated EVT is not needed. Use MVT for ValVT everywhere. llvm-svn: 118245
-
Evan Cheng authored
Fix @llvm.prefetch isel. Selecting between pld / pldw using the first immediate rw. There is currently no intrinsic that matches to pli. llvm-svn: 118237
-
Jim Grosbach authored
tweaking when we start using it for object file emission or JIT, but it's a start. llvm-svn: 118221
-
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
-