Chris Lattner
2e8d28d082
Allow CallSites to be used as the key of a map
...
llvm-svn: 9660
2003-11-02 23:04:33 +00:00
Chris Lattner
2b9926fc8e
All DSGraphs keep a reference to the targetdata they are created with. This is
...
used to eliminate the hard coded, hacked in, sparc specific, global TargetData.
Changing the TargetData used to actually match the code fixes problems, and
eliminates a crash.
llvm-svn: 9659
2003-11-02 22:27:28 +00:00
Chris Lattner
7949bf0d54
Including the symbol table in the FindUsedTypes analysis was the WRONG way
...
to fix test/Regression/CBackend/2003-10-23-UnusedType.ll. This completely
neutered the deadtypeelim pass.
llvm-svn: 9646
2003-11-02 01:28:41 +00:00
Chris Lattner
e9cdb46520
Escape "'s, which are frequent visitors to C++ types
...
llvm-svn: 9642
2003-10-31 22:16:41 +00:00
Chris Lattner
9157ec025b
Did I mention that I _HATE_ CPRs?
...
llvm-svn: 9639
2003-10-31 18:38:06 +00:00
Chris Lattner
f6925da295
Constant pointer refs are causing these to fail unnecessarily, which is causing
...
a lot of code to be pessimized. I hate CPRs. :(
llvm-svn: 9635
2003-10-31 17:51:16 +00:00
Chris Lattner
eeabc3f846
Expose new print methods
...
llvm-svn: 9620
2003-10-30 23:41:19 +00:00
Chris Lattner
de171b3d18
New interface
...
llvm-svn: 9618
2003-10-30 23:39:52 +00:00
Brian Gaeke
8d09fd1ea6
Apparently my Mac OS X fixes were not entirely compatible with SPARC...hmm.
...
llvm-svn: 9612
2003-10-30 15:03:49 +00:00
Chris Lattner
dd63f9e22b
When someone includes CallGraph.h, make sure that they link in CallGraph.cpp
...
llvm-svn: 9611
2003-10-30 05:17:30 +00:00
Chris Lattner
9e167cd6ab
Tighten up what we consider to be first class types.
...
llvm-svn: 9608
2003-10-30 01:38:41 +00:00
Brian Gaeke
7086bbb33c
Add support for utostr(unsigned long)
...
llvm-svn: 9588
2003-10-29 20:06:19 +00:00
Brian Gaeke
0a82d78d8c
Pull in stdint.h here, if we have it. Some systems keep
...
the INT*_MAX macros there.
llvm-svn: 9577
2003-10-29 04:25:48 +00:00
Chris Lattner
8d1464e2d6
Add new method
...
llvm-svn: 9570
2003-10-28 23:10:44 +00:00
Brian Gaeke
c4fdf65e5a
Remove __STDC_LIMIT_MACROS from here.
...
llvm-svn: 9550
2003-10-28 19:11:29 +00:00
Brian Gaeke
65cd504822
ExecutionEngine::create no longer takes a TraceMode argument.
...
llvm-svn: 9488
2003-10-24 19:58:38 +00:00
Chris Lattner
97b5b1fd58
Add assertions
...
llvm-svn: 9443
2003-10-23 19:33:49 +00:00
Chris Lattner
7eb71b4bd8
Fix bug in eon hopefully
...
llvm-svn: 9442
2003-10-23 19:33:44 +00:00
Chris Lattner
e4511db45a
Include new prototype
...
llvm-svn: 9422
2003-10-23 16:51:49 +00:00
Chris Lattner
6f92cdd0cf
Actually share constants local to a function!
...
llvm-svn: 9417
2003-10-23 16:29:12 +00:00
Brian Gaeke
3ab0bb144e
Fix apparent typo in head-of-file comment.
...
llvm-svn: 9400
2003-10-23 04:01:49 +00:00
Brian Gaeke
a2c22523d2
I think this file is not included by anything.
...
llvm-svn: 9380
2003-10-22 17:51:28 +00:00
Chris Lattner
2262fd252e
Add two new function stubs for viewing the CFG of a function inside of the
...
debugger
llvm-svn: 9373
2003-10-22 16:03:20 +00:00
Chris Lattner
826afe939d
Add a new map
...
llvm-svn: 9311
2003-10-20 20:55:13 +00:00
Chris Lattner
80e6f5db8f
This #include is no longer necessary
...
llvm-svn: 9306
2003-10-20 20:29:44 +00:00
John Criswell
b644598b37
Added LLVM copyright header (for lack of a better term).
...
llvm-svn: 9304
2003-10-20 20:19:47 +00:00
John Criswell
6be819840b
Oops. Typo.
...
llvm-svn: 9303
2003-10-20 20:16:14 +00:00
John Criswell
4c8472d705
Added LLVM header notice.
...
llvm-svn: 9302
2003-10-20 20:11:43 +00:00
John Criswell
dd04329da2
Added LLVM notice.
...
llvm-svn: 9300
2003-10-20 19:46:57 +00:00
Brian Gaeke
a585d7e768
Make replaceMachineCodeForFunction return void.
...
Make it assert by default.
llvm-svn: 9287
2003-10-20 15:14:33 +00:00
Chris Lattner
b94550e537
Change the Opcode enum for PHI nodes from "Instruction::PHINode" to "Instruction::PHI" to be more consistent with the other instructions.
...
llvm-svn: 9269
2003-10-19 21:34:28 +00:00
Chris Lattner
fc0bf07db4
Change the Opcode enum for PHI nodes from "Instruction::PHINode" to "Instruction::PHI" to be more consistent with the other instructions.
...
This allows removal of a special case from the instvisitor
llvm-svn: 9268
2003-10-19 21:34:11 +00:00
Chris Lattner
0079e7dd6d
New revised variable argument handling support
...
llvm-svn: 9219
2003-10-18 05:53:13 +00:00
Misha Brukman
8763b30a2b
Return the Module being materialized to avoid always calling getModule().
...
llvm-svn: 9198
2003-10-17 18:26:51 +00:00
Brian Gaeke
01f5925fc8
Add stub version of replaceMachineCodeForFunction. It will live here until
...
we have a better place for it to go.
llvm-svn: 9197
2003-10-17 18:26:45 +00:00
Alkis Evlogimenos
8faf8d93d5
Eliminate some extraneous code in SlotCalculator::insertVal().
...
Rename SlotCalculator::getValSlot() to SlotCalculator::getSlot(),
SlotCalculator::insertValue() to SlotCalculator::getOrCreateSlot(),
SlotCalculator::insertVal() to SlotCalculator::insertValue(), and
SlotCalculator::doInsertVal() to SlotCalculator::doInsertValue().
llvm-svn: 9190
2003-10-17 02:02:40 +00:00
Brian Gaeke
cd4ed60bdd
This file has funny include guards and funny extra whitespace.
...
Make this file less funny.
llvm-svn: 9186
2003-10-16 23:43:35 +00:00
Misha Brukman
c0acd1173d
If we move the constructors to the .cpp file, we can drop the #include
...
llvm-svn: 9180
2003-10-16 21:16:21 +00:00
Chris Lattner
3c38eac99b
Add weak linking type
...
llvm-svn: 9168
2003-10-16 18:27:04 +00:00
Chris Lattner
830e5a01eb
Completely rewrite support for the Value::use_* list. Now, all operations on
...
this list (except use_size()) are constant time. Before the killUse method
(used whenever something stopped using a value) was linear time, and thus
very very slow for large programs.
This speeds GCCAS up _substantially_ on large programs: almost 2x for 176.gcc:
176.gcc: 77.07s -> 37.38s
177.mesa: 7.59s -> 5.57s
252.eon: 21.02s -> 19.52s (*)
253.perlbmk: 11.40s -> 13.05s
254.gap: 7.25s -> 7.42s
252.eon would speed up a whole lot more, but optimization time is being
dominated by the inlining pass, which needs to be fixed.
llvm-svn: 9159
2003-10-16 16:53:04 +00:00
Chris Lattner
ddf92c8a9a
Vector is my friend, do you like vector?
...
llvm-svn: 9147
2003-10-15 22:10:10 +00:00
Chris Lattner
fd27d111d9
lalala
...
llvm-svn: 9146
2003-10-15 22:09:57 +00:00
Chris Lattner
1318d56b4b
We'll need this soon as well
...
llvm-svn: 9145
2003-10-15 22:09:46 +00:00
Chris Lattner
46c3217be4
This file uses assert and doesn't include anything which already #includes <cassert>
...
llvm-svn: 9142
2003-10-15 21:55:37 +00:00
Chris Lattner
30c715b30b
Remove usage of use_size()
...
llvm-svn: 9134
2003-10-15 16:43:24 +00:00
Chris Lattner
f92877f304
Add new hasOneUse() method. Remove explicit inline qualifiers
...
llvm-svn: 9132
2003-10-15 16:39:04 +00:00
Chris Lattner
1499851ef6
Generalize abstract interpreter interface to allow linking in an arbitrary number of shared objects
...
llvm-svn: 9129
2003-10-14 21:52:52 +00:00
Misha Brukman
1ff924b5c2
Enabling incremental bytecode loading in the JIT:
...
* ExecutionEngine can be constructed from a ModuleProvider
* Alphabetized order of forward-declared classes
llvm-svn: 9123
2003-10-14 21:35:52 +00:00
Misha Brukman
2c611561ea
Enabling incremental bytecode loading in the JIT:
...
* Add ModuleProvider as a parameter to FunctionPassManager
llvm-svn: 9122
2003-10-14 21:34:56 +00:00
Chris Lattner
66da9ef634
Substantial cleanups:
...
* Add header comment
* Remove extraneous #includes
* Move the FileType enum into the GCC class
* The GCC class is not virtual.
* Move all of the "constructor" functions into the classes themselves
* Stop using cl::list as arguments, use std::vector instead (which cl::list
derives from)
* Improve comments
llvm-svn: 9121
2003-10-14 21:34:11 +00:00