- Nov 15, 2012
-
-
Adhemerval Zanella authored
This patch lowers the llvm.floor, llvm.ceil, llvm.trunc, and llvm.nearbyint to Altivec instruction when using 4 single-precision float vectors. llvm-svn: 168086
-
Akira Hatanaka authored
llvm-svn: 168078
-
Jakub Staszak authored
llvm-svn: 168076
-
Jakub Staszak authored
llvm-svn: 168064
-
Dmitri Gribenko authored
llvm-svn: 168049
-
Craig Topper authored
llvm-svn: 168030
-
Craig Topper authored
llvm-svn: 168029
-
Craig Topper authored
Make a bunch of floating point operations on vectors Expand so that instruction selection won't fail. llvm-svn: 168028
-
Craig Topper authored
llvm-svn: 168025
-
Jakub Staszak authored
llvm-svn: 168006
-
NAKAMURA Takumi authored
llvm-svn: 168001
-
- Nov 14, 2012
-
-
Eric Christopher authored
Approved by Chris Lattner. llvm-svn: 167984
-
Jakub Staszak authored
llvm-svn: 167976
-
Jyotsna Verma authored
llvm-svn: 167974
-
Benjamin Kramer authored
The stack realignment code was fixed to work when there is stack realignment and a dynamic alloca is present so this shouldn't cause correctness issues anymore. Note that this also enables generation of AVX instructions for memset under the assumptions: - Unaligned loads/stores are always fast on CPUs supporting AVX - AVX is not slower than SSE We may need some tweaked heuristics if one of those assumptions turns out not to be true. Effectively reverts r58317. Part of PR2962. llvm-svn: 167967
-
Nadav Rotem authored
The code pattern "imm0_255_neg" is used for checking if an immediate value is a small negative number. This patch changes the definition of negative from -0..-255 to -1..-255. I am changing this because of a bug that we had in some of the patterns that assumed that "subs" of zero does not set the carry flag. rdar://12028498 llvm-svn: 167963
-
Justin Holewinski authored
Loads from i1 become loads from i8 followed by trunc Stores to i1 become zext to i8 followed by store to i8 Fixes PR13291 llvm-svn: 167948
-
Jim Grosbach authored
When an instruction as written requires 32-bit mode and we're assembling in 64-bit mode, or vice-versa, issue a more specific diagnostic about what's wrong. rdar://12700702 llvm-svn: 167937
-
Craig Topper authored
llvm-svn: 167922
-
Craig Topper authored
llvm-svn: 167916
-
Craig Topper authored
Set FFLOOR for vectors to expand on CellSPU to keep instruction selection from failing on llvm.floor of a vector. llvm-svn: 167914
-
Anton Korobeynikov authored
Do some cleanup of the code while here. Inspired by patch by Logan Chien! llvm-svn: 167904
-
- Nov 13, 2012
-
-
Ulrich Weigand authored
generate them from PPCELFObjectWriter::getRelocTypeInner as appropriate. llvm-svn: 167864
-
Ulrich Weigand authored
- lwaux - lhzux - stbu llvm-svn: 167863
-
Ulrich Weigand authored
operand field name mismatches in: - AForm_3 (fmul, fmuls) - XFXForm_5 (mtcrf) - XFLForm (mtfsf) llvm-svn: 167862
-
Ulrich Weigand authored
by using a new instruction format BForm_1. llvm-svn: 167861
-
Ulrich Weigand authored
using a new instruction format AForm_4. llvm-svn: 167860
-
Manman Ren authored
chain is correctly setup. As an example, if the original load must happen before later stores, we need to make sure the constructed VZEXT_LOAD is constrained to be before the stores. rdar://12684358 llvm-svn: 167859
-
Andrew Trick authored
This allows me to begin enabling (or backing out) misched by default for one subtarget at a time. To run misched we typically want to: - Disable SelectionDAG scheduling (use the source order scheduler) - Enable more aggressive coalescing (until we decide to always run the coalescer this way) - Enable MachineScheduler pass itself. Disabling PostRA sched may follow for some subtargets. llvm-svn: 167826
-
Jyotsna Verma authored
Add a blank line. llvm-svn: 167819
-
- Nov 12, 2012
-
-
Andrew Trick authored
This infrastructure is generally useful for any target that wants to strongly prefer two instructions to be adjacent after scheduling. A following checkin will add target-specific hooks with unit tests. Then this feature will be enabled by default with misched. llvm-svn: 167742
-
Ulrich Weigand authored
llvm-svn: 167737
-
Eric Christopher authored
llvm-svn: 167719
-
Michael Liao authored
- Fix operand order for atomic sub, where the minuend is the value loaded from memory and the subtrahend is the parameter specified. llvm-svn: 167718
-
Justin Holewinski authored
Each SM and PTX version is modeled as a subtarget feature/CPU. Additionally, PTX 3.1 is added as the default PTX version to be out-of-the-box compatible with CUDA 5.0. Available CPUs for this target: sm_10 - Select the sm_10 processor. sm_11 - Select the sm_11 processor. sm_12 - Select the sm_12 processor. sm_13 - Select the sm_13 processor. sm_20 - Select the sm_20 processor. sm_21 - Select the sm_21 processor. sm_30 - Select the sm_30 processor. sm_35 - Select the sm_35 processor. Available features for this target: ptx30 - Use PTX version 3.0. ptx31 - Use PTX version 3.1. sm_10 - Target SM 1.0. sm_11 - Target SM 1.1. sm_12 - Target SM 1.2. sm_13 - Target SM 1.3. sm_20 - Target SM 2.0. sm_21 - Target SM 2.1. sm_30 - Target SM 3.0. sm_35 - Target SM 3.5. llvm-svn: 167699
-
- Nov 11, 2012
-
-
Craig Topper authored
llvm-svn: 167696
-
Nadav Rotem authored
llvm-svn: 167685
-
- Nov 10, 2012
-
-
Craig Topper authored
llvm-svn: 167673
-
Craig Topper authored
llvm-svn: 167671
-
Craig Topper authored
llvm-svn: 167670
-