- Jul 18, 2011
-
-
Akira Hatanaka authored
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
-
Owen Anderson authored
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
-
Bruno Cardoso Lopes authored
definitions. llvm-svn: 135407
-
Bruno Cardoso Lopes authored
llvm-svn: 135404
-
Akira Hatanaka authored
virtual registers are used. llvm-svn: 135403
-
Frits van Bommel authored
Migrate LLVM and Clang to use the new makeArrayRef(...) functions where previously explicit non-default constructors were used. Mostly mechanical with some manual reformatting. llvm-svn: 135390
-
Chris Lattner authored
llvm-svn: 135375
-
- Jul 16, 2011
-
-
Owen Anderson authored
llvm-svn: 135343
-
Bruno Cardoso Lopes authored
llvm-svn: 135332
-
Owen Anderson authored
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: 135319
-
Bruno Cardoso Lopes authored
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
-
Bruno Cardoso Lopes authored
comming together with other tests. llvm-svn: 135312
-
- Jul 15, 2011
-
-
Eli Friedman authored
llvm-svn: 135303
-
Owen Anderson authored
Remove VMOVDneon and VMOVQ, which are just aliases for VORR. This continues to simplify the path towards an auto-generated disassembler. llvm-svn: 135290
-
Owen Anderson authored
Remove unnecessary duplicate instruction definitions that simply overloaded the type of VEXT. This can be achieved with a Pat definition, and is much more disassembler friendly. llvm-svn: 135283
-
NAKAMURA Takumi authored
MSVC decorates (and distinguishes) "const" in mangler. It brought linkage error between "extern const" declarations and definitions. llvm-svn: 135269
-
Chris Lattner authored
that type refinement is toast. llvm-svn: 135245
-
Chandler Carruth authored
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
-
Evan Cheng authored
solution but it is a small step towards removing the horror that is TargetAsmInfo. llvm-svn: 135237
-
Chandler Carruth authored
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
-
Evan Cheng authored
Rename createAsmInfo to createMCAsmInfo and move registration code to MCTargetDesc to prepare for next round of changes. llvm-svn: 135219
-
Jim Grosbach authored
For example, "mlss r0, r1, r2, r3". The MLS instruction does not have a flag-setting variant. llvm-svn: 135203
-
Bill Wendling authored
unwind library expects. * Comment the permutation encoding for frameless stacks. llvm-svn: 135202
-
- Jul 14, 2011
-
-
Benjamin Kramer authored
llvm-svn: 135199
-
Benjamin Kramer authored
llvm-svn: 135198
-
Jim Grosbach authored
llvm-svn: 135192
-
Jim Grosbach authored
The immediate operands are restricted to 0-7. Enforce that when parsing assembly. llvm-svn: 135189
-
Nicolas Geoffray authored
llvm-svn: 135186
-
Evan Cheng authored
registeration and creation code into XXXMCDesc libraries. llvm-svn: 135184
-
Eric Christopher authored
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
-
Jim Grosbach authored
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
-
Bruno Cardoso Lopes authored
llvm-svn: 135171
-
Benjamin Kramer authored
llvm-svn: 135169
-
Jim Grosbach authored
ldm/stm are the cannonical spellings for ldmia/stmia, so use them as such. Update the parsing/encoding tests accordingly. llvm-svn: 135168
-
Jim Grosbach authored
The ISB instruction takes an optional operand, just like DMB/DSB. Typically only 'sy' is meaningful. llvm-svn: 135156
-
Richard Osborne authored
instructions. llvm-svn: 135146
-
Nadav Rotem authored
[VECTOR-SELECT] 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
-
Evan Cheng authored
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
-
Benjamin Kramer authored
Don't emit a bit test if there is only one case the test can yield false. A simple SETNE is sufficient. llvm-svn: 135126
-
Eli Friedman authored
Fix up assertion in r135018 so it doesn't trigger on 32-bit; when we're in 32-bit, it doesn't matter whether the operation overflows because the computed address is not wider than the immediate. llvm-svn: 135120
-