Chris Lattner
92dfc1ed32
Making this code const-correct would be a pain, so I'll hack it.
...
llvm-svn: 7350
2003-07-26 23:29:51 +00:00
Chris Lattner
2d6049baaf
Const correctness fixes
...
llvm-svn: 7349
2003-07-26 23:24:56 +00:00
Chris Lattner
e39696972d
Be const correct
...
llvm-svn: 7348
2003-07-26 23:23:41 +00:00
Chris Lattner
792286a084
Hrm, another necesary one :(
...
llvm-svn: 7347
2003-07-26 23:22:19 +00:00
Chris Lattner
e99fa3f42e
Whoops, this one was needed
...
llvm-svn: 7346
2003-07-26 23:18:11 +00:00
Chris Lattner
f0df04752d
We don't modify the LLVM rep, remain const correct
...
llvm-svn: 7345
2003-07-26 23:06:00 +00:00
Chris Lattner
b92653f037
If the pass changes _anything_ it must return true
...
llvm-svn: 7344
2003-07-26 23:05:37 +00:00
Chris Lattner
406d31b4c2
This code doesn't modify the LLVM structure, keep stuff const
...
llvm-svn: 7343
2003-07-26 23:04:00 +00:00
Chris Lattner
ecc0501a97
Remove #include
...
llvm-svn: 7342
2003-07-26 23:01:04 +00:00
Chris Lattner
9224631d6b
Remove extraneous #includes
...
llvm-svn: 7341
2003-07-26 23:00:29 +00:00
Chris Lattner
36a7bf78fa
Fix another minor bug
...
llvm-svn: 7340
2003-07-26 23:00:05 +00:00
Chris Lattner
2bf24be50e
Remove #includes
...
llvm-svn: 7339
2003-07-26 22:56:46 +00:00
Chris Lattner
e20dc0fd40
Simplify some makefile magic, no functional changes
...
llvm-svn: 7336
2003-07-25 22:26:17 +00:00
Chris Lattner
092a931aa2
Add fixmes
...
llvm-svn: 7335
2003-07-25 21:13:16 +00:00
Vikram S. Adve
48144de834
(1) Major fix to the way unused regs. are marked and found for the FP
...
Single and FP double reg types (which share the same reg class).
Now all methods marking/finding unused regs consider the regType
within the reg class, and SparcFloatRegClass specializes this code.
(2) Remove machine-specific regalloc. methods that are no longer needed.
In particular, arguments and return value from a call do not need
machine-specific code for allocation.
(3) Rename TargetRegInfo::getRegType variants to avoid unintentional
overloading when an include file is omitted.
llvm-svn: 7334
2003-07-25 21:12:15 +00:00
Chris Lattner
30096fa918
This test has been automatized
...
llvm-svn: 7333
2003-07-25 21:09:42 +00:00
Chris Lattner
f9a29d50df
Update to use more modern graph checker
...
llvm-svn: 7332
2003-07-25 21:09:20 +00:00
Chris Lattner
095ffd992d
New testcase, an automatized version of Vikrams ggcollapse.c file
...
llvm-svn: 7331
2003-07-25 21:09:11 +00:00
Vikram S. Adve
a98599dc3b
1. Fix a case that was marking the invalid reg. num. (-1) as used,
...
causing a nasty array bound error later.
2. Fix silly typo causing logical shift of unsigned long to use
SRL instead of SRLX.
llvm-svn: 7330
2003-07-25 21:08:58 +00:00
Vikram S. Adve
57eb4ab6bc
(1) Change the way unused regs. are marked and found to consider regType
...
info (since multiple reg types may share the same reg class).
(2) Remove machine-specific regalloc. methods that are no longer needed.
In particular, arguments and return value from a call do not need
machine-specific code for allocation.
(3) Rename TargetRegInfo::getRegType variants to avoid unintentional
overloading when an include file is omitted.
llvm-svn: 7329
2003-07-25 21:06:09 +00:00
Vikram S. Adve
73f410f53f
Change the way unused regs. are marked and found to consider regType
...
info (since multiple reg types may share the same reg class).
Remove machine-specific regalloc. methods that are no longer needed.
llvm-svn: 7328
2003-07-25 21:01:43 +00:00
Vikram S. Adve
714fee31fd
Remove unused field. Change the way unused regs. are marked and
...
found to consider regType info (since multiple reg types may share
the same reg class, e.g., single and double on Sparc).
llvm-svn: 7327
2003-07-25 21:00:13 +00:00
Vikram S. Adve
19309fca4b
Add an assertion.
...
llvm-svn: 7326
2003-07-25 20:58:57 +00:00
Chris Lattner
7c72e1a537
Remove testcase which has been automatized
...
llvm-svn: 7325
2003-07-25 20:55:08 +00:00
Chris Lattner
fef040821f
Checkin of Vikram's ggfuncptr.c test adapted for automatic checking
...
llvm-svn: 7324
2003-07-25 20:53:58 +00:00
Chris Lattner
752a4ca4c4
Dont' try to parse the colon
...
llvm-svn: 7323
2003-07-25 20:49:29 +00:00
Chris Lattner
915b998b3f
Add a more general check-flags which can be used to ensure arbitrary flags are set
...
llvm-svn: 7322
2003-07-25 20:45:40 +00:00
Brian Gaeke
991f66b7e2
Include llvm/Support/Mangler.h first. Don't include <iostream>, <set>,
...
<string>, or llvm/Value.h. Move up the inclusion of llvm/Support/Mangler.h.
llvm-svn: 7321
2003-07-25 20:21:20 +00:00
Brian Gaeke
11e6d7f2de
Don't include llvm/SlotCalculator.h, or <set>.
...
Move up the inclusion of llvm/Support/Mangler.h.
llvm-svn: 7320
2003-07-25 20:21:06 +00:00
Brian Gaeke
2742a70083
Forward-declare class Module to make the header file self-contained.
...
llvm-svn: 7319
2003-07-25 20:20:53 +00:00
Chris Lattner
d68c05b473
More cassert inclusion for GCC 3.3
...
llvm-svn: 7318
2003-07-25 18:06:53 +00:00
Chris Lattner
fb4f065e74
Change reference to assert.h to mention cassert
...
llvm-svn: 7317
2003-07-25 18:05:51 +00:00
Chris Lattner
a5413cbb0e
Brian implemented the static compiler, take it off the list
...
llvm-svn: 7316
2003-07-25 18:05:38 +00:00
Chris Lattner
be4a5081d1
#include <cassert> as necessary...
...
llvm-svn: 7315
2003-07-25 17:58:41 +00:00
Chris Lattner
a0b09ab5d9
Fix another accessibility problem illuminated by GCC 3.3
...
llvm-svn: 7314
2003-07-25 17:49:28 +00:00
Chris Lattner
715b7be844
Fix visibility problem exposed by GCC 3.3
...
llvm-svn: 7313
2003-07-25 17:46:25 +00:00
Chris Lattner
56c01f1a1e
Remove inline declarations that GCC 3.3 doesn't like without a body
...
llvm-svn: 7312
2003-07-25 17:39:33 +00:00
Chris Lattner
d776276bda
Regardless of whether C provides assert.h, C++ source can always include
...
<cassert>, making this header unneeded.
llvm-svn: 7311
2003-07-25 17:35:03 +00:00
Chris Lattner
9390472890
Use the C++ <cassert> header, not the C <assert.h> header
...
llvm-svn: 7310
2003-07-25 17:34:17 +00:00
Chris Lattner
1adb1fcb82
This header works with GCC 3.3
...
llvm-svn: 7309
2003-07-25 17:33:45 +00:00
Chris Lattner
89596df8dd
Use C++ headers, not C headers
...
llvm-svn: 7308
2003-07-25 17:32:51 +00:00
Chris Lattner
754138fc7d
Add includes of assert
...
llvm-svn: 7307
2003-07-25 17:23:27 +00:00
Chris Lattner
63d911d12e
Fix accessibility problems GCC 3.3
...
llvm-svn: 7306
2003-07-25 17:23:13 +00:00
Chris Lattner
fa412837cb
Add assert.h include
...
llvm-svn: 7305
2003-07-25 16:47:07 +00:00
Chris Lattner
72684e9492
Convert to C++ style comments
...
llvm-svn: 7304
2003-07-25 15:08:08 +00:00
Vikram S. Adve
be5721dddb
Include vector into these two files to ensure that specializations like
...
stl_bvector.h are correctly included into *anything* that includes hash_map
or hash_set. ext/hash_map includes stl_vector.h directly and leaves
out the specializations, causing truly nasty bugs due to inconsistent
versions of vector<> being used for vector<bool> in different files.
llvm-svn: 7303
2003-07-25 14:06:13 +00:00
Misha Brukman
914429c42b
Made a bunch of cleanups, as per Chris' recommendations:
...
* Removed unused global and member variables
* Fixed comments (CodeGeneratorBug.cpp)
* Check for possibly failing GCC::create() and CBE::create()
* Remove generated files after diffing the output (e.g., shared object)
* Instead of using std::for_each, use explicit loops as std::for_each may
duplicate the functor, and ours carries state
* Changed member var from cl::opt<std::string> to just std::string
* Fixed doxygen comments
* Fixed string comparisons to use [ str.empty() ] instead of [ str == "" ]
* Cache instances of CBE and GCC in BugDriver across compilations and executions
while testing tools.
llvm-svn: 7302
2003-07-24 21:59:10 +00:00
Brian Gaeke
d9979a5529
Cleanups:
...
Mangler.cpp: Constify parameter to makeNameProper, and use const_iterator.
Make Count an unsigned int, and use utostr().
Don't name parameters things that start with underscore.
Mangler.h: All of the above, and also: Add Emacs mode-line. Include <set>.
llvm-svn: 7301
2003-07-24 21:37:57 +00:00
Brian Gaeke
e5ae59ad05
Factor out name-mangling from X86/Printer, which is derived from CWriter,
...
into this new support class.
llvm-svn: 7300
2003-07-24 20:20:58 +00:00
Brian Gaeke
dc07ea6681
Use unified CWriter-X86/Printer name mangler. Do not bother using
...
SlotCalculator in CWriter. (Unfortunately, all this means a lot of
X86/Printer's methods have to be de-constified again. Oh well.)
llvm-svn: 7299
2003-07-24 20:20:44 +00:00