1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-23 21:13:02 +02:00
Commit Graph

95 Commits

Author SHA1 Message Date
Chris Lattner
06ffc5b249 Add accessors and a method to get all the outgoing links for ALL nodes
llvm-svn: 2055
2002-03-30 09:07:51 +00:00
Chris Lattner
fb50c702c4 Add an accessor
llvm-svn: 2054
2002-03-30 04:02:41 +00:00
Chris Lattner
289f7690fe Add a hook to allow the datastructure to keep naturally up to date, even
though it's not entirely fleshed out.

llvm-svn: 2051
2002-03-29 21:23:29 +00:00
Chris Lattner
ca2c7dbf7c Expose more information to clients
llvm-svn: 2027
2002-03-29 03:35:30 +00:00
Chris Lattner
cab0ce8244 Implement getEscapingAllocations & getNonEscapingAllocations
llvm-svn: 2021
2002-03-28 19:33:00 +00:00
Chris Lattner
2f9f87a984 * Remove RemoveUnreachableShadowNodes & UnlinkUndistinguishableShadowNodes
to reflect the fact that they actually operate on arbitrary nodes
* Clean up public interface of FunctionDSGraph
* add getEscapingAllocations & getNonEscapingAllocations

llvm-svn: 2019
2002-03-28 19:15:38 +00:00
Chris Lattner
4054edc567 * Define some operators on PointerVal and PVS's
* Nodes can determine whether they are foldable with another node
* Rename NewDSNode to AllocDSNode
* The Function graph breaks up all of the node types into individual
  vectors to alloc fast access when you are looking for a particular type
  of node.  Simplifies much code.

llvm-svn: 2009
2002-03-28 17:48:41 +00:00
Chris Lattner
4defbc34ff * Add a nice utility method to DSNode
* Export interface to tell whether an alloc node represent a malloc or alloca
* Add the concept of a "critical" shadow node

llvm-svn: 2000
2002-03-27 19:41:45 +00:00
Chris Lattner
e01e339e93 Allow isa<DSNode>(..)
Simplification routines return true on change

llvm-svn: 1996
2002-03-27 00:52:57 +00:00
Chris Lattner
1026adab40 New header file for datastructure analysis
llvm-svn: 1993
2002-03-26 22:38:45 +00:00
Chris Lattner
fecabeab3c Change uses of Method to Function
Change uses of methodArgument to FunctionArgument

llvm-svn: 1988
2002-03-26 17:49:55 +00:00
Chris Lattner
c481e92886 Rename Method to Function
llvm-svn: 1957
2002-03-23 22:51:58 +00:00
Vikram S. Adve
aae5fcc0ca Big bug fix: killed uses were being inserted instead of erased!
Also added a set of debug options.

llvm-svn: 1917
2002-03-19 00:59:08 +00:00
Chris Lattner
4f4609a284 Convert the top line of the header from .cpp style to .h style.
llvm-svn: 1884
2002-03-17 21:16:22 +00:00
Chris Lattner
0f0ed63279 Clean up call graph, add comments, and fix test/Regression/Other/2002-01-31-CallGraph.ll
llvm-svn: 1828
2002-03-06 20:19:35 +00:00
Chris Lattner
5cea52a4d5 Move callgraph printing out of writer.h into callgraph.h
llvm-svn: 1824
2002-03-06 17:59:45 +00:00
Chris Lattner
4830f16b6e Pull Callgraph out of the cfg namespace
llvm-svn: 1821
2002-03-06 17:39:28 +00:00
Chris Lattner
962e012ad5 Take CallGraph out of the CFG namespace. It has nothing to do with CFGs
llvm-svn: 1820
2002-03-06 17:16:43 +00:00
Chris Lattner
3ca03295c4 Expose verifier for method and module, and accept constant structures
llvm-svn: 1814
2002-02-26 21:38:48 +00:00
Chris Lattner
b10862d793 Make it compile with GCC 3.0.4
llvm-svn: 1786
2002-02-24 23:01:21 +00:00
Chris Lattner
9942a79fcd Modernize verifier interface
llvm-svn: 1780
2002-02-20 17:54:35 +00:00
Chris Lattner
c88d936415 * Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into
llvm/Support/CFG.h
* Make pred & succ iterators for intervals global functions

llvm-svn: 1748
2002-02-12 22:35:27 +00:00
Chris Lattner
3a1bc64866 Method.h no longer includes BasicBlock.h
Method::inst_* is now in llvm/Support/InstIterator.h

llvm-svn: 1745
2002-02-12 21:04:35 +00:00
Chris Lattner
3b3ee75819 Convert BBLiveVar to be a BasicBlock annotation, this removes the BB2BBLVMap from MethodLiveVarInfo.
llvm-svn: 1721
2002-02-05 06:52:25 +00:00
Chris Lattner
5337fbec40 Minor change: Methods that return ValueSet's that are guaranteed to be valid
return references instead of pointers.

llvm-svn: 1719
2002-02-05 04:20:12 +00:00
Chris Lattner
c77877fb46 Remove generic routines to Support/SetOperations.h
llvm-svn: 1715
2002-02-05 03:35:31 +00:00
Chris Lattner
6c0cbc3009 Remove empty files
llvm-svn: 1713
2002-02-05 02:52:53 +00:00
Chris Lattner
dc3aec7a90 * Eliminate the LiveVarSet class, making applyTranferFuncForMInst a static
function in the one .cpp file that uses it.  Use ValueSet's instead.
* Prepare to delete LiveVarSet.h & LiveVarSet.cpp
* Eliminate the ValueSet class, making all old member functions into global
  templates that will eventually be moved to Support.

llvm-svn: 1711
2002-02-05 02:51:01 +00:00
Chris Lattner
a8170f0944 * Code Cleanups
* Introduce RAV to allow stream I/O instead of using printValue

llvm-svn: 1710
2002-02-05 01:43:49 +00:00
Chris Lattner
80c1109e8e Remove empty file
llvm-svn: 1708
2002-02-05 00:35:59 +00:00
Chris Lattner
1181768743 * Big cleanups.
* Make BBLiveVar.h effectively an internal header file
* Prepare LiveVarMap.h for deletion

llvm-svn: 1705
2002-02-05 00:33:19 +00:00
Chris Lattner
62860d4c3d Clean up MethodLiveVarInfo
llvm-svn: 1703
2002-02-04 20:49:04 +00:00
Chris Lattner
b4e0d0424c Turn live variable analysis into a real MethodPass.
llvm-svn: 1699
2002-02-04 20:00:08 +00:00
Chris Lattner
8a76e0e37e Remove Obsolete LoopDepthCalculator. All users should use LoopInfo directly.
llvm-svn: 1697
2002-02-04 17:49:01 +00:00
Chris Lattner
faeb3c85f9 Remvoe big hack that was used by the register allocator
llvm-svn: 1692
2002-02-04 17:38:03 +00:00
Chris Lattner
0c04c60975 eliminate the add and remove methods, clients must use insert and erase directly.
llvm-svn: 1686
2002-02-04 16:33:18 +00:00
Chris Lattner
140f09f8cc Remove tons of include pollution
Remove frivolous const's
Make use of the -> operator

llvm-svn: 1685
2002-02-04 16:32:40 +00:00
Chris Lattner
c6d2d0f12e Use generic pointer hashes instead of custom ones.
llvm-svn: 1684
2002-02-04 16:31:42 +00:00
Chris Lattner
4f37a90fda Eliminate ModuleAnalyzer. It's old code that is not going to be used in the near future
llvm-svn: 1679
2002-02-04 06:47:17 +00:00
Chris Lattner
c98336111d Remove extraneous #includes
llvm-svn: 1634
2002-02-03 07:03:13 +00:00
Chris Lattner
a494a4981d Free memory when not in use
llvm-svn: 1618
2002-01-31 18:32:49 +00:00
Chris Lattner
b678885f4c Remove this file. Folded into UnifyMethodExitNodes pass
llvm-svn: 1612
2002-01-31 01:02:32 +00:00
Chris Lattner
5c1e4c976e Implement LoopDepth calculation in terms of dominators instead of intervals
llvm-svn: 1600
2002-01-31 00:41:01 +00:00
Chris Lattner
3ce0567bac Convert analyses over to new Pass framework
llvm-svn: 1595
2002-01-30 23:27:55 +00:00
Chris Lattner
ae0661dc6c Don't die on call instructions, which reference methods
llvm-svn: 1593
2002-01-30 23:00:41 +00:00
Chris Lattner
2521ae1011 Implement a more powerful, simpler, pass system. This pass system can figure
out how to run a collection of passes optimially given their behaviors and
charactaristics.

Convert code to use it.

llvm-svn: 1507
2002-01-21 07:31:50 +00:00
Chris Lattner
3dc9a2a61f Changes to build successfully with GCC 3.02
llvm-svn: 1503
2002-01-20 22:54:45 +00:00
Ruchira Sasanka
9d26f00cfb Added comments are more documentation info
llvm-svn: 1434
2001-12-08 21:04:22 +00:00
Chris Lattner
c4a5815033 Renamed inst_const_iterator -> const_inst_iterator
Renamed op_const_iterator   -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()

llvm-svn: 1408
2001-12-04 00:03:30 +00:00
Chris Lattner
f6b7da2bb5 Rename ConstPoolVal -> Constant
Rename ConstPool*   -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h

llvm-svn: 1407
2001-12-03 22:26:30 +00:00