- Oct 30, 2012
-
-
Chandler Carruth authored
integers in that the code to handle split alloca-wide integer loads or stores doesn't come first. It should, for the same reasons as with integers, and the PR attests to that. Also had to fix a busted assert in that this test case also covers. llvm-svn: 167051
-
Chad Rosier authored
llvm-svn: 167050
-
Hal Finkel authored
Instead of recomputing relative pointer information just prior to fusing, cache this information (which also needs to be computed during the candidate-pair selection process). This cuts down on the total number of SE queries made, and also is a necessary intermediate step on the road toward including shuffle costs in the pair selection procedure. No functionality change is intended. llvm-svn: 167049
-
Akira Hatanaka authored
use the caller's stack. llvm-svn: 167048
-
Chad Rosier authored
llvm-svn: 167046
-
Benjamin Kramer authored
Thanks to Preston Briggs for catching this! llvm-svn: 167045
-
Hal Finkel authored
We need to make sure that we take the correct load/store alignment when the inputs are flipped. llvm-svn: 167044
-
Akira Hatanaka authored
information will be used by IsEligibleForTailCallOptimization to determine whether a call can be tail-call optimized. llvm-svn: 167043
-
Hal Finkel authored
Stop propagating the FlipMemInputs variable into the routines that create the replacement instructions. Instead, just flip the arguments of those routines. This allows for some associated cleanup (not all of which is done here). No functionality change is intended. llvm-svn: 167042
-
Akira Hatanaka authored
for passing a function call argument on a stack. llvm-svn: 167041
-
Chad Rosier authored
the MachineInstr MayLoad/MayLoad flags are based on the tablegen implementation. For inline assembly, however, we need to compute these based on the constraints. Revert r166929 as this is no longer needed, but leave the test case in place. rdar://12033048 and PR13504 llvm-svn: 167040
-
Akira Hatanaka authored
llvm-svn: 167039
-
Hal Finkel authored
SE was being called during the instruction-fusion process (when the result is unreliable, and thus ignored). No functionality change is intended. llvm-svn: 167037
-
Nadav Rotem authored
llvm-svn: 167036
-
Nadav Rotem authored
Speedup SciMark by 1% llvm-svn: 167035
-
Adhemerval Zanella authored
This patch expands FSQRT for floating point vector types when altivec is used. llvm-svn: 167034
-
Nadav Rotem authored
LoopVectorize: Fix a bug in the initialization of reduction variables. AND needs to start at all-one while XOR, and OR need to start at zero. llvm-svn: 167032
-
Ulrich Weigand authored
Update Transforms/LICM/2003-12-11-SinkingToPHI.ll test to use %defaultjit as well. llvm-svn: 167031
-
Bill Wendling authored
llvm-svn: 167029
-
Michael Liao authored
llvm-svn: 167027
-
Quentin Colombet authored
llvm-svn: 167020
-
Duncan Sands authored
with different sizes. llvm-svn: 167018
-
Hans Wennborg authored
function attributes, etc. llvm-svn: 167016
-
Adhemerval Zanella authored
This patch adds more support for vector type comparisons using altivec. It adds correct support for v16i8, v8i16, v4i32, and v4f32 vector types for comparison operators ==, !=, >, >=, <, and <=. llvm-svn: 167015
-
Duncan Sands authored
Simplify the implementation of the corresponding integer and float functions and move them inline while there. llvm-svn: 167014
-
Ulrich Weigand authored
This fixes Clang :: CodeGen/complex-builtints.c on PowerPC. llvm-svn: 167013
-
Hans Wennborg authored
When the switch-to-lookup tables transform landed in SimplifyCFG, it was pointed out that this could be inappropriate for some targets. Since there was no way at the time for the pass to know anything about the target, an awkward reverse-transform was added in CodeGenPrepare that turned lookup tables back into switches for some targets. This patch uses the new TargetTransformInfo to determine if a switch should be transformed, and removes CodeGenPrepare::ConvertLoadToSwitch. llvm-svn: 167011
-
Hal Finkel authored
getCastInstrCost had an assert prohibiting scalar to vector casts. Such casts, however, are allowed. This should make the vectorizer buildbot happier. llvm-svn: 166998
-
Sid Manning authored
* Add Hexagon specific section indexes for small data - Reviewed by Michael Spencer llvm-svn: 166997
-
Jim Grosbach authored
When the operand is a plain immediate rather than a label, print it as [pc, #imm] like we do for the Thumb2 wide encoding variant. rdar://12154503 llvm-svn: 166991
-
Reed Kotler authored
We will make them delay slot forms if there is something that can be placed in the delay slot during a separate pass. Mips16 extended instructions cannot be placed in delay slots. llvm-svn: 166990
-
Nadav Rotem authored
LoopVectorizer: change debug prints: Print the module identifier when deciding to vectorize. When deciding not to vectorize do not print the called function name because it can be null. llvm-svn: 166989
-
Jakub Staszak authored
to test it with chapni's fix (-mattr=+avx). llvm-svn: 166985
-
Kevin Enderby authored
is 24 bits not 20 and the decoding needed to correctly handle converting the J1 and J2 bits to their I1 and I2 values to reconstruct the displacement. llvm-svn: 166982
-
Jakub Staszak authored
llvm-svn: 166979
-
- Oct 29, 2012
-
-
NAKAMURA Takumi authored
llvm-svn: 166974
-
Jakub Staszak authored
llvm-svn: 166973
-
Jakub Staszak authored
llvm-svn: 166972
-
Jakub Staszak authored
%0 = load <8 x i16>* %dest %1 = shufflevector <8 x i16> %0, <8 x i16> %in, <8 x i32> < i32 0, i32 1, i32 2, i32 3, i32 13, i32 undef, i32 14, i32 14> store <8 x i16> %1, <8 x i16>* %dest We get: vmovlpd (%eax), %xmm0, %xmm0 instead of: vmovaps (%eax), %xmm1 vmovsd %xmm1, %xmm0, %xmm0 No extra test-case is added. I just fixed the existing one (also it uses FileCheck now). llvm-svn: 166971
-
Nadav Rotem authored
llvm-svn: 166970
-