- Jan 08, 2010
-
-
Eric Christopher authored
llvm-svn: 92972
-
Chris Lattner authored
llvm-svn: 92964
-
Chris Lattner authored
that feeds into a zext, similar to the patch I did yesterday for sext. There is a lot of room for extension beyond this patch. llvm-svn: 92962
-
- Jan 07, 2010
-
-
rdar://7517201Chris Lattner authored
When folding a and(any_ext(load)) both the any_ext and the load have to have only a single use. This removes the anyext-uses.ll testcase which started failing because it is unreduced and unclear what it is testing. llvm-svn: 92950
-
Chris Lattner authored
time, no functionality change. llvm-svn: 92948
-
Evan Cheng authored
llvm-svn: 92943
-
Benjamin Kramer authored
llvm-svn: 92938
-
Eric Christopher authored
add it to the constant pool for fast-isel. We already don't add it for the normal case. llvm-svn: 92934
-
Eric Christopher authored
not-readonly segment on darwin. llvm-svn: 92933
-
Devang Patel authored
llvm-svn: 92931
-
Chris Lattner authored
llvm-svn: 92921
-
Benjamin Kramer authored
llvm-svn: 92920
-
Benjamin Kramer authored
llvm-svn: 92919
-
Benjamin Kramer authored
llvm-svn: 92918
-
Benjamin Kramer authored
llvm-svn: 92912
-
Duncan Sands authored
are prepared to look through. llvm-svn: 92898
-
Douglas Gregor authored
llvm-svn: 92896
-
Chris Lattner authored
llvm-svn: 92892
-
Chris Lattner authored
to an element of a vector in a static ctor) which occurs with an unrelated patch I'm testing. Annoyingly, EvaluateStoreInto basically does exactly the same stuff as InsertElement constant folding, but it now handles vectors, and you can't insertelement into a vector. It would be 'really nice' if GEP into a vector were not legal. llvm-svn: 92889
-
Evan Cheng authored
Fix a minor regression from my dag combiner changes. One more place which needs to look pass truncates. llvm-svn: 92885
-
Douglas Gregor authored
std::vector and llvm::SmallVector have annoying performance tradeoffs. No, I don't expect this to matter, and now it won't. llvm-svn: 92884
-
Jim Grosbach authored
llvm-svn: 92876
-
Jakob Stoklund Olesen authored
llvm-svn: 92874
-
Jakob Stoklund Olesen authored
Some instructions refer to unique labels, and so cannot be trivially cloned with CloneMachineInstr. llvm-svn: 92873
-
Jim Grosbach authored
for stack references. llvm-svn: 92871
-
- Jan 06, 2010
-
-
Jim Grosbach authored
multiple register definitions. llvm-svn: 92864
-
Eric Christopher authored
it work for any integer size return type. llvm-svn: 92853
-
Evan Cheng authored
llvm-svn: 92850
-
Evan Cheng authored
(OP (trunc x), (trunc y)) -> (trunc (OP x, y)) Unfortunately this simple change causes dag combine to infinite looping. The problem is the shrink demanded ops optimization tend to canonicalize expressions in the opposite manner. That is badness. This patch disable those optimizations in dag combine but instead it is done as a late pass in sdisel. This also exposes some deficiencies in dag combine and x86 setcc / brcond lowering. Teach them to look pass ISD::TRUNCATE in various places. llvm-svn: 92849
-
Victor Hernandez authored
llvm-svn: 92838
-
Jim Grosbach authored
llvm-svn: 92837
-
Duncan Sands authored
phi nodes when deciding which pointers point to local memory. I actually checked long ago how useful this is, and it isn't very: it hardly ever fires in the testsuite, but since Chris wants it here it is! llvm-svn: 92836
-
Mikhail Glushenkov authored
llvm-svn: 92831
-
Lang Hames authored
llvm-svn: 92830
-
Duncan Sands authored
memcpy, memset and other intrinsics that only access their arguments to be readnone if the intrinsic's arguments all point to local memory. This improves the testcase in the README to readonly, but it could in theory be made readnone, however this would involve more sophisticated analysis that looks through the memcpy. llvm-svn: 92829
-
Chris Lattner authored
llvm-svn: 92824
-
Dale Johannesen authored
bootstrap. llvm-svn: 92818
-
Dale Johannesen authored
synonyms for PPC. llvm-svn: 92817
-
Chris Lattner authored
Previously, instcombine would only promote an expression tree to the larger type if doing so eliminated two casts. This is because a need to manually do the sign extend after the promoted expression tree with two shifts. Now, we keep track of whether the result of the computation is going to be properly sign extended already. If so, we can unconditionally promote the expression, which allows us to zap more sext's. This implements rdar://6598839 (aka gcc pr38751) llvm-svn: 92815
-
Jakob Stoklund Olesen authored
An instruction like this: %reg1097:1<def> = VMOVSR %R3<kill>, 14, %reg0 Must be replaced with this when substituting physical registers: %S0<def> = VMOVSR %R3<kill>, 14, %reg0, %D0<imp-def> llvm-svn: 92812
-