- Feb 16, 2011
-
-
Evan Cheng authored
llvm-svn: 125625
-
Evan Cheng authored
Some single precision VFP instructions may be executed on NEON pipeline, but not double precision ones. llvm-svn: 125624
-
Nick Lewycky authored
integer. Fixes PR9228! llvm-svn: 125613
-
- Feb 15, 2011
-
-
Roman Divacky authored
This is submitted by Joerg Sonnenberger and fixes his PR8685. llvm-svn: 125595
-
Jakob Stoklund Olesen authored
This is necessary to avoid a crash in certain tangled situations where a kill flag is first correctly moved to a merged instruction, and then needs to be moved again: STR %R0, a... STR %R0<kill>, b... First becomes: STR %R0, b... STM a, %R0<kill>, ... and then: STM a, %R0, ... STM b, %R0<kill>, ... We can now remove the kill flag from the merged STM when needed. 8960050. llvm-svn: 125591
-
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
-
Argyrios Kyrtzidis authored
llvm-svn: 125574
-
Devang Patel authored
llvm-svn: 125571
-
Devang Patel authored
llvm-svn: 125567
-
Duncan Sands authored
llvm-svn: 125563
-
Argyrios Kyrtzidis authored
-Use the tablegen class name for the checker class name. -Mark checker packages as hidden/not hidden. llvm-svn: 125558
-
Nadav Rotem authored
Fix 9216 - Endless loop in InstCombine pass. The pattern "A&(A^B) -> A & ~B" recreated itself because ~B is actually a xor -1. llvm-svn: 125557
-
Evan Cheng authored
llvm-svn: 125552
-
Devang Patel authored
llvm-svn: 125547
-
Chris Lattner authored
llvm-svn: 125546
-
Chris Lattner authored
llvm-svn: 125544
-
Chris Lattner authored
llvm-svn: 125543
-
Chris Lattner authored
llvm-svn: 125537
-
Chris Lattner authored
llvm-svn: 125536
-
Bob Wilson authored
llvm-svn: 125534
-
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
-
Devang Patel authored
Do not hoist @llvm.dbg.value. Here, @llvm.dbg.value is "referring" a value that is modified inside loop. llvm-svn: 125529
-
- Feb 14, 2011
-
-
Rafael Espindola authored
section. llvm-svn: 125526
-
Bob Wilson authored
The i64_buildvector test in this file relies on the alignment of i64 and f64 types being the same, which is true for Darwin but not AAPCS. llvm-svn: 125525
-
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
-
Bruno Cardoso Lopes authored
llvm-svn: 125521
-
Oscar Fuentes authored
for all compiler invocations. llvm-svn: 125513
-
Chris Lattner authored
builders unhappy. llvm-svn: 125504
-
Argyrios Kyrtzidis authored
llvm-svn: 125493
-
Rafael Espindola authored
llvm-svn: 125490
-
Bruno Cardoso Lopes authored
- Add custom operand matching for imod and iflags. - Rename SplitMnemonicAndCC to SplitMnemonic since it splits more than CC from mnemonic. - While adding ".w" as an operand, don't change "Head" to avoid passing the wrong mnemonic to ParseOperand. - Add asm parser tests. - Add disassembler tests just to make sure it can catch all cps versions. llvm-svn: 125489
-
Chris Lattner authored
idiom. Change various clients to simplify their code. llvm-svn: 125487
-
Chris Lattner authored
use in many places where we pass a pointer and size to abstract APIs that can take C arrays, std::vector, SmallVector, etc. It is to arrays what StringRef is to strings. llvm-svn: 125486
-
Chris Lattner authored
vector fp conversions. llvm-svn: 125482
-
Chris Lattner authored
llvm-svn: 125481
-
Nick Lewycky authored
llvm-svn: 125480
-
Cameron Zwarich authored
llvm-svn: 125477
-
Cameron Zwarich authored
llvm-svn: 125476
-
- Feb 13, 2011
-
-
Chris Lattner authored
llvm-svn: 125471
-
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
-