Commit Graph

272 Commits

Author SHA1 Message Date
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
Eric Christopher
10e7d517e2 Fix this test to actually check something and be able to be compiled.
llvm-svn: 133952
2011-06-27 22:30:14 +00:00
Chris Lattner
04676ebdd4 remove an unreduced testcase.
llvm-svn: 133356
2011-06-18 19:12:59 +00:00
Galina Kistanova
21af52bc9e Reverted r132785. It seems this test needs more research.
llvm-svn: 132836
2011-06-10 05:35:25 +00:00
Galina Kistanova
16bd9972fb Changed condition.
llvm-svn: 132834
2011-06-10 03:57:02 +00:00
Galina Kistanova
6f214c237a Added dg.exp to run FrontendC ARM-dependent tests; updated inline-asm-multichar.c test per this change.
llvm-svn: 132785
2011-06-09 17:18:37 +00:00
Eric Christopher
dc8fe755e3 Create a new ARM directory for FrontendC tests and use it.
llvm-svn: 132734
2011-06-07 22:20:13 +00:00
Eric Christopher
64638793be Testcase for llvm-gcc commit r132591.
Part of rdar://9037836 and rdar://9119939

llvm-svn: 132592
2011-06-03 20:56:31 +00:00
Bill Wendling
6020896a6e This should have been a C++ testcase.
llvm-svn: 132504
2011-06-02 22:26:15 +00:00
Bill Wendling
854ec415ea Testcase for r132493.
llvm-svn: 132495
2011-06-02 22:12:42 +00:00
Bill Wendling
8988d1f21f Update for r132493 change.
llvm-svn: 132494
2011-06-02 22:11:49 +00:00
Eric Christopher
d0a9787775 Add a testcase, enabled only on arm, for llvm-gcc r132366.
llvm-svn: 132409
2011-06-01 18:23:56 +00:00
Rafael Espindola
b098ac2b95 Pass -disable-cfi to llc.
llvm-svn: 130999
2011-05-06 18:01:58 +00:00
Rafael Espindola
2534f45206 Pass -disable-cfi.
llvm-svn: 130995
2011-05-06 17:44:58 +00:00
Jakob Stoklund Olesen
4661916c8f Fix test to be less sensitive to coalescing.
This should unbreak llvm-gcc-i386-linux-selfhost.

llvm-svn: 130927
2011-05-05 16:48:00 +00:00
Rafael Espindola
29ae8615a2 Pass -disable-cfi to llc.
llvm-svn: 130713
2011-05-02 19:51:34 +00:00
Chris Lattner
0304b82f80 Fix a ton of comment typos found by codespell. Patch by
Luis Felipe Strano Moraes!

llvm-svn: 129558
2011-04-15 05:18:47 +00:00
Daniel Dunbar
6f91b732fb tests: Remove a FrontendC test which is no longer valid.
llvm-svn: 129519
2011-04-14 15:21:16 +00:00
Bill Wendling
7089d4d507 Testcase for r128619 (PR9571).
llvm-svn: 128620
2011-03-31 08:13:57 +00:00
Eric Christopher
d0fd06aeda Testcase for llvm-gcc commit r128230.
llvm-svn: 128242
2011-03-24 21:59:03 +00:00
Devang Patel
c323201836 Remove the test.
llvm-svn: 128119
2011-03-22 23:07:03 +00:00
Devang Patel
bc3c5c15ef Try to appease buildbot gods.
llvm-svn: 128112
2011-03-22 22:13:17 +00:00
Devang Patel
595c1b34f8 Try again to make this test darwin only.
llvm-svn: 128036
2011-03-21 23:11:08 +00:00
Devang Patel
bf35de8849 Force x86_64.
llvm-svn: 128027
2011-03-21 21:37:52 +00:00
Devang Patel
4a5e013ca8 Enable this test only for Darwin.
llvm-svn: 128017
2011-03-21 20:32:56 +00:00
Daniel Dunbar
4b49a1e2c3 Disable test in a way that keeps lit happy.
llvm-svn: 127962
2011-03-20 00:04:51 +00:00
Stuart Hastings
9de21c7b15 Disable test to unbreak Linux. Radar 9156771.
llvm-svn: 127945
2011-03-19 03:56:38 +00:00
Devang Patel
56995da051 Test case for r127940.
llvm-svn: 127941
2011-03-19 01:40:43 +00:00
Stuart Hastings
6147bc81c3 Add a RUN line to the test case to make it functional. <rdar://problem/9055247>
llvm-svn: 127312
2011-03-09 04:02:40 +00:00
Stuart Hastings
59f1daeb32 Test cases for r127309. <rdar://problem/9055247>
llvm-svn: 127310
2011-03-09 03:59:52 +00:00
Bill Wendling
bb2661c5cc Build bots hate me.
llvm-svn: 127307
2011-03-09 01:37:39 +00:00
Stuart Hastings
5687e4d065 Reverting testcase at 4126896; r126672 broke something else. <rdar://problem/9055247>
llvm-svn: 127278
2011-03-08 21:54:17 +00:00
Bill Wendling
72b82228cd Once again try to appease the buildbot gods.
llvm-svn: 127272
2011-03-08 21:36:29 +00:00
Bill Wendling
75b38b9d40 Try to fix the compilation error due to type incombatibility.
llvm-svn: 127265
2011-03-08 19:39:35 +00:00
Bill Wendling
758fb90678 Testcase for r127187.
llvm-svn: 127236
2011-03-08 10:27:58 +00:00
Stuart Hastings
9a27ba5aaa Test case for r126672. Radar 9055247.
llvm-svn: 126896
2011-03-02 23:24:44 +00:00
Stuart Hastings
736a9b66c2 Test case for r126127. Radar 9012638.
llvm-svn: 126131
2011-02-21 18:08:40 +00:00
Rafael Espindola
70a277119f Update llvm-gcc's tests.
llvm-svn: 123447
2011-01-14 17:01:20 +00:00
Stuart Hastings
55928bc576 Test case for r120740. Radar 8712503.
llvm-svn: 120741
2010-12-02 21:25:55 +00:00
Duncan Sands
020f241883 Remove explicit uses of -emit-llvm, the test infrastructure adds it
automatically.  Use -S with llvm-gcc rather than -c, so tests can
work when llvm-gcc is really dragonegg (which can output IR with -S
but not -c).

llvm-svn: 120158
2010-11-25 21:24:35 +00:00
Dale Johannesen
0cd940f72b Test for llvm-gcc patch 119392.
llvm-svn: 119393
2010-11-16 21:57:15 +00:00
Dale Johannesen
d48eca9b43 Testcase for llvm-gcc 118368. 8629268.
llvm-svn: 118369
2010-11-07 04:58:48 +00:00
Duncan Sands
4a66e8e24d Get rid of the last use of -m64 in FrontendC. This solution
of checking for either 4 or 8 is not very satisfactory, but
it would catch the original problem (an alignment of 1).

llvm-svn: 113485
2010-09-09 12:57:29 +00:00
Duncan Sands
3030644248 Another test that uses -m64. Here too it looks like it can be
removed.  Not that the XTARGET wasn't doing anything since it
does nothing without an accompanying XFAIL.

llvm-svn: 113484
2010-09-09 12:48:04 +00:00
Duncan Sands
e89d619d23 On i386, llvm-gcc cannot be assumed to support -m64. Since these
tests pass here (i686-linux and x86-64-linux) without -m64, simply
remove the -m64.

llvm-svn: 113483
2010-09-09 12:43:44 +00:00
Stuart Hastings
92dd0fd9ba Typo. Thanks to BillW for pointing it out!
llvm-svn: 113281
2010-09-07 20:39:07 +00:00
Stuart Hastings
f0d248515f Test case for r113248. Raar 8361341.
llvm-svn: 113249
2010-09-07 18:43:57 +00:00
Chris Lattner
4062754b22 update one more test
llvm-svn: 112910
2010-09-02 23:32:55 +00:00
Dale Johannesen
8ac2805d6f Apparently only Darwin passes long double misaligned. Compensate.
llvm-svn: 112748
2010-09-01 21:57:20 +00:00
Dale Johannesen
43b0adff96 Attempt to fix buildbot.
llvm-svn: 112697
2010-09-01 05:19:06 +00:00