- Oct 20, 2009
-
-
Dan Gohman authored
llvm-svn: 84652
-
Dan Gohman authored
encounters an OEQ or UNE comparison, and update its callers to check for this return status and recover. This fixes a problem resulting from the LowerOperation hooks being called from LegalizeVectorOps, because LegalizeVectorOps only lowers vectors, so OEQ and UNE comparisons may still be at large. This fixes PR5092. llvm-svn: 84640
-
Chris Lattner authored
no functionality change. llvm-svn: 84567
-
Chris Lattner authored
llvm-svn: 84565
-
Chris Lattner authored
llvm-svn: 84561
-
- Oct 19, 2009
-
-
Chris Lattner authored
broken makefile deps :( llvm-svn: 84544
-
Chris Lattner authored
llvm-svn: 84540
-
Chris Lattner authored
All of these "subreg32" modifier instructions are handled explicitly by the MCInst lowering phase. If they got to the asmprinter, they would explode. They should eventually be replace with correct use of subregs. llvm-svn: 84526
-
Chris Lattner authored
llvm-svn: 84510
-
Chris Lattner authored
llvm-svn: 84509
-
Nate Begeman authored
llvm-svn: 84506
-
Torok Edwin authored
LLC was scheduling compares before the adds causing wrong branches to be taken in programs, resulting in misoptimized code wherever atomic adds where used. llvm-svn: 84485
-
Nate Begeman authored
llvm-svn: 84459
-
- Oct 18, 2009
-
-
Evan Cheng authored
llvm-svn: 84431
-
Evan Cheng authored
llvm-svn: 84425
-
Evan Cheng authored
stack slots and giving them different PseudoSourceValue's did not fix the problem of post-alloc scheduling miscompiling llvm itself. - Apply Dan's conservative workaround by assuming any non fixed stack slots can alias other memory locations. This means a load from spill slot #1 cannot move above a store of spill slot #2. - Enable post-alloc scheduling for x86 at optimization leverl Default and above. llvm-svn: 84424
-
Evan Cheng authored
llvm-svn: 84411
-
- Oct 17, 2009
-
-
Evan Cheng authored
Distinquish stack slots from other stack objects. They (and fixed objects) get FixedStack PseudoSourceValues. llvm-svn: 84326
-
Evan Cheng authored
llvm-svn: 84321
-
Evan Cheng authored
necessarily fixed. Only those will negative frame indices are "fixed." llvm-svn: 84315
-
- Oct 16, 2009
-
-
Evan Cheng authored
llvm-svn: 84273
-
Anton Korobeynikov authored
1. Emit external function type information for all COFF targets since it's a feature of object format 2. Emit linker directives only for cygming (since this is ld-specific stuff) llvm-svn: 84214
-
- Oct 15, 2009
-
-
Evan Cheng authored
llvm-svn: 84200
-
- Oct 14, 2009
-
-
Dan Gohman authored
(for uses marked kill and defs marked dead) a few instructions in addition to forwards. Also, increase the maximum number of instructions to scan, as it appears to help in a fair number of cases. llvm-svn: 84061
-
- Oct 13, 2009
-
-
Ted Kremenek authored
llvm-svn: 84008
-
- Oct 12, 2009
-
-
Dan Gohman authored
it to hold the address of an sret return value, for x86-64 ABI purposes. Also, fix the test that was originally intended to test this to actually test it, using FileCheck. llvm-svn: 83853
-
Chris Lattner authored
llvm-svn: 83822
-
- Oct 10, 2009
-
-
Dan Gohman authored
llvm-svn: 83697
-
Dan Gohman authored
MachineInstr::isInvariantLoad instead, which has the benefit of being more complete. llvm-svn: 83696
-
- Oct 09, 2009
-
-
Dan Gohman authored
when one of the bits being tested would end up being the sign bit in the narrower type, and a signed comparison is being performed, since this would change the result of the signed comparison. This fixes PR5132. llvm-svn: 83670
-
Dan Gohman authored
information when unfolding memory references. llvm-svn: 83656
-
- Oct 08, 2009
-
-
Dale Johannesen authored
llvm-svn: 83499
-
- Oct 07, 2009
-
-
Dan Gohman authored
implementations with a new MachineInstr::isInvariantLoad, which uses MachineMemOperands and is target-independent. This brings MachineLICM and other functionality to targets which previously lacked an isInvariantLoad implementation. llvm-svn: 83475
-
Jim Grosbach authored
a virtual register to eliminate a frame index, it can return that register and the constant stored there to PEI to track. When scavenging to allocate for those registers, PEI then tracks the last-used register and value, and if it is still available and matches the value for the next index, reuses the existing value rather and removes the re-materialization instructions. Fancier tracking and adjustment of scavenger allocations to keep more values live for longer is possible, but not yet implemented and would likely be better done via a different, less special-purpose, approach to the problem. eliminateFrameIndex() is modified so the target implementations can return the registers they wish to be tracked for reuse. ARM Thumb1 implements and utilizes the new mechanism. All other targets are simply modified to adjust for the changed eliminateFrameIndex() prototype. llvm-svn: 83467
-
- Oct 06, 2009
-
-
Dan Gohman authored
verbose-asm mode, print comments instead. This eliminates a non-comment difference between verbose-asm mode and non-verbose-asm mode. Also, factor out the relevant code out of all the targets and into target-independent code. llvm-svn: 83392
-
Devang Patel authored
Update processDebugLoc() so that it can be used to process debug info before and after printing an instruction. llvm-svn: 83363
-
- Oct 05, 2009
-
-
Dan Gohman authored
they make it less convenient to add new entries. llvm-svn: 83308
-
Dan Gohman authored
is used in an operand which requires GR64_NOREX. llvm-svn: 83307
-
Chris Lattner authored
the new predicates I added) instead of going through a context and doing a pointer comparison. Besides being cheaper, this allows a smart compiler to turn the if sequence into a switch. llvm-svn: 83297
-
- Oct 01, 2009
-
-
Devang Patel authored
This will allow processDebugLoc() to handle scopes for DWARF debug info. llvm-svn: 83183
-