Manuel Klimek
09f4d148b8
Deleting the json-bench-test until I understand why it is flaky.
...
llvm-svn: 146821
2011-12-17 06:29:32 +00:00
Manuel Klimek
2f7cf4e64b
Adds a JSON parser and a benchmark (json-bench) to catch performance regressions.
...
llvm-svn: 146735
2011-12-16 13:09:10 +00:00
Eli Friedman
09abc453ac
Fix test.
...
llvm-svn: 146642
2011-12-15 04:52:47 +00:00
Eli Friedman
f6ae3a7caf
Make constant folding for GEPs a bit more aggressive.
...
llvm-svn: 146639
2011-12-15 04:33:48 +00:00
Chris Lattner
9d1e8420ff
Upgrade syntax of tests using volatile instructions to use 'load volatile' instead of 'volatile load', which is archaic.
...
llvm-svn: 145171
2011-11-27 06:54:59 +00:00
Bill Wendling
e540c593ec
Update to new EH scheme.
...
llvm-svn: 138906
2011-08-31 21:44:24 +00:00
Chris Lattner
a106725fc5
Land the long talked about "type system rewrite" patch. This
...
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.
llvm-svn: 134829
2011-07-09 17:41:24 +00:00
Galina Kistanova
9df62fe3e4
Move platform-dependent test to appropriate directory.
...
llvm-svn: 131302
2011-05-13 19:45:05 +00:00
Stuart Hastings
1d08224543
Move this test to CodeGen/Thumb. rdar://problem/9416774
...
llvm-svn: 131196
2011-05-11 19:41:28 +00:00
Stuart Hastings
50900ef566
Reduced test case. rdar://problem/9416774
...
llvm-svn: 131191
2011-05-11 17:29:25 +00:00
Stuart Hastings
eebfe36090
And lo, I was given a testcase for 131152. rdar://problem/9416774
...
llvm-svn: 131184
2011-05-11 16:00:21 +00:00
NAKAMURA Takumi
f260cf36f0
test/Other/close-stderr.ll: Require the feature 'shell'. It is not executable on Win32 but it is executable on MSYS-bash.
...
llvm-svn: 121105
2010-12-07 02:43:58 +00:00
Dan Gohman
6aff5b94ff
Make BasicAliasAnalysis a normal AliasAnalysis implementation which
...
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.
llvm-svn: 116720
2010-10-18 18:04:47 +00:00
Devang Patel
35201e0fd6
Remove LoopIndexSplit pass. It is neither maintained nor used by anyone.
...
llvm-svn: 116004
2010-10-07 23:29:37 +00:00
Bob Wilson
0fdee121f7
Fix llvm-extract so that it changes the linkage of all GlobalValues to
...
"external" even when doing lazy bitcode loading. This was broken because
a function that is not materialized fails the !isDeclaration() test.
llvm-svn: 114666
2010-09-23 17:25:06 +00:00
Dan Gohman
007957687e
Fix llvm-extract -delete's lazy loading to materialize the functions that
...
will not be deleted, rather than the ones that will.
llvm-svn: 114614
2010-09-23 00:33:13 +00:00
Jakob Stoklund Olesen
79f7387096
XFAIL test under valgrind. It is not really our problem if sh is leaking.
...
llvm-svn: 113550
2010-09-09 22:02:13 +00:00
Chris Lattner
ecf276b787
remove unions from LLVM IR. They are severely buggy and not
...
being actively maintained, improved, or extended.
llvm-svn: 112356
2010-08-28 04:09:24 +00:00
Chandler Carruth
49b7cdd14c
Try to escape the '$'s in these so they reach the underlying 'sh' invocation.
...
I have no idea how lit did the right thing here, but other test runners don't.
llvm-svn: 111805
2010-08-23 08:54:19 +00:00
Dan Gohman
7bfc030c1e
Add a testcase to verify that commands don't crash when they hit
...
errors on stderr.
llvm-svn: 111440
2010-08-18 22:35:56 +00:00
Dan Gohman
8ed4d1646e
Revert r111058, the lint check for indirectbr successors that aren't
...
address-taken. This can occur normally, if the code which took the
address got DCEd.
llvm-svn: 111121
2010-08-16 14:39:19 +00:00
Dan Gohman
422c164d8d
Add a lint check for an indirectbr destination which has not
...
had its address taken.
llvm-svn: 111058
2010-08-13 23:56:28 +00:00
Dan Gohman
abb2503036
Add a lint check for indirectbr with no successors.
...
llvm-svn: 110074
2010-08-02 23:06:43 +00:00
Benjamin Kramer
23151050ce
Remove XFAIL, test doesn't leak anymore.
...
llvm-svn: 109801
2010-07-29 20:36:36 +00:00
Dan Gohman
0af129aa1b
Add a lint check for mismatched return types, inspired by PR6944.
...
llvm-svn: 108162
2010-07-12 18:02:04 +00:00
Dan Gohman
6c3d683d19
Don't write a file named "&1".
...
llvm-svn: 106269
2010-06-18 01:49:17 +00:00
Dan Gohman
fe69bf7b4c
Add lint checks for function attributes.
...
llvm-svn: 105009
2010-05-28 21:43:57 +00:00
Dan Gohman
a20b0d02e6
Fix lint's memcpy and memmove checks, and its basic block traversal.
...
llvm-svn: 104970
2010-05-28 17:44:00 +00:00
Dan Gohman
9a50a9215c
Detect self-referential values.
...
llvm-svn: 104957
2010-05-28 16:45:33 +00:00
Dan Gohman
0108e13d6c
Remove this va_arg test, which is no longer applicable.
...
llvm-svn: 104956
2010-05-28 16:44:04 +00:00
Dan Gohman
8570c1a249
Eli pointed out that va_arg instruction result values don't
...
reference the stack.
llvm-svn: 104951
2010-05-28 16:34:49 +00:00
Dan Gohman
7981165281
Teach lint how to look through simple store+load pairs and other
...
effective no-op constructs, to make it more effective on
unoptimized IR.
llvm-svn: 104950
2010-05-28 16:21:24 +00:00
Dan Gohman
a6c568fa77
Add a lint check for returning the address of stack memory.
...
llvm-svn: 104936
2010-05-28 04:33:42 +00:00
Gabor Greif
2bb2087a69
rename test to represent meaningful date
...
llvm-svn: 104831
2010-05-27 09:32:38 +00:00
Dan Gohman
2c70e05105
Reinstate checking of stackrestore, with checking for both Read
...
and Write, and add a comment explaining this.
llvm-svn: 104756
2010-05-26 22:21:25 +00:00
Dan Gohman
6b78ee79c1
Implement checking of the tail keyword.
...
llvm-svn: 104744
2010-05-26 21:46:36 +00:00
Daniel Dunbar
3c261b3ff8
XFAIL the test I added with vg_leak, apparently it is the first and only llc
...
-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.
llvm-svn: 103769
2010-05-14 07:47:51 +00:00
Daniel Dunbar
26fa01eb86
Inline Asm: Ensure buffer is newline terminated to match how the text is printed.
...
- This is a hack, but I can't decide the best place to handle this. Chris?
llvm-svn: 103765
2010-05-14 04:31:50 +00:00
Chris Lattner
a0f98775e9
this really is needed. :(
...
llvm-svn: 103434
2010-05-10 21:23:48 +00:00
Chris Lattner
bf56c070f3
just remove this, it isn't needed.
...
llvm-svn: 103432
2010-05-10 21:01:47 +00:00
Chris Lattner
b3d401532c
fix a pretty obvious typo. We test things before committing them, right?
...
llvm-svn: 103427
2010-05-10 20:51:06 +00:00
David Greene
dec8f8b802
Fix PR6875:
...
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.
llvm-svn: 103425
2010-05-10 20:24:27 +00:00
Dan Gohman
6944fae2f6
Add lint checks for invalid uses of memory.
...
llvm-svn: 102733
2010-04-30 19:05:00 +00:00
Dan Gohman
b07151b5dd
Add several more lint checks.
...
llvm-svn: 100841
2010-04-09 01:39:53 +00:00
Dan Gohman
eeb89ac6d3
Add a few more lint checks.
...
llvm-svn: 100825
2010-04-08 23:05:57 +00:00
Dan Gohman
6ad805d335
Add a -lint pass which checks for common sources of undefined or likely
...
unintended behavior.
llvm-svn: 100798
2010-04-08 18:47:09 +00:00
Dan Gohman
d9d4889ccc
Constant-fold GEP-of-GEP into a single GEP.
...
llvm-svn: 98178
2010-03-10 19:31:51 +00:00
Dan Gohman
7fa1298057
Fix whitespace.
...
llvm-svn: 98173
2010-03-10 19:00:54 +00:00
Chris Lattner
04209058b9
stop using anders-aa
...
llvm-svn: 97492
2010-03-01 20:24:50 +00:00
Dan Gohman
a15e497d94
Teach the constant folder about union types.
...
llvm-svn: 97142
2010-02-25 16:45:19 +00:00