- Nov 14, 2012
-
-
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
-
Matt Beaumont-Gay authored
llvm-svn: 167936
-
Alexey Samsonov authored
llvm-svn: 167928
-
Alexey Samsonov authored
llvm-svn: 167926
-
Patrik Hägglund authored
This seems like redundant leftovers from r142288 - exposing TargetData::parseSpecifier to LLParser - which got reverted. Removes redunant td != NULL checks in parseSpecifier, and simplifies the interface to parseSpecifier and init. llvm-svn: 167924
-
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
-
Craig Topper authored
llvm-svn: 167913
-
Rafael Espindola authored
llvm-svn: 167912
-
Anton Korobeynikov authored
Do some cleanup of the code while here. Inspired by patch by Logan Chien! llvm-svn: 167904
-
Matt Beaumont-Gay authored
llvm-svn: 167894
-
Michael J. Spencer authored
llvm-svn: 167893
-
Nadav Rotem authored
llvm-svn: 167892
-
Eric Christopher authored
temporarily as it is breaking the gdb bots. This reverts commit r167806/e7ff4c14b157746b3e0228d2dce9f70712d1c126. llvm-svn: 167886
-
- Nov 13, 2012
-
-
Andrew Trick authored
llvm-svn: 167880
-
Andrew Trick authored
This option will eventually either be enabled unconditionally or replaced by a more general live range splitting optimization. llvm-svn: 167879
-
Michael J. Spencer authored
llvm-svn: 167877
-
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
-
Ulrich Weigand authored
physical register as candidate for common subexpression elimination in MachineCSE. This fixes a bug on PowerPC in MultiSource/Applications/oggenc/oggenc caused by MachineCSE invalidly merging two separate DYNALLOC insns. llvm-svn: 167855
-
Shankar Easwaran authored
llvm-svn: 167853
-
Andrew Trick authored
Working on reducing unit tests. This won't be enabled unless a subtarget enables misched. llvm-svn: 167851
-
Chad Rosier authored
llvm-svn: 167849
-
Duncan Sands authored
llvm-svn: 167830
-
Duncan Sands authored
Previously in a vector of pointers, the pointer couldn't be any pointer type, it had to be a pointer to an integer or floating point type. This is a hassle for dragonegg because the GCC vectorizer happily produces vectors of pointers where the pointer is a pointer to a struct or whatever. Vector getelementptr was restricted to just one index, but now that vectors of pointers can have any pointer type it is more natural to allow arbitrary vector getelementptrs. There is however the issue of struct GEPs, where if each lane chose different struct fields then from that point on each lane will be working down into unrelated types. This seems like too much pain for too little gain, so when you have a vector struct index all the elements are required to be the same. llvm-svn: 167828
-
Benjamin Kramer authored
Part of a patch by Preston Briggs. llvm-svn: 167827
-
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
-
Andrew Trick authored
This adds the -join-globalcopies option which can be enabled by default once misched is also enabled. Ideally, the register coalescer would be able to split local live ranges in a way that produces copies that can be easily resolved by the scheduler. Until then, this heuristic should be good enough to at least allow the scheduler to run after coalescing. llvm-svn: 167825
-
Alexey Samsonov authored
Figure out <size> argument of llvm.lifetime intrinsics at the moment they are created (during function inlining) llvm-svn: 167821
-
Jyotsna Verma authored
Add a blank line. llvm-svn: 167819
-
Hal Finkel authored
llvm-svn: 167817
-
Meador Inge authored
This patch migrates the math library call simplifications from the simplify-libcalls pass into the instcombine library call simplifier. I have typically migrated just one simplifier at a time, but the math simplifiers are interdependent because: 1. CosOpt, PowOpt, and Exp2Opt all depend on UnaryDoubleFPOpt. 2. CosOpt, PowOpt, Exp2Opt, and UnaryDoubleFPOpt all depend on the option -enable-double-float-shrink. These two factors made migrating each of these simplifiers individually more of a pain than it would be worth. So, I migrated them all together. llvm-svn: 167815
-
Hal Finkel authored
Don't choose a vectorization plan containing only shuffles and vector inserts/extracts. Due to inperfections in the cost model, these can lead to infinite recusion. llvm-svn: 167811
-
Evan Cheng authored
llvm-svn: 167809
-
Andrew Trick authored
For now be more conservative in case other out-of-tree schedulers rely on the old behavior of artificial edges. llvm-svn: 167808
-