Commit Graph

1807 Commits

Author SHA1 Message Date
Brian Gaeke
6d725eef5f VS: ----------------------------------------------------------------------
Add prototype for FileOpenable().

llvm-svn: 9891
2003-11-11 18:27:11 +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
Brian Gaeke
ebdebb3a5d Regenerated.
llvm-svn: 9850
2003-11-10 03:06:28 +00:00
Brian Gaeke
c06f31a815 Patch to fix PR102, contributed by Reid Spencer.
llvm-svn: 9849
2003-11-10 03:06:09 +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
Chris Lattner
dd39a2b0f8 Provide a specialization of _Alloc_traits, which allows the G++ runtime to avoid
storing an instance of the allocator in each data structure it uses.  Yaay.

llvm-svn: 9795
2003-11-07 23:20:56 +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
238613ff30 Add some ctors for this allocator
llvm-svn: 9766
2003-11-07 15:20:06 +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
Alkis Evlogimenos
2cca429997 Add std::pair tier. This is a much simplified version of boost::tie
that works only for std::pair.

llvm-svn: 9723
2003-11-05 05:58:26 +00:00
Chris Lattner
9e2193fbb9 This works with GCC 3.4 also
llvm-svn: 9717
2003-11-05 01:31:12 +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
7bf113d3ca New file, for use by the pool allocator project
llvm-svn: 9702
2003-11-04 22:38:28 +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
1826fc42b4 Escape "'s, which are frequent visitors to C++ types
llvm-svn: 9642
2003-10-31 22:16: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
Brian Gaeke
f25ce07b87 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
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
Brian Gaeke
d744e41a11 Add support for utostr(unsigned long)
llvm-svn: 9588
2003-10-29 20:06:19 +00:00
Brian Gaeke
65c88653cf 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
9def45d1d0 Add new method
llvm-svn: 9570
2003-10-28 23:10:44 +00:00
Brian Gaeke
a9e4a555f2 Remove __STDC_LIMIT_MACROS from here.
llvm-svn: 9550
2003-10-28 19:11:29 +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
Brian Gaeke
734a84b7ad I think this file is not included by anything.
llvm-svn: 9380
2003-10-22 17:51:28 +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
Chris Lattner
b2b773378f This #include is no longer necessary
llvm-svn: 9306
2003-10-20 20:29:44 +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