| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
llvm-svn: 135481
|
| |
|
|
| |
llvm-svn: 135478
|
| |
|
|
| |
llvm-svn: 135476
|
| |
|
|
| |
llvm-svn: 135475
|
| |
|
|
| |
llvm-svn: 135474
|
| |
|
|
|
|
|
| |
(including compilation, assembly). Move relocation model Reloc::Model from
TargetMachine to MCCodeGenInfo so it's accessible even without TargetMachine.
llvm-svn: 135468
|
| |
|
|
|
|
|
| |
ExpandISelPseudos::runOnMachineFunction does not visit instructions that have
just been added.
llvm-svn: 135465
|
| |
|
|
| |
llvm-svn: 135464
|
| |
|
|
|
|
| |
multiple instructions with the same encoding. This resolves another conflict when bringing up the new-style disassembler.
llvm-svn: 135442
|
| |
|
|
|
|
| |
use of TargetFrameLowering in TargetAsmInfo.
llvm-svn: 135439
|
| |
|
|
|
|
| |
better location welcome).
llvm-svn: 135438
|
| |
|
|
|
|
| |
decoding conflicts in the new-style disassembler.
llvm-svn: 135434
|
| |
|
|
|
|
|
|
|
| |
to MCRegisterInfo. Also initialize the mapping at construction time.
This patch eliminate TargetRegisterInfo from TargetAsmInfo. It's another step
towards fixing the layering violation.
llvm-svn: 135424
|
| |
|
|
| |
llvm-svn: 135418
|
| |
|
|
|
|
|
|
| |
moving them out of the loop. Previously, stores and loads to a stack frame
object were inserted to accomplish this. Remove the code that was needed to do
this. Patch by Sasa Stankovic.
llvm-svn: 135415
|
| |
|
|
|
|
| |
Original Log: Get rid of the separate opcodes for the Darwin versions of tBL, tBLXi, and tBLXr, using pseudo-instructions to lower to the single final opcode. Update the ARM disassembler for this change.
llvm-svn: 135414
|
| |
|
|
|
|
| |
definitions.
llvm-svn: 135407
|
| |
|
|
| |
llvm-svn: 135404
|
| |
|
|
|
|
| |
virtual registers are used.
llvm-svn: 135403
|
| |
|
|
|
|
|
|
| |
previously explicit non-default constructors were used.
Mostly mechanical with some manual reformatting.
llvm-svn: 135390
|
| |
|
|
| |
llvm-svn: 135375
|
| |
|
|
| |
llvm-svn: 135343
|
| |
|
|
| |
llvm-svn: 135332
|
| |
|
|
|
|
| |
tBLXr, using pseudo-instructions to lower to the single final opcode. Update the ARM disassembler for this change.
llvm-svn: 135319
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
1) Make non-legal 256-bit loads to be promoted to v4i64. This lets us
canonize the loads and handle things the same way we use to handle
for 128-bit registers. Despite of what one of the removed comments
explained, the load promotion would not mess with VPERM, it's only a
matter of doing the appropriate bitcasts when this instructions comes
to be introduced. Also make LOAD v8i32 legal.
2) Doing 1) exposed two bugs:
- v4i64 was being promoted to itself for several opcodes (introduced
in r124447 by David Greene) causing endless recursion and the stack to
explode.
- there was no support for allOnes BUILD_VECTORs and ANDNP would fail to
match because it was generating early target constant pools during
lowering.
3) The testcases are already checked-in, doing 1) exposed the
bugs in the current testcases.
4) Tidy up code to be more clear and explicit about AVX.
llvm-svn: 135313
|
| |
|
|
|
|
| |
comming together with other tests.
llvm-svn: 135312
|
| |
|
|
| |
llvm-svn: 135303
|
| |
|
|
|
|
| |
to simplify the path towards an auto-generated disassembler.
llvm-svn: 135290
|
| |
|
|
|
|
| |
the type of VEXT. This can be achieved with a Pat definition, and is much more disassembler friendly.
llvm-svn: 135283
|
| |
|
|
|
|
| |
MSVC decorates (and distinguishes) "const" in mangler. It brought linkage error between "extern const" declarations and definitions.
llvm-svn: 135269
|
| |
|
|
|
|
| |
that type refinement is toast.
llvm-svn: 135245
|
| |
|
|
|
|
|
|
|
|
| |
was really intended, and it may have been required prior to some of the
recent refactors. Including it however causes LLVMX86Desc to need
symbols from LLVMX86CodeGen, forming a dependency cycle. This was masked
in almost all builds: Clang, and GCC w/ optimizations didn't actually
emit the symbols!
llvm-svn: 135242
|
| |
|
|
|
|
|
| |
solution but it is a small step towards removing the horror that is
TargetAsmInfo.
llvm-svn: 135237
|
| |
|
|
|
|
|
|
|
|
|
|
| |
backend. Moved some MCAsmInfo files down into the MCTargetDesc
sublibraries, removed some (i suspect long) dead files from other parts
of the CMake build, etc. Also copied the include directory hack from the
Makefile.
Finally, updated the lib deps. I spot checked this, and think its
correct, but review appreciated there.
llvm-svn: 135234
|
| |
|
|
|
|
| |
MCTargetDesc to prepare for next round of changes.
llvm-svn: 135219
|
| |
|
|
|
|
|
|
| |
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: 135199
|
| |
|
|
| |
llvm-svn: 135198
|
| |
|
|
| |
llvm-svn: 135192
|
| |
|
|
|
|
|
| |
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
|
| |
|
|
|
|
|
|
|
| |
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
|
| |
|
|
| |
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
|
| |
|
|
|
|
|
| |
The ISB instruction takes an optional operand, just like DMB/DSB. Typically
only 'sy' is meaningful.
llvm-svn: 135156
|
| |
|
|
|
|
| |
instructions.
llvm-svn: 135146
|