- Aug 13, 2010
-
-
Dan Gohman authored
ScalarEvolution::getAddExpr, which can be pretty expensive, when nothing has changed, which is pretty common. llvm-svn: 111042
-
Bruno Cardoso Lopes authored
llvm-svn: 111041
-
Jim Grosbach authored
llvm-svn: 111040
-
Dan Gohman authored
rather than testing whether the loop contains the other's header. llvm-svn: 111039
-
Dan Gohman authored
llvm-svn: 111038
-
Dan Gohman authored
the constant operand on the left, as that's where ScalarEvolution will end up canonicalizing to. llvm-svn: 111037
-
Dan Gohman authored
associated loop. This avoids potentially expensive traversals of the add recurrence's operands. llvm-svn: 111034
-
Jim Grosbach authored
llvm-svn: 111033
-
Mikhail Glushenkov authored
Apparently, this is now fixed in Clang. llvm-svn: 111032
-
Dan Gohman authored
since they can support trivial implementations. This avoids potentially expensive traversals of the operands. llvm-svn: 111031
-
Bob Wilson authored
same lines as the change I made for ARM saturate instructions. llvm-svn: 111029
-
Dale Johannesen authored
misanalysis and is undesirable. llvm-svn: 111028
-
Bruno Cardoso Lopes authored
llvm-svn: 111022
-
Bruno Cardoso Lopes authored
llvm-svn: 111021
-
Jim Grosbach authored
llvm-svn: 111019
-
Mikhail Glushenkov authored
llvm-svn: 111010
-
Mikhail Glushenkov authored
llvm-svn: 111008
-
Mikhail Glushenkov authored
llvm-svn: 111007
-
Mikhail Glushenkov authored
llvm-svn: 111004
-
Eric Christopher authored
llvm-svn: 111001
-
Eric Christopher authored
llvm-svn: 111000
-
Mikhail Glushenkov authored
llvm-svn: 110999
-
Mikhail Glushenkov authored
Tested on Linux and Darwin; please add platform-specific XFAILs/mail me a bug report if this still fails. llvm-svn: 110998
-
Jakob Stoklund Olesen authored
numbers match. The old check could accidentally leave holes in openli. Also let useIntv add all ranges for the phi-def value inserted by enterIntvAtEnd. This works as long at the value mapping is established in enterIntvAtEnd. llvm-svn: 110995
-
Jakob Stoklund Olesen authored
function to do it. llvm-svn: 110994
-
Benjamin Kramer authored
llvm-svn: 110991
-
Nate Begeman authored
llvm-svn: 110987
-
Nate Begeman authored
Move some code from Verifier into SVI::isValidOperands. This allows us to catch bad shufflevector operations when they are created, rather than waiting for someone to notice later on. llvm-svn: 110986
-
Dan Gohman authored
llvm-svn: 110983
-
Dan Gohman authored
llvm-svn: 110982
-
Dan Gohman authored
llvm-svn: 110981
-
Jakob Stoklund Olesen authored
This can happen if the original interval has been broken into two disconnected parts. Ideally, we should be able to detect when the graph is disconnected and create separate intervals, but that code is not implemented yet. Example: Two basic blocks are both branching to a loop header. Our interval is defined in both basic blocks, and live into the loop along both edges. We decide to split the interval around the loop. The interval is split into an inside part and an outside part. The outside part now has two disconnected segments, one in each basic block. If we later decide to split the outside interval into single blocks, we get one interval per basic block and an empty dupli for the remainder. llvm-svn: 110976
-
Jakob Stoklund Olesen authored
split intervals. THis means the analysis can be used for multiple splits as long as curli doesn't shrink. llvm-svn: 110975
-
Chris Lattner authored
before it rewrites the code, we need to use that in the post-rewrite pass. llvm-svn: 110962
-
- Aug 12, 2010
-
-
Bruno Cardoso Lopes authored
llvm-svn: 110954
-
Johnny Chen authored
the memory barrier variants (other than 'SY' full system domain read and write) are treated as one instruction with option operand. llvm-svn: 110951
-
Jakob Stoklund Olesen authored
If a phi-def value were removed from the interval, the phi-kill flags are no longer valid. llvm-svn: 110949
-
Evan Cheng authored
Make sure ARM constant island pass does not break up an IT block. If the split point is in the middle of an IT block, it should move it up to just above the IT instruction. rdar://8302637 llvm-svn: 110947
-
Bruno Cardoso Lopes authored
- Teach SSEDomainFix to switch between different levels of AVX instructions. Here we guess that AVX will have domain issues, so just implement them for consistency and in the future we remove if it's unnecessary. - Make foldMemoryOperandImpl aware of 256-bit zero vectors folding and support the 128-bit counterparts of AVX too. - Make sure MOV[AU]PS instructions are only selected when SSE1 is enabled, and duplicate the patterns to match AVX. - Add a testcase for a simple 128-bit zero vector creation. llvm-svn: 110946
-
Jakob Stoklund Olesen authored
llvm-svn: 110944
-