summaryrefslogtreecommitdiffstats
path: root/llvm
Commit message (Collapse)AuthorAgeFilesLines
* Reapply this increase to the number of virtual registers. All of theEric Christopher2010-09-031-1/+1
| | | | | | | | various breakages appear to be dealt with. Patch by Pekka Jääskeläinen. llvm-svn: 113024
* Disable the asserts that check that normalization is perfectlyDan Gohman2010-09-031-2/+7
| | | | | | | | | invertible. ScalarEvolution's folding routines don't always succeed in canonicalizing equal expressions to a single canonical form, and this can cause these asserts to fail, even though there's no actual correctness problem. This fixes PR8066. llvm-svn: 113021
* Reapply considered harmfull part of rr112934 and r112942.Bruno Cardoso Lopes2010-09-031-12/+109
| | | | | | | | "Use target specific nodes instead of relying in unpckl and unpckh pattern fragments during isel time. Also place a depth limit in getShuffleScalarElt. llvm-svn: 113020
* previous patch was a little too tricky for its own good. Don't try toJim Grosbach2010-09-031-8/+7
| | | | | | | | overload UserInInstr. Explicitly check Allocatable. The early exit in the condition will mean the performance impact of the extra test should be minimal. llvm-svn: 113016
* Remove the rest of the nonexistent 64-bit AVX instructions.Dale Johannesen2010-09-032-175/+76
| | | | | | Bruno, please review. llvm-svn: 113014
* Generalize getFieldType to work on all TypedInits. Add a couple of ↵David Greene2010-09-034-23/+41
| | | | | | | | testcases from Amaury Pouly. llvm-svn: 113010
* Reapply last harmless part of r112934, the pattern fragment to match X86UnpcklpdBruno Cardoso Lopes2010-09-031-0/+7
| | | | llvm-svn: 113009
* Reintroduce a simple function refactoring done in r112934, also without any ↵Bruno Cardoso Lopes2010-09-031-10/+12
| | | | | | functionality changes llvm-svn: 113008
* Reapply piecies of r112942 and r112934 which don't doBruno Cardoso Lopes2010-09-031-0/+36
| | | | | | functional changes llvm-svn: 113007
* Reapply Fix commentBruno Cardoso Lopes2010-09-031-3/+3
| | | | llvm-svn: 113006
* Revert r112934, "- Use specific nodes to match unpckl masks.", which introducedDaniel Dunbar2010-09-032-133/+16
| | | | | | | some infinite loop and select failures. - Apologies for eager reverting, but its branch day. llvm-svn: 113000
* Revert r112938 "Fix comment", which depends on r112934, which introduced someDaniel Dunbar2010-09-031-3/+3
| | | | | | infinite loop and select failures. llvm-svn: 112999
* Revert r112942, "Use punpckh and unpckh family of nodes instead of using unpckhDaniel Dunbar2010-09-031-23/+3
| | | | | | | mask pattern fragment", which depends on r112934, which introduced some infinite loop and select failures. llvm-svn: 112998
* Add a missing check when legalizing a vector extending load. This doesn'tBob Wilson2010-09-031-3/+5
| | | | | | | solve the root problem, but it corrects the bug in the code I added to support legalizing in the case where the non-extended type is also legal. llvm-svn: 112997
* Get rid of "passing signed into unsigned parameter" warning on PPC.Bill Wendling2010-09-031-1/+1
| | | | llvm-svn: 112995
* Add support for simplifying a load from a computed value to a load from a ↵Owen Anderson2010-09-033-8/+63
| | | | | | | | global when it is provable that they're equivalent. This fixes PR4855. llvm-svn: 112994
* Quiesce warning about non-virtual d'tor in virtual class.Bill Wendling2010-09-031-2/+2
| | | | llvm-svn: 112991
* Re-apply r112883:Jim Grosbach2010-09-035-36/+98
| | | | | | | | | | | | | | "For ARM stack frames that utilize variable sized objects and have either large local stack areas or require dynamic stack realignment, allocate a base register via which to access the local frame. This allows efficient access to frame indices not accessible via the FP (either due to being out of range or due to dynamic realignment) or the SP (due to variable sized object allocation). In particular, this greatly improves efficiency of access to spill slots in Thumb functions which contain VLAs." r112986 fixed a latent bug exposed by the above. llvm-svn: 112989
* VirtRegRewriter checks for early clobbers before it reuses an available stackJakob Stoklund Olesen2010-09-031-5/+7
| | | | | | | | | | | | slot. Teach it to also check for early clobbered aliases, and early clobber operands following the current operand. This fixes the miscompilation in PR8044 where EC registers eax and ecx were being used for inputs. llvm-svn: 112988
* Add a test for PR4413, which was apparently fixed at some point in the past.Owen Anderson2010-09-031-0/+21
| | | | llvm-svn: 112987
* Check the local frame alignment for determining whether dynamic stackJim Grosbach2010-09-031-1/+1
| | | | | | | | | alignment should be performed. Otherwise dynamic realignment may trigger when the register allocator has already used the frame pointer as a general purpose register. That is, we need to make sure that the list of reserved registers doesn't change after register allocation. llvm-svn: 112986
* Add 'const' to getter function.Jim Grosbach2010-09-031-1/+1
| | | | llvm-svn: 112984
* Finish converting the rest of the NEON VLD instructions to use pseudo-Bob Wilson2010-09-034-154/+149
| | | | | | | | | instructions prior to regalloc. Since it's getting a little close to the 2.8 branch deadline, I'll have to leave the rest of the instructions handled by the NEONPreAllocPass for now, but I didn't want to leave half of the VLD instructions converted and the other half not. llvm-svn: 112983
* Remove a TODO comment; this is now filed in bugzilla (PR8005).Dan Gohman2010-09-031-4/+0
| | | | llvm-svn: 112982
* Fix Windows stuff to follow the existing source organization.Dan Gohman2010-09-031-15/+17
| | | | llvm-svn: 112976
* Add PR number to test.Owen Anderson2010-09-031-0/+1
| | | | llvm-svn: 112971
* Rename 'libprofile/exported_symbols.lst' to 'libprofile/libprofile.exports'.Mikhail Glushenkov2010-09-032-4/+4
| | | | | | | Makefile.rules assumes that all EXPORTED_SYMBOL_FILEs have the .exports extension. llvm-svn: 112964
* Revert "Rules for win32 ld shouldn't fire when cross-compiling."Mikhail Glushenkov2010-09-031-7/+0
| | | | | | This reverts commit 012b374e5b46fe93a8fdf605f5929fa8239e0960. llvm-svn: 112963
* Revert "For ARM stack frames that utilize variable sized objects and have ↵Daniel Dunbar2010-09-035-98/+36
| | | | | | | | either", it is breaking oggenc with Clang for ARMv6. This reverts commit 8d6e29cfda270be483abf638850311670829ee65. llvm-svn: 112962
* Zap dead code.Benjamin Kramer2010-09-032-13/+0
| | | | llvm-svn: 112955
* Rules for win32 ld shouldn't fire when cross-compiling.Mikhail Glushenkov2010-09-031-0/+7
| | | | llvm-svn: 112954
* Reapply commit 112702 which was speculatively reverted by echristo.Duncan Sands2010-09-031-82/+80
| | | | | | | | | | Original commit message: Use the SSAUpdator to turn calls to eh.exception that are not in a landing pad into uses of registers rather than loads from a stack slot. Doesn't touch the 'orrible hack code - Bill needs to persuade me harder :) llvm-svn: 112952
* Re-enable CorrelatedValuePropagation. I've tested nightly tests, llvm-gcc Owen Anderson2010-09-031-0/+2
| | | | | | bootstrap, and clang self-host. llvm-svn: 112948
* test/CodeGen/X86: Add explicit -mtriple=(i686|x86_64)-linux for Win32 host.NAKAMURA Takumi2010-09-033-5/+5
| | | | llvm-svn: 112947
* Fix cmake build without native target selected.Oscar Fuentes2010-09-031-3/+3
| | | | | | | | | | | | | | | The cmake (+ MSVC) build is broken if you don't select your native target. e.g. 'cmake -D LLVM_TARGETS_TO_BUILD="MyNonNativeTarget" .' This is because cmake currently sets the LLVM_NATIVE_* definitions regardless of whether the native target is selected (causing build errors). Patch by Mike Gist! llvm-svn: 112946
* AVX doesn't support mm operations neither its instrinsics.Bruno Cardoso Lopes2010-09-032-56/+32
| | | | | | | The AVX versions of PALIGN and PABS* should only exist for 128-bit. Remove the unnecessary stuff. llvm-svn: 112944
* Use punpckh and unpckh family of nodes instead of using unpckh mask pattern ↵Bruno Cardoso Lopes2010-09-031-3/+23
| | | | | | fragment llvm-svn: 112942
* Replace NEON vabdl, vaba, and vabal intrinsics with combinations of theBob Wilson2010-09-038-153/+289
| | | | | | | | vabd intrinsic and add and/or zext operations. In the case of vaba, this also avoids the need for a DAG combine pattern to combine vabd with add. Update tests. Auto-upgrade the old intrinsics. llvm-svn: 112941
* Fix commentBruno Cardoso Lopes2010-09-031-3/+3
| | | | llvm-svn: 112938
* - Use specific nodes to match unpckl masks.Bruno Cardoso Lopes2010-09-032-16/+133
| | | | | | | | | - Teach getShuffleScalarElt how to handle more target specific nodes, so the DAGCombine can make use of it. - Add another hack to avoid the node update problem during legalization. More description on the comments llvm-svn: 112934
* Stop emitting predicate functions. They are no longer used.Jakob Stoklund Olesen2010-09-032-50/+0
| | | | llvm-svn: 112924
* Simple branch instruction support.Eric Christopher2010-09-031-0/+23
| | | | llvm-svn: 112923
* Don't call Predicate_* from X86 target.Jakob Stoklund Olesen2010-09-033-16/+21
| | | | llvm-svn: 112921
* Remove Predicate_* calls from MBlaze and XCoreJakob Stoklund Olesen2010-09-033-18/+17
| | | | llvm-svn: 112920
* Remove Predicate_* calls from MipsJakob Stoklund Olesen2010-09-031-2/+3
| | | | llvm-svn: 112919
* Add basic support for materializing constants (including fp) andEric Christopher2010-09-021-3/+40
| | | | | | stores. llvm-svn: 112912
* update one more testChris Lattner2010-09-021-2/+2
| | | | llvm-svn: 112910
* this is a release note worthy change.Chris Lattner2010-09-021-0/+2
| | | | llvm-svn: 112907
* add a new "llvm-dis -show-annotations" option, which causes it to printChris Lattner2010-09-022-1/+51
| | | | | | #uses comments, with a testcase. llvm-svn: 112906
* lets get crazy and name the header file the exact class name,Chris Lattner2010-09-023-5/+5
| | | | | | not a scrunched version of it. llvm-svn: 112904
OpenPOWER on IntegriCloud