Chris Lattner
9995768f47
Fixes for PR114: Thanks to Reid Spencer!
...
llvm-svn: 10029
2003-11-16 20:21:15 +00:00
Chris Lattner
5bc662bc0a
This is obviously illegal C++ code, but was apparently accepted by 3.3
...
bork
llvm-svn: 9993
2003-11-14 06:03:05 +00:00
Chris Lattner
6a0a73554a
Add methods for implementation
...
llvm-svn: 9963
2003-11-13 05:05:34 +00:00
Chris Lattner
3c72015317
Add an initial version of the CompleteBUDataStructures pass
...
llvm-svn: 9955
2003-11-13 01:42:38 +00:00
Chris Lattner
fb07beec2c
Add argument
...
llvm-svn: 9921
2003-11-12 17:58:09 +00:00
Brian Gaeke
d25f86d683
Put all LLVM code into the llvm namespace, as per bug 109.
...
llvm-svn: 9903
2003-11-11 22:41:34 +00:00
Chris Lattner
2b0c87be66
Add new method
...
llvm-svn: 9879
2003-11-11 05:08:36 +00:00
Chris Lattner
da2387324c
Include forms of SplitCriticalEdge which work correctly with pred/succ iterators
...
llvm-svn: 9856
2003-11-10 04:42:13 +00:00
Chris Lattner
88e0e2ab86
No really, I'm not on crack
...
llvm-svn: 9855
2003-11-10 04:23:52 +00:00
Chris Lattner
79ba83de00
Helper method
...
llvm-svn: 9854
2003-11-10 04:16:50 +00:00
Chris Lattner
2a993fb1c5
Move isCriticalEdge & SplitCritical into this file. While we're at it, change
...
the interface to SplitCriticalEdge so that it splits an edge if it is critical,
otherwise just returns false and noops if not.
llvm-svn: 9852
2003-11-10 04:10:27 +00:00
Chris Lattner
6beaeb1c1d
Move isCriticalEdge & SplitCritical edge out of this file, which is only
...
for passes.
llvm-svn: 9851
2003-11-10 04:09:44 +00:00
Chris Lattner
f40566184d
Fix PR95. I'm checking this patch in for Reid Spencer, who figured it out
...
and wrote it up. Thanks!!
llvm-svn: 9832
2003-11-09 19:39:48 +00:00
Brian Gaeke
f84726a3fd
Add a warning about not "new"ing or "delete"ing CallSites
...
llvm-svn: 9782
2003-11-07 19:25:22 +00:00
Misha Brukman
9116e0e93e
Added ability to register FunctionPasses as optimizations, with
...
TargetMachine-accepting constructors (thanks to Chris).
llvm-svn: 9781
2003-11-07 18:56:32 +00:00
Misha Brukman
b6f41c96d7
Declare FunctionPasses as such.
...
llvm-svn: 9767
2003-11-07 17:19:39 +00:00
Chris Lattner
5c551d6bd5
Split the DAE pass into DAE and DAH passes
...
llvm-svn: 9742
2003-11-05 21:43:42 +00:00
Brian Gaeke
eb6b11c9e0
A few handy methods that seem to mesh well with what CallSite already provides.
...
llvm-svn: 9737
2003-11-05 20:25:33 +00:00
Misha Brukman
7fa3523f55
Since this function returns an int, let's actually return something.
...
llvm-svn: 9734
2003-11-05 19:48:05 +00:00
Chris Lattner
97da28f949
Fix spello
...
Add negate overload
llvm-svn: 9709
2003-11-04 23:37:40 +00:00
Alkis Evlogimenos
a6f280b483
Update documentation since it was misleading: make it clear that a
...
negative instruction count is returned if instructions are removed
from a basic block.
llvm-svn: 9705
2003-11-04 23:07:00 +00:00
Alkis Evlogimenos
c6a7c83333
Change all machine basic block modifier functions in MRegisterInfo to
...
return the number of instructions added to/removed from the basic block
passed as their first argument.
Note: This is only needed because we use a std::vector instead of an
ilist to keep MachineBasicBlock instructions. Inserting an instruction
to a MachineBasicBlock invalidates all iterators to the basic
block. The return value can be used to update an index to the machine
basic block instruction vector and circumvent the iterator elimination
problem but this is really not needed if we move to a better
representation.
llvm-svn: 9704
2003-11-04 22:57:09 +00:00
Chris Lattner
6bdf3f6928
Allow CallSites to be used as the key of a map
...
llvm-svn: 9660
2003-11-02 23:04:33 +00:00
Chris Lattner
a71b07eeca
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
29f03b2d39
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
78b09155e1
Did I mention that I _HATE_ CPRs?
...
llvm-svn: 9639
2003-10-31 18:38:06 +00:00
Chris Lattner
18283ea9f0
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
8d2a791804
Expose new print methods
...
llvm-svn: 9620
2003-10-30 23:41:19 +00:00
Chris Lattner
0b7af35c38
New interface
...
llvm-svn: 9618
2003-10-30 23:39:52 +00:00
Chris Lattner
586db4056a
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
363bfc10c7
Tighten up what we consider to be first class types.
...
llvm-svn: 9608
2003-10-30 01:38:41 +00:00
Chris Lattner
9def45d1d0
Add new method
...
llvm-svn: 9570
2003-10-28 23:10:44 +00:00
Brian Gaeke
d857892674
ExecutionEngine::create no longer takes a TraceMode argument.
...
llvm-svn: 9488
2003-10-24 19:58:38 +00:00
Chris Lattner
3cd24ce25a
Add assertions
...
llvm-svn: 9443
2003-10-23 19:33:49 +00:00
Chris Lattner
6612e3dfd5
Fix bug in eon hopefully
...
llvm-svn: 9442
2003-10-23 19:33:44 +00:00
Chris Lattner
78d89a92b7
Include new prototype
...
llvm-svn: 9422
2003-10-23 16:51:49 +00:00
Chris Lattner
59ee30fa40
Actually share constants local to a function!
...
llvm-svn: 9417
2003-10-23 16:29:12 +00:00
Brian Gaeke
dd58e78e27
Fix apparent typo in head-of-file comment.
...
llvm-svn: 9400
2003-10-23 04:01:49 +00:00
Chris Lattner
ded70e0362
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
a227bfeff3
Add a new map
...
llvm-svn: 9311
2003-10-20 20:55:13 +00:00
John Criswell
16c6cda9d5
Added LLVM copyright header (for lack of a better term).
...
llvm-svn: 9304
2003-10-20 20:19:47 +00:00
Brian Gaeke
04115cb86a
Make replaceMachineCodeForFunction return void.
...
Make it assert by default.
llvm-svn: 9287
2003-10-20 15:14:33 +00:00
Chris Lattner
87843f87b8
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
97433b8e95
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
d0e3a15a9e
New revised variable argument handling support
...
llvm-svn: 9219
2003-10-18 05:53:13 +00:00
Misha Brukman
a4bca57c6e
Return the Module being materialized to avoid always calling getModule().
...
llvm-svn: 9198
2003-10-17 18:26:51 +00:00
Brian Gaeke
fc52099b3c
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
5a1f705c88
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
2a7cedb657
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
99daf743bb
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