- Feb 21, 2011
-
-
Stuart Hastings authored
Radar 9012638. llvm-svn: 126127
-
- Feb 20, 2011
-
-
Nadav Rotem authored
The DAGCombiner folds the zext into complex load instructions. This patch prevents this optimization on vectors since none of the supported targets knows how to perform load+vector_zext in one instruction. llvm-svn: 126080
-
- Feb 19, 2011
-
-
Devang Patel authored
Do not emit empty DW_TAG_lexical_block DIEs. In one test case, size of debug info reduced by almost 7%. llvm-svn: 126009
-
Jakob Stoklund Olesen authored
llvm-svn: 126005
-
Jakob Stoklund Olesen authored
llvm-svn: 126003
-
Jakob Stoklund Olesen authored
llvm-svn: 126002
-
Jakob Stoklund Olesen authored
llvm-svn: 126001
-
- Feb 18, 2011
-
-
Devang Patel authored
Do not lose debug info of an inlined function argument even if the argument is only used through GEPs. This time with a fix that avoids using invalidated DenseMap iterator. llvm-svn: 125984
-
Jakob Stoklund Olesen authored
All new virtual registers created for spilling or splitting point back to their original. llvm-svn: 125980
-
Oscar Fuentes authored
llvm-svn: 125968
-
Jakob Stoklund Olesen authored
The rewriter works almost identically to -rewriter=trivial, except it also eliminates any identity copies. This makes the new register allocators independent of VirtRegRewriter.cpp which will be going away at the same time as RegAllocLinearScan. llvm-svn: 125967
-
Bill Wendling authored
llvm-svn: 125960
-
Cameron Zwarich authored
llvm-svn: 125830
-
Jakob Stoklund Olesen authored
llvm-svn: 125802
-
Devang Patel authored
Do not lose debug info of an inlined function argument even if the argument is only used through GEPs. llvm-svn: 125794
-
- Feb 17, 2011
-
-
Jakob Stoklund Olesen authored
llvm-svn: 125789
-
Jakob Stoklund Olesen authored
A local live range is live in a single basic block. If such a range fails to allocate, try to find a sub-range that would get a larger spill weight than its interference. llvm-svn: 125764
-
Duncan Sands authored
the time but presumably my email got lost). Examples where the previous logic got it wrong: (1) a signed i8 multiply of 64 by 2 overflows, but the high part is zero; (2) a signed i8 multiple of -128 by 2 overflows, but the high part is all ones. llvm-svn: 125748
-
Cameron Zwarich authored
llvm-svn: 125728
-
Cameron Zwarich authored
llvm-svn: 125727
-
Cameron Zwarich authored
llvm-svn: 125726
-
- Feb 16, 2011
-
-
Stuart Hastings authored
other getNode() methods. Radar 9002173. llvm-svn: 125665
-
Eric Christopher authored
llvm-svn: 125651
-
Eric Christopher authored
transformation if we can't legally create a build vector of the correct type. Check that we can make the transformation first, and add a TODO to refactor this code with similar cases. Fixes: PR9223 and rdar://9000350 llvm-svn: 125631
-
Evan Cheng authored
llvm-svn: 125625
-
- Feb 15, 2011
-
-
Devang Patel authored
Ignore DBG_VALUE machine instructions while constructing instruction ranges based on location info. Machine instruction range consisting of only DBG_VALUE MIs only contributes consecutive labels in assembly output, which is harmless, and empty scope entry in DebugInfo, which confuses debugger tools. llvm-svn: 125577
-
Duncan Sands authored
llvm-svn: 125563
-
Evan Cheng authored
llvm-svn: 125552
-
Chris Lattner authored
llvm-svn: 125537
-
Jakob Stoklund Olesen authored
Simplify the spill weight calculation a bit by bypassing getApproximateInstructionCount() and using LiveInterval::getSize() directly. This changes the computed spill weights, but only by a constant factor in each function. It should not affect how spill weights compare against each other, and so it shouldn't affect code generation. llvm-svn: 125530
-
- Feb 14, 2011
-
-
Rafael Espindola authored
section. llvm-svn: 125526
-
Evan Cheng authored
Fix PR8854. Track inserted copies to avoid read before write. Sorry, it's hard to reduce a sensible small test case. llvm-svn: 125523
-
Chris Lattner authored
builders unhappy. llvm-svn: 125504
-
Rafael Espindola authored
llvm-svn: 125490
-
Chris Lattner authored
idiom. Change various clients to simplify their code. llvm-svn: 125487
-
Chris Lattner authored
vector fp conversions. llvm-svn: 125482
-
Chris Lattner authored
llvm-svn: 125481
-
Cameron Zwarich authored
llvm-svn: 125477
-
Cameron Zwarich authored
llvm-svn: 125476
-
- Feb 13, 2011
-
-
Chris Lattner authored
have their low bits set to zero. This allows us to optimize out explicit stack alignment code like in stack-align.ll:test4 when it is redundant. Doing this causes the code generator to start turning FI+cst into FI|cst all over the place, which is general goodness (that is the canonical form) except that various pieces of the code generator don't handle OR aggressively. Fix this by introducing a new SelectionDAG::isBaseWithConstantOffset predicate, and using it in places that are looking for ADD(X,CST). The ARM backend in particular was missing a lot of addressing mode folding opportunities around OR. llvm-svn: 125470
-