aboutsummaryrefslogtreecommitdiffstats
path: root/test/Other
Commit message (Collapse)AuthorAgeFilesLines
* Update to new EH scheme.Bill Wendling2011-08-311-1/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@138906 91177308-0d34-0410-b5e6-96231b3b80d8
* Land the long talked about "type system rewrite" patch. ThisChris Lattner2011-07-091-46/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | patch brings numerous advantages to LLVM. One way to look at it is through diffstat: 109 files changed, 3005 insertions(+), 5906 deletions(-) Removing almost 3K lines of code is a good thing. Other advantages include: 1. Value::getType() is a simple load that can be CSE'd, not a mutating union-find operation. 2. Types a uniqued and never move once created, defining away PATypeHolder. 3. Structs can be "named" now, and their name is part of the identity that uniques them. This means that the compiler doesn't merge them structurally which makes the IR much less confusing. 4. Now that there is no way to get a cycle in a type graph without a named struct type, "upreferences" go away. 5. Type refinement is completely gone, which should make LTO much MUCH faster in some common cases with C++ code. 6. Types are now generally immutable, so we can use "Type *" instead "const Type *" everywhere. Downsides of this patch are that it removes some functions from the C API, so people using those will have to upgrade to (not yet added) new API. "LLVM 3.0" is the right time to do this. There are still some cleanups pending after this, this patch is large enough as-is. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@134829 91177308-0d34-0410-b5e6-96231b3b80d8
* Move platform-dependent test to appropriate directory.Galina Kistanova2011-05-132-0/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131302 91177308-0d34-0410-b5e6-96231b3b80d8
* Move this test to CodeGen/Thumb. rdar://problem/9416774Stuart Hastings2011-05-111-60/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131196 91177308-0d34-0410-b5e6-96231b3b80d8
* Reduced test case. rdar://problem/9416774Stuart Hastings2011-05-111-36/+36
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131191 91177308-0d34-0410-b5e6-96231b3b80d8
* And lo, I was given a testcase for 131152. rdar://problem/9416774Stuart Hastings2011-05-111-0/+60
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@131184 91177308-0d34-0410-b5e6-96231b3b80d8
* test/Other/close-stderr.ll: Require the feature 'shell'. It is not ↵NAKAMURA Takumi2010-12-071-0/+1
| | | | | | executable on Win32 but it is executable on MSYS-bash. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@121105 91177308-0d34-0410-b5e6-96231b3b80d8
* Make BasicAliasAnalysis a normal AliasAnalysis implementation whichDan Gohman2010-10-181-1/+1
| | | | | | | | | | | | | does normal initialization and normal chaining. Change the default AliasAnalysis implementation to NoAlias. Update StandardCompileOpts.h and friends to explicitly request BasicAliasAnalysis. Update tests to explicitly request -basicaa. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116720 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove LoopIndexSplit pass. It is neither maintained nor used by anyone.Devang Patel2010-10-071-5/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@116004 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix llvm-extract so that it changes the linkage of all GlobalValues toBob Wilson2010-09-231-1/+6
| | | | | | | | "external" even when doing lazy bitcode loading. This was broken because a function that is not materialized fails the !isDeclaration() test. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114666 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix llvm-extract -delete's lazy loading to materialize the functions thatDan Gohman2010-09-231-0/+22
| | | | | | | will not be deleted, rather than the ones that will. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@114614 91177308-0d34-0410-b5e6-96231b3b80d8
* XFAIL test under valgrind. It is not really our problem if sh is leaking.Jakob Stoklund Olesen2010-09-091-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113550 91177308-0d34-0410-b5e6-96231b3b80d8
* remove unions from LLVM IR. They are severely buggy and notChris Lattner2010-08-281-42/+0
| | | | | | | being actively maintained, improved, or extended. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@112356 91177308-0d34-0410-b5e6-96231b3b80d8
* Try to escape the '$'s in these so they reach the underlying 'sh' invocation.Chandler Carruth2010-08-231-2/+2
| | | | | | | I have no idea how lit did the right thing here, but other test runners don't. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111805 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a testcase to verify that commands don't crash when they hitDan Gohman2010-08-181-0/+9
| | | | | | | errors on stderr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111440 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert r111058, the lint check for indirectbr successors that aren'tDan Gohman2010-08-161-1/+0
| | | | | | | | address-taken. This can occur normally, if the code which took the address got DCEd. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111121 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a lint check for an indirectbr destination which has notDan Gohman2010-08-131-0/+1
| | | | | | | had its address taken. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111058 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a lint check for indirectbr with no successors.Dan Gohman2010-08-021-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@110074 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove XFAIL, test doesn't leak anymore.Benjamin Kramer2010-07-291-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@109801 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a lint check for mismatched return types, inspired by PR6944.Dan Gohman2010-07-121-0/+9
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108162 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't write a file named "&1".Dan Gohman2010-06-181-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@106269 91177308-0d34-0410-b5e6-96231b3b80d8
* Add lint checks for function attributes.Dan Gohman2010-05-281-0/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@105009 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix lint's memcpy and memmove checks, and its basic block traversal.Dan Gohman2010-05-281-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104970 91177308-0d34-0410-b5e6-96231b3b80d8
* Detect self-referential values.Dan Gohman2010-05-281-0/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104957 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove this va_arg test, which is no longer applicable.Dan Gohman2010-05-281-3/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104956 91177308-0d34-0410-b5e6-96231b3b80d8
* Eli pointed out that va_arg instruction result values don'tDan Gohman2010-05-281-4/+4
| | | | | | | reference the stack. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104951 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach lint how to look through simple store+load pairs and otherDan Gohman2010-05-281-0/+21
| | | | | | | | effective no-op constructs, to make it more effective on unoptimized IR. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104950 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a lint check for returning the address of stack memory.Dan Gohman2010-05-281-0/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104936 91177308-0d34-0410-b5e6-96231b3b80d8
* rename test to represent meaningful dateGabor Greif2010-05-271-0/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104831 91177308-0d34-0410-b5e6-96231b3b80d8
* Reinstate checking of stackrestore, with checking for both ReadDan Gohman2010-05-261-0/+3
| | | | | | | and Write, and add a comment explaining this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104756 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement checking of the tail keyword.Dan Gohman2010-05-261-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@104744 91177308-0d34-0410-b5e6-96231b3b80d8
* XFAIL the test I added with vg_leak, apparently it is the first and only llcDaniel Dunbar2010-05-141-0/+1
| | | | | | | -filetype=obj test, and -filetype=obj leaks a few objects. Added a FIXME, we need to sort out the ownership model for the various MC objects. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103769 91177308-0d34-0410-b5e6-96231b3b80d8
* Inline Asm: Ensure buffer is newline terminated to match how the text is ↵Daniel Dunbar2010-05-141-0/+6
| | | | | | | | printed. - This is a hack, but I can't decide the best place to handle this. Chris? git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103765 91177308-0d34-0410-b5e6-96231b3b80d8
* this really is needed. :(Chris Lattner2010-05-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103434 91177308-0d34-0410-b5e6-96231b3b80d8
* just remove this, it isn't needed.Chris Lattner2010-05-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103432 91177308-0d34-0410-b5e6-96231b3b80d8
* fix a pretty obvious typo. We test things before committing them, right?Chris Lattner2010-05-101-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103427 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR6875:David Greene2010-05-101-0/+6
| | | | | | | | | | | | | | | | This includes a patch by Roman Divacky to fix the initial crash. Move the actual addition of passes from *PassManager::add to *PassManager::addImpl. That way, when adding printer passes we won't recurse infinitely. Finally, check to make sure that we are actually adding a FunctionPass to a FunctionPassManager before doing a print before or after it. Immutable passes are strange in this way because they aren't FunctionPasses yet they can be and are added to the FunctionPassManager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@103425 91177308-0d34-0410-b5e6-96231b3b80d8
* Add lint checks for invalid uses of memory.Dan Gohman2010-04-301-0/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@102733 91177308-0d34-0410-b5e6-96231b3b80d8
* Add several more lint checks.Dan Gohman2010-04-091-0/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100841 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a few more lint checks.Dan Gohman2010-04-081-0/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100825 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a -lint pass which checks for common sources of undefined or likelyDan Gohman2010-04-081-0/+31
| | | | | | | unintended behavior. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@100798 91177308-0d34-0410-b5e6-96231b3b80d8
* Constant-fold GEP-of-GEP into a single GEP.Dan Gohman2010-03-101-0/+31
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98178 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix whitespace.Dan Gohman2010-03-101-6/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@98173 91177308-0d34-0410-b5e6-96231b3b80d8
* stop using anders-aaChris Lattner2010-03-011-58/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97492 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach the constant folder about union types.Dan Gohman2010-02-251-6/+48
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@97142 91177308-0d34-0410-b5e6-96231b3b80d8
* Canonicalize sizeof and alignof on pointer types to a canonicalDan Gohman2010-02-101-7/+51
| | | | | | | pointer type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95769 91177308-0d34-0410-b5e6-96231b3b80d8
* Factor out alignof expression folding into a separate function andDan Gohman2010-02-021-0/+21
| | | | | | | generalize it to handle more cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95045 91177308-0d34-0410-b5e6-96231b3b80d8
* Generalize target-independent folding rules for sizeof to handle moreDan Gohman2010-02-011-35/+314
| | | | | | | | | | | | | | | | | | | | cases, and implement target-independent folding rules for alignof and offsetof. Also, reassociate reassociative operators when it leads to more folding. Generalize ScalarEvolution's isOffsetOf to recognize offsetof on arrays. Rename getAllocSizeExpr to getSizeOfExpr, and getFieldOffsetExpr to getOffsetOfExpr, for consistency with analagous ConstantExpr routines. Make the target-dependent folder promote GEP array indices to pointer-sized integers, to make implicit casting explicit and exposed to subsequent folding. And add a bunch of testcases for this new functionality, and a bunch of related existing functionality. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94987 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove the folding ruleDan Gohman2010-01-281-0/+84
| | | | | | | | | | | | | | | | | | getelementptr (i8* inttoptr (i64 1 to i8*), i32 -1) to inttoptr (i64 0 to i8*) from the VMCore constant folder. It didn't handle sign-extension properly in the case where the source integer is smaller than a pointer size. And, it relied on an assumption about sizeof(i8). The Analysis constant folder still folds these kinds of things; it has access to TargetData, so it can do them right. Add a testcase which tests that the VMCore constant folder doesn't miscompile this, and that the Analysis folder does fold it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94750 91177308-0d34-0410-b5e6-96231b3b80d8
* -disable-output is no longer needed with -analyze.Dan Gohman2010-01-262-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@94574 91177308-0d34-0410-b5e6-96231b3b80d8