- Jan 20, 2011
-
-
Devang Patel authored
llvm-svn: 123856
-
- Jan 19, 2011
-
-
Jakob Stoklund Olesen authored
Region splitting includes loop splitting as a subset, and it is more generic. The splitting heuristics for variables that are live in more than one block are now: 1. Try to create a region that covers multiple basic blocks. 2. Try to create a new live range for each block with multiple uses. 3. Spill. Steps 2 and 3 are similar to what the standard spiller is doing. llvm-svn: 123853
-
Nick Lewycky authored
llvm-svn: 123842
-
Nick Lewycky authored
by indvars through the scev expander. trunc(add x, y) --> add(trunc x, y). Currently SCEV largely folds the other way which is probably wrong, but preserved to minimize churn. Instcombine doesn't do this fold either, demonstrating a missed optz'n opportunity on code doing add+trunc+add. llvm-svn: 123838
-
Bruno Cardoso Lopes authored
llvm-svn: 123837
-
Rafael Espindola authored
llvm-svn: 123834
-
Nick Lewycky authored
llvm-svn: 123832
-
Daniel Dunbar authored
llvm-svn: 123823
-
Andrew Trick authored
of the floating point types less than 64-bits. It's somewhat of a temporary hack but forces more accurate modeling of register pressure and results in fewer spills. llvm-svn: 123811
-
Andrew Trick authored
llvm-svn: 123810
-
Evan Cheng authored
Don't forget to emit the load from indirect symbol when using movw + movt to materialize GA indirect symbols. llvm-svn: 123809
-
- Jan 18, 2011
-
-
Bruno Cardoso Lopes authored
vmrs reg, fpexc vmrs reg, fpsid vmsr fpexc, reg vmsr fpsid, reg llvm-svn: 123783
-
Bruno Cardoso Lopes authored
llvm-svn: 123778
-
Bruno Cardoso Lopes authored
llvm-svn: 123776
-
Dan Gohman authored
are pointing to the same object, one pointer is accessing the entire object, and the other is access has a non-zero size. This prevents TBAA from kicking in and saying NoAlias in such cases. llvm-svn: 123775
-
Jakob Stoklund Olesen authored
Analyze the live range's behavior entering and leaving basic blocks. Compute an interference pattern for each allocation candidate, and use SpillPlacement to find an optimal region where that register can be live. This code is still not enabled. llvm-svn: 123774
-
Bruno Cardoso Lopes authored
llvm-svn: 123772
-
-
Bruno Cardoso Lopes authored
llvm-svn: 123770
-
Jim Grosbach authored
llvm-svn: 123769
-
Bruno Cardoso Lopes authored
llvm-svn: 123768
-
Bruno Cardoso Lopes authored
llvm-svn: 123766
-
Bruno Cardoso Lopes authored
llvm-svn: 123763
-
Bruno Cardoso Lopes authored
llvm-svn: 123760
-
Duncan Sands authored
These were not recommended by my auto-simplifier since they don't fire often enough. However they do fire from time to time, for example they remove one subtraction from the final bitcode for 483.xalancbmk. llvm-svn: 123755
-
Duncan Sands authored
simplification in fully optimized code. It occurs sporadically in the testsuite, and many times in 403.gcc: the final bitcode has 131 fewer subtractions after this change. The reason that the multiplies are not eliminated is the same reason that instcombine did not catch this: they are used by other instructions (instcombine catches this with a more general transform which in general is only profitable if the operands have only one use). llvm-svn: 123754
-
Chris Lattner authored
llvm-svn: 123752
-
Venkatraman Govindaraju authored
SPARC backend: Modified LowerCall and LowerFormalArguments so that they use CallingConv assignments. llvm-svn: 123749
-
Cameron Zwarich authored
llvm-svn: 123748
-
Cameron Zwarich authored
llvm-svn: 123747
-
Daniel Dunbar authored
llvm-svn: 123746
-
Daniel Dunbar authored
llvm-svn: 123745
-
Daniel Dunbar authored
llvm-svn: 123744
-
Cameron Zwarich authored
llvm-svn: 123743
-
Daniel Dunbar authored
llvm-svn: 123740
-
Daniel Dunbar authored
llvm-svn: 123739
-
Daniel Dunbar authored
McARM: Always keep an offset expression, if used (instead of assuming == 0 if used but not present), and simplify logic. Also, clean up various non-sensicalisms in isMemModeRegThumb() and isMemModeImmThumb(). llvm-svn: 123738
-
Daniel Dunbar authored
llvm-svn: 123737
-
Daniel Dunbar authored
llvm-svn: 123736
-
Cameron Zwarich authored
llvm-svn: 123732
-