- Aug 11, 2010
-
-
Daniel Dunbar authored
for some reason they have a very odd MCInst form where the operands overlap, but I haven't dug in to find out why yet. llvm-svn: 110781
-
Daniel Dunbar authored
llvm-svn: 110780
-
Bill Wendling authored
llvm-svn: 110762
-
Bill Wendling authored
llvm-svn: 110761
-
Bob Wilson authored
(I discovered 2 more copies of the ARM instruction format list, bringing the total to 4!! Two of them were already out of sync. I haven't yet gotten into the disassembler enough to know the best way to fix this, but something needs to be done.) Add support for encoding these instructions. llvm-svn: 110754
-
Evan Cheng authored
llvm-svn: 110745
-
- Aug 10, 2010
-
-
Bill Wendling authored
a register before checking if it was defined. llvm-svn: 110733
-
Evan Cheng authored
llvm-svn: 110710
-
Evan Cheng authored
Re-apply r110655 with fixes. Epilogue must restore sp from fp if the function stack frame has a var-sized object. Also added a test case to check for the added benefit of this patch: it's optimizing away the unnecessary restore of sp from fp for some non-leaf functions. llvm-svn: 110707
-
Daniel Dunbar authored
register is", it breaks a couple test-suite tests. llvm-svn: 110701
-
Evan Cheng authored
reserved, not available for general allocation. This eliminates all the extra checks for Darwin. This change also fixes the use of FP to access frame indices in leaf functions and cleaned up some confusing code in epilogue emission. llvm-svn: 110655
-
Evan Cheng authored
This will always be false before PEI: (DisableFramePointerElim(MF) && MFI->adjustsStack()) Which means it's going to make r11 available as a general purpose register even if -disable-fp-elim is specified. It's working on Darwin only because r7 is always reserved. But it's obviously broken for other targets. llvm-svn: 110614
-
- Aug 09, 2010
-
-
Evan Cheng authored
llvm-svn: 110587
-
Evan Cheng authored
Change -prefer-32bit-thumb to attribute -mattr=+32bit instead to disable more 32-bit to 16-bit optimizations. llvm-svn: 110584
-
Evan Cheng authored
llvm-svn: 110579
-
- Aug 08, 2010
-
-
Bill Wendling authored
relatively expensive comparison analyzer on each instruction. Also rename the comparison analyzer method to something more in line with what it actually does. This pass is will eventually be folded into the Machine CSE pass. llvm-svn: 110539
-
- Aug 06, 2010
-
-
Owen Anderson authored
llvm-svn: 110460
-
Rafael Espindola authored
Without this what was happening was: * R3 is not marked as "used" * ARM backend thinks it has to save it to the stack because of vaarg * Offset computation correctly ignores it * Offsets are wrong llvm-svn: 110446
-
Bill Wendling authored
This pass tries to remove comparison instructions when possible. For instance, if you have this code: sub r1, 1 cmp r1, 0 bz L1 and "sub" either sets the same flag as the "cmp" instruction or could be converted to set the same flag, then we can eliminate the "cmp" instruction all together. This is a important for ARM where the ALU instructions could set the CPSR flag, but need a special suffix ('s') to do so. llvm-svn: 110423
-
Owen Anderson authored
llvm-svn: 110410
-
Owen Anderson authored
ID member as the sole unique type identifier. Clean up APIs related to this change. llvm-svn: 110396
-
- Aug 05, 2010
-
-
Jim Grosbach authored
register for local access when it's closer to the stack slot being refererenced than the stack pointer. Make sure to take into account any argument frame SP adjustments that are in affect at the time. rdar://8256090 llvm-svn: 110366
-
Bob Wilson authored
llvm-svn: 110363
-
Bob Wilson authored
Partial fix for PR7792. llvm-svn: 110361
-
Bob Wilson authored
Partial fix for PR7792. llvm-svn: 110358
-
Chandler Carruth authored
preserves the existing behavior, as it seems a concious choice to allow RS to be null and BigStack marked true. llvm-svn: 110307
-
Bob Wilson authored
llvm-svn: 110292
-
Jim Grosbach authored
llvm-svn: 110269
-
Devang Patel authored
llvm-svn: 110267
-
Jim Grosbach authored
llvm-svn: 110259
-
Jim Grosbach authored
simplify the call frame pseudo instructions. In that situation, the calculations for estimating the stack size will be way off, leading to not having an emergency spill slot when we need one. It should be possible to be more precise about tracking the adjustment values, but not really necessary for correctness. Upcoming cleanups for PEI in general will render that moot. llvm-svn: 110258
-
- Aug 04, 2010
-
-
Dale Johannesen authored
seem to be working correctly. No functional change. llvm-svn: 110226
-
Bob Wilson authored
(absolute difference with accumulate) intrinsics. Radar 8228576. llvm-svn: 110170
-
- Aug 03, 2010
-
-
Nate Begeman authored
Add support for using the FPSCR in conjunction with the vcvtr instruction, for controlling fp to int rounding. Add support for the FLT_ROUNDS_ node now that the FPSCR is exposed. llvm-svn: 110152
-
- Jul 31, 2010
-
-
Daniel Dunbar authored
llvm-svn: 109956
-
Bob Wilson authored
the jtblock_operand print methods. This avoids extra newlines in the disassembler's output. PR7757. llvm-svn: 109948
-
Bob Wilson authored
llvm-svn: 109946
-
Evan Cheng authored
Add -disable-shifter-op to disable isel of shifter ops. On Cortex-a9 the shifts cost extra instructions so it might be better to emit them separately to take advantage of dual-issues. llvm-svn: 109934
-
Bob Wilson authored
reference registers past the end of the NEON register file, and report them as invalid instead of asserting when trying to print them. PR7746. llvm-svn: 109933
-
- Jul 30, 2010
-
-
Bob Wilson authored
beginning on ARM Darwin assembly files so that it won't be placed after debug sections. Radar 8252813. llvm-svn: 109879
-