Chris Lattner
7f4cfda3ba
Minor cleanups
...
llvm-svn: 8843
2003-10-03 18:57:54 +00:00
Chris Lattner
0f21ab75fa
This checkin basically amounts to a complete rewrite of the type-resolution
...
machinery. This dramatically simplifies how things works, removes irritating
little corner cases, and overall improves speed and reliability.
Highlights of this change are:
1. The exponential algorithm built into the code is now gone. For example
the time to disassemble one bytecode file from the mesa benchmark went
from taking 12.5s to taking 0.16s.
2. The linker bugs should be dramatically reduced. The one remaining bug
has to do with constant handling, which I actually introduced in
"union-find" checkins.
3. The code is much easier to follow, as a result of fewer special cases.
It's probably also smaller. yaay.
llvm-svn: 8842
2003-10-03 18:46:24 +00:00
John Criswell
ad7fd5f122
Changed all of these tests to be TestRunner tests (or, at least they can be
...
TestRunner tests).
This makes creating the new test database class easier to implement.
llvm-svn: 8841
2003-10-03 18:42:25 +00:00
Chris Lattner
29dc65a324
These methods are dead, remove them. Because the bodies will soon be
...
ressurected, just ifdef them out for now.
llvm-svn: 8840
2003-10-03 18:39:57 +00:00
Chris Lattner
20ae1895c1
These methods are dead, remove them
...
llvm-svn: 8839
2003-10-03 18:39:40 +00:00
John Criswell
3b092bc46e
Renamed these tests so that they don't contain extra periods.
...
This interferes with QMTest and the new test database.
llvm-svn: 8838
2003-10-03 18:24:47 +00:00
John Criswell
1ce56bd700
Added links to the C and C++ frontends.
...
llvm-svn: 8836
2003-10-03 13:48:27 +00:00
John Criswell
fadf125179
Adding basic documentation for the LLVM C and C++ frontends.
...
llvm-svn: 8835
2003-10-03 13:45:55 +00:00
Chris Lattner
a72b78967f
Dramatically simplify DerivedType::refineAbstractTypeToInternal
...
This makes use of the new PATypeHolder's to keep types from being deleted
prematurely, instead of the wierd "self reference" garbage. This is easier
to understand and more efficient as well.
llvm-svn: 8834
2003-10-03 04:48:21 +00:00
Chris Lattner
016418b8c2
Make the PATypeHolder use a simple union-find implementation to handle
...
merging of types. This makes it MUCH more efficient than before, also
making things simpler.
llvm-svn: 8833
2003-10-02 23:35:57 +00:00
Chris Lattner
c7caffab32
There is no need for BytecodeParser to be an AbstractTypeUser. Instead, it
...
can just use PATypeHolders
llvm-svn: 8832
2003-10-02 20:26:18 +00:00
Chris Lattner
22e4ca8863
There is no reason for Value to be an AbstractTypeUser. This just makes things
...
significantly more complete. Instead, just make DerivedType's AbstractTypeUser's,
and make Value contain a PATypeHolder.
llvm-svn: 8828
2003-10-02 19:44:40 +00:00
Chris Lattner
2a2923a709
There is no reason for Value to be an AbstractTypeUser. This just makes things
...
significantly more complete. Instead, just make DerivedType's AbstractTypeUser's,
and make Value contain a PATypeHolder. This will also be more efficient in the
future.
llvm-svn: 8827
2003-10-02 19:44:23 +00:00
Chris Lattner
fe40802ca0
There is no reason for the PATypeHolder class to derive from the
...
PATypeHandle class
llvm-svn: 8825
2003-10-02 19:08:18 +00:00
John Criswell
50e150757f
Removed the check for purify as we don't support its use at present.
...
llvm-svn: 8824
2003-10-02 19:02:30 +00:00
John Criswell
4ffb844309
Fixed the conditional targets for postscript files and tags.
...
llvm-svn: 8823
2003-10-02 19:02:02 +00:00
Chris Lattner
5c02edbf5c
The objects mapped are really PATypeHolders, not PATypeHandles
...
llvm-svn: 8822
2003-10-02 19:00:34 +00:00
Chris Lattner
11f9b9c49d
Remove obsolete tests which:
...
A. do not just test LLC, or even the sparc backend
B. are cut down versions of tests that exist in other places
llvm-svn: 8821
2003-10-02 18:48:35 +00:00
Chris Lattner
f2397429f0
Checkin new file, reduced by Brian
...
llvm-svn: 8820
2003-10-02 18:26:11 +00:00
Alkis Evlogimenos
5facafaabe
Moved enum and command-line option in separate file. Also added function that returns the user selected register allocator to the caller.
...
llvm-svn: 8819
2003-10-02 16:57:49 +00:00
Chris Lattner
6249576300
Add ideas and small revisions from Vikram
...
llvm-svn: 8818
2003-10-02 16:38:05 +00:00
Chris Lattner
b9cde76e60
Implement InstCombine/add.ll:test17 & 18
...
llvm-svn: 8817
2003-10-02 15:11:26 +00:00
Chris Lattner
d15f273512
Add new testcases
...
llvm-svn: 8816
2003-10-02 15:11:09 +00:00
Alkis Evlogimenos
8207a2c079
Change llc command line for register allocators
...
llvm-svn: 8815
2003-10-02 06:13:19 +00:00
Chris Lattner
a9b4c39dd2
fix spleling
...
llvm-svn: 8814
2003-10-02 05:09:46 +00:00
Chris Lattner
178f3db098
add note about .a files
...
llvm-svn: 8813
2003-10-02 05:07:23 +00:00
Chris Lattner
3d48250587
Initial checkin of the LLVM 1.0 release notes
...
llvm-svn: 8812
2003-10-02 04:57:28 +00:00
Alkis Evlogimenos
6e739d0a3c
Use std::string::size_type for for ColonPos to stop gcc from giving a warning
...
llvm-svn: 8811
2003-10-01 22:49:22 +00:00
Chris Lattner
34e1acb5dc
Remove obsolete scoped pred and succ iterator typedefs
...
llvm-svn: 8810
2003-10-01 22:28:39 +00:00
Chris Lattner
607ceecdf4
Use graph traits to perform generic interval construction
...
llvm-svn: 8809
2003-10-01 22:28:00 +00:00
Chris Lattner
fe0a286d6e
Add graph traits specializations for intervals
...
llvm-svn: 8808
2003-10-01 22:27:36 +00:00
Chris Lattner
df089a1b77
Amazingly enough, we actually do some stuff around here. Now if we could
...
just remember to update the open projects list... :)
llvm-svn: 8807
2003-10-01 21:49:55 +00:00
Chris Lattner
909a1abade
Make sure to include the "support" directory
...
llvm-svn: 8806
2003-10-01 21:12:46 +00:00
Alkis Evlogimenos
3dfcbf1317
Revert previous change. For some reason this went into the main branch
...
llvm-svn: 8805
2003-10-01 19:40:13 +00:00
Alkis Evlogimenos
568e4386e8
Added command line option for linear scan allocator
...
llvm-svn: 8804
2003-10-01 19:38:10 +00:00
Misha Brukman
cda2885499
The comment seems irrelevant as the pass has become a BasicBlock pass.
...
llvm-svn: 8803
2003-10-01 05:24:50 +00:00
John Criswell
ee3632270e
Corrected usage synopsis.
...
Added information regarding additional LLVM passes used, input defaults, and
output defaults.
llvm-svn: 8802
2003-09-30 22:55:44 +00:00
Chris Lattner
1440902484
Make sure to get the definition of getRegisterAllocator
...
llvm-svn: 8801
2003-09-30 22:24:00 +00:00
Chris Lattner
9c6244dc6c
New testcase that was not correctly handled
...
llvm-svn: 8800
2003-09-30 21:46:23 +00:00
Chris Lattner
56332992c7
This bug is not fixed, but will be in the future eventually
...
llvm-svn: 8799
2003-09-30 21:31:25 +00:00
Chris Lattner
1656d32e3d
new testcase
...
llvm-svn: 8798
2003-09-30 21:29:27 +00:00
Chris Lattner
ddcb81be52
Forward declare a class
...
llvm-svn: 8797
2003-09-30 20:15:40 +00:00
Chris Lattner
60d6e623ee
This got merged into Passes.h
...
llvm-svn: 8796
2003-09-30 20:15:32 +00:00
Chris Lattner
8b583a229d
RegisterAllocation.h is going away
...
llvm-svn: 8795
2003-09-30 20:15:04 +00:00
Chris Lattner
dcb2a25d74
Include the sparc register in this file
...
llvm-svn: 8794
2003-09-30 20:14:43 +00:00
Chris Lattner
1f8d21e233
include passes.h which defines the interface this file exposes
...
llvm-svn: 8793
2003-09-30 20:13:59 +00:00
John Criswell
5bbd65ccc6
Changed TestRunner test class so that it replaces %llvmgcc and %llvmgxx
...
instead of %gcc and %gxx.
llvm-svn: 8792
2003-09-30 19:56:36 +00:00
John Criswell
48a334a76e
Removed Makefile for CompileFail tests. They are now run by QMTest and are
...
located under llvm/test/Regression/C++Frontend.
llvm-svn: 8791
2003-09-30 19:41:15 +00:00
John Criswell
5c3a3d39e9
Adjusted for the new TestRunner test class. This replaces %gcc and %g++ with
...
the names of the LLVM C and C++ frontends, respectively.
llvm-svn: 8789
2003-09-30 19:28:26 +00:00
John Criswell
c6bf1422a9
Added the CXXTest test class.
...
llvm-svn: 8788
2003-09-30 19:04:08 +00:00