| Commit message (Collapse) | Author | Age | Files | Lines | 
| | 
| 
| 
|  | 
llvm-svn: 135231
 | 
| | 
| 
| 
| 
| 
|  | 
- I don't see a better way than duplicating all the code.
llvm-svn: 135229
 | 
| | 
| 
| 
| 
| 
|  | 
text, not for load commands name __TEXT (which isn't the case in actual object files)
llvm-svn: 135228
 | 
| | 
| 
| 
|  | 
llvm-svn: 135227
 | 
| | 
| 
| 
| 
| 
|  | 
MCTargetDesc to prepare for next round of changes.
llvm-svn: 135219
 | 
| | 
| 
| 
| 
| 
|  | 
* The personality function should be encoded as an absolute pointer to the function.
llvm-svn: 135215
 | 
| | 
| 
| 
|  | 
llvm-svn: 135212
 | 
| | 
| 
| 
| 
| 
|  | 
Improve DbgScope->dump() output.
llvm-svn: 135207
 | 
| | 
| 
| 
| 
| 
|  | 
first, so there is not any need to map DebugLoc).
llvm-svn: 135205
 | 
| | 
| 
| 
|  | 
llvm-svn: 135204
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
For example, "mlss r0, r1, r2, r3".
The MLS instruction does not have a flag-setting variant.
llvm-svn: 135203
 | 
| | 
| 
| 
| 
| 
| 
|  | 
unwind library expects.
* Comment the permutation encoding for frameless stacks.
llvm-svn: 135202
 | 
| | 
| 
| 
|  | 
llvm-svn: 135200
 | 
| | 
| 
| 
|  | 
llvm-svn: 135199
 | 
| | 
| 
| 
|  | 
llvm-svn: 135198
 | 
| | 
| 
| 
|  | 
llvm-svn: 135192
 | 
| | 
| 
| 
|  | 
llvm-svn: 135191
 | 
| | 
| 
| 
| 
| 
| 
|  | 
The immediate operands are restricted to 0-7. Enforce that when parsing
assembly.
llvm-svn: 135189
 | 
| | 
| 
| 
|  | 
llvm-svn: 135186
 | 
| | 
| 
| 
| 
| 
|  | 
registeration and creation code into XXXMCDesc libraries.
llvm-svn: 135184
 | 
| | 
| 
| 
|  | 
llvm-svn: 135183
 | 
| | 
| 
| 
|  | 
llvm-svn: 135182
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
|  | 
when determining validity of matching constraint. Allow i1
types access to the GR8 reg class for x86.
Fixes PR10352 and rdar://9777108
llvm-svn: 135180
 | 
| | 
| 
| 
| 
| 
| 
| 
|  | 
Consolidate the individual declarations together for ease of reference. This
mirrors the organization in X86, as well, so is good for consistency. No
functional change.
llvm-svn: 135179
 | 
| | 
| 
| 
| 
| 
|  | 
of named struct types.
llvm-svn: 135178
 | 
| | 
| 
| 
|  | 
llvm-svn: 135174
 | 
| | 
| 
| 
| 
| 
| 
|  | 
of calling getAllMetadata().  This is semantically identical, but doing
it this way avoids unpacking the DebugLoc.
llvm-svn: 135173
 | 
| | 
| 
| 
| 
| 
| 
|  | 
an MDNode.  This saves a bunch of time and memory in the IR linker, e.g. when 
doing LTO of files with debug info.
llvm-svn: 135172
 | 
| | 
| 
| 
|  | 
llvm-svn: 135171
 | 
| | 
| 
| 
|  | 
llvm-svn: 135169
 | 
| | 
| 
| 
| 
| 
| 
|  | 
ldm/stm are the cannonical spellings for ldmia/stmia, so use them as such.
Update the parsing/encoding tests accordingly.
llvm-svn: 135168
 | 
| | 
| 
| 
|  | 
llvm-svn: 135164
 | 
| | 
| 
| 
| 
| 
|  | 
non-virtual function.
llvm-svn: 135163
 | 
| | 
| 
| 
|  | 
llvm-svn: 135157
 | 
| | 
| 
| 
| 
| 
| 
|  | 
The ISB instruction takes an optional operand, just like DMB/DSB. Typically
only 'sy' is meaningful.
llvm-svn: 135156
 | 
| | 
| 
| 
|  | 
llvm-svn: 135154
 | 
| | 
| 
| 
|  | 
llvm-svn: 135151
 | 
| | 
| 
| 
| 
| 
|  | 
instructions.
llvm-svn: 135146
 | 
| | 
| 
| 
| 
| 
|  | 
reference the array passed to them instead of copying it to a std::vector.
llvm-svn: 135145
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
During type legalization we often use the SIGN_EXTEND_INREG SDNode.
When this SDNode is legalized during the LegalizeVector phase, it is
scalarized because non-simple types are automatically marked to be expanded.
In this patch we add support for lowering SIGN_EXTEND_INREG manually.
This fixes CodeGen/X86/vec_sext.ll when running with the '-promote-elements'
flag.
llvm-svn: 135144
 | 
| | 
| 
| 
|  | 
llvm-svn: 135143
 | 
| | 
| 
| 
|  | 
llvm-svn: 135132
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
|  | 
TargetAsmInfo, which in turn pulls in TargetRegisterInfo, etc. :-( There are
other cases of violations, but this is probably the worst.
This patch is but one small step towards fixing this. 500 more steps to go. :-(
llvm-svn: 135131
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
Original commit message:
Count references to interference cache entries.
Each InterferenceCache::Cursor instance references a cache entry. A
non-zero reference count guarantees that the entry won't be reused for a
new register.
This makes it possible to have multiple live cursors examining
interference for different physregs.
The total number of live cursors into a cache must be kept below
InterferenceCache::getMaxCursors().
Code generation should be unaffected by this change, and it doesn't seem
to affect the cache replacement strategy either.
llvm-svn: 135130
 | 
| | 
| 
| 
|  | 
llvm-svn: 135127
 | 
| | 
| 
| 
| 
| 
|  | 
simple SETNE is sufficient.
llvm-svn: 135126
 | 
| | 
| 
| 
| 
| 
|  | 
much as possible.
llvm-svn: 135124
 | 
| | 
| 
| 
| 
| 
|  | 
Fixes rdar://9761830
llvm-svn: 135123
 | 
| | 
| 
| 
|  | 
llvm-svn: 135122
 | 
| | 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
| 
|  | 
Each InterferenceCache::Cursor instance references a cache entry. A
non-zero reference count guarantees that the entry won't be reused for a
new register.
This makes it possible to have multiple live cursors examining
interference for different physregs.
The total number of live cursors into a cache must be kept below
InterferenceCache::getMaxCursors().
Code generation should be unaffected by this change, and it doesn't seem
to affect the cache replacement strategy either.
llvm-svn: 135121
 |