oota-llvm.git
22 years ago* Remove RemoveUnreachableShadowNodes & UnlinkUndistinguishableShadowNodes
Chris Lattner [Thu, 28 Mar 2002 19:15:38 +0000 (19:15 +0000)]
* Remove RemoveUnreachableShadowNodes & UnlinkUndistinguishableShadowNodes
  to reflect the fact that they actually operate on arbitrary nodes
* Clean up public interface of FunctionDSGraph
* add getEscapingAllocations & getNonEscapingAllocations

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2019 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoOoops, I did such a great job pruning nodes, that I accidentally deleted
Chris Lattner [Thu, 28 Mar 2002 18:38:38 +0000 (18:38 +0000)]
Ooops, I did such a great job pruning nodes, that I accidentally deleted
ALL allocation nodes... hrm... bad.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2018 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd subdirs to makefile
Chris Lattner [Thu, 28 Mar 2002 18:21:31 +0000 (18:21 +0000)]
Add subdirs to makefile

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2017 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoInitial checkin of first regression test for mem2reg pass
Chris Lattner [Thu, 28 Mar 2002 18:21:05 +0000 (18:21 +0000)]
Initial checkin of first regression test for mem2reg pass

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2016 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMakefile change for IPO's that use the Datastructure analysis stuff
Chris Lattner [Thu, 28 Mar 2002 18:10:31 +0000 (18:10 +0000)]
Makefile change for IPO's that use the Datastructure analysis stuff

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2015 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoInitial checkin of Noop pass that will be the pool allocator
Chris Lattner [Thu, 28 Mar 2002 18:08:31 +0000 (18:08 +0000)]
Initial checkin of Noop pass that will be the pool allocator

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2014 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd hook for pool allocation pass
Chris Lattner [Thu, 28 Mar 2002 18:08:07 +0000 (18:08 +0000)]
Add hook for pool allocation pass

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2013 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew file for new pass
Chris Lattner [Thu, 28 Mar 2002 18:01:22 +0000 (18:01 +0000)]
New file for new pass

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2012 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoChecking for Cameron
Chris Lattner [Thu, 28 Mar 2002 17:56:28 +0000 (17:56 +0000)]
Checking for Cameron

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2011 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMany changes
Chris Lattner [Thu, 28 Mar 2002 17:56:03 +0000 (17:56 +0000)]
Many changes
* Simplify a lot of the inlining stuff.  There are still problems, but not
  many
* Break up the Function representation to have a vector for every different
  node type so it is fast to find nodes of a particular flavor.
* Do more intelligent merging of call values
* Allow elimination of unreachable shadow and allocation nodes
* Generalize indistinguishability testing to allow merging of identical calls.
* Increase shadow node merging power

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2010 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Define some operators on PointerVal and PVS's
Chris Lattner [Thu, 28 Mar 2002 17:48:41 +0000 (17:48 +0000)]
* 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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2009 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRename constructor function for mem2reg pass.
Cameron Buschardt [Wed, 27 Mar 2002 23:29:23 +0000 (23:29 +0000)]
Rename constructor function for mem2reg pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2008 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Move classes around
Cameron Buschardt [Wed, 27 Mar 2002 23:28:40 +0000 (23:28 +0000)]
* Move classes around
* rename constructor function
* Move stuff into anonymous namespaces

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2007 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRename constructor function
Cameron Buschardt [Wed, 27 Mar 2002 23:27:45 +0000 (23:27 +0000)]
Rename constructor function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2006 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoImplemented promote mem->reg pass.
Cameron Buschardt [Wed, 27 Mar 2002 23:17:37 +0000 (23:17 +0000)]
Implemented promote mem->reg pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2005 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Add #define to enabled debug messages
Chris Lattner [Wed, 27 Mar 2002 19:48:03 +0000 (19:48 +0000)]
* Add #define to enabled debug messages
* Move removeEdgesTo to be a member of DSNode
* Implement (but #ifdef out) the new, spiffier, method of determining
  shadow node equivalence.  This cannot be enabled until more is
  implemented.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2004 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Implement DSNode::removeAllIncomingEdges
Chris Lattner [Wed, 27 Mar 2002 19:46:05 +0000 (19:46 +0000)]
* Implement DSNode::removeAllIncomingEdges
* Implement Critical Shadow node handling
* Implement routines to determine whether an allocation node is a malloc
  or alloca

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2003 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Add critical node support
Chris Lattner [Wed, 27 Mar 2002 19:45:12 +0000 (19:45 +0000)]
* Add critical node support
* Optimize graph after building it.  This should be unneccesary in the future

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2002 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Destroy alloca nodes when a graph gets inlined
Chris Lattner [Wed, 27 Mar 2002 19:44:33 +0000 (19:44 +0000)]
* Destroy alloca nodes when a graph gets inlined
* Add links to all subtrees when a shadow node gets resolved
* Add critical node handling

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2001 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Add a nice utility method to DSNode
Chris Lattner [Wed, 27 Mar 2002 19:41:45 +0000 (19:41 +0000)]
* 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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@2000 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Optimizers return true on change
Chris Lattner [Wed, 27 Mar 2002 00:55:13 +0000 (00:55 +0000)]
* Optimizers return true on change
* Implement indistinguishable shadow node elimination

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1999 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix long line
Chris Lattner [Wed, 27 Mar 2002 00:54:31 +0000 (00:54 +0000)]
Fix long line

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1998 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Because of optimization, the shadow nodes between arguments might get
Chris Lattner [Wed, 27 Mar 2002 00:53:57 +0000 (00:53 +0000)]
* Because of optimization, the shadow nodes between arguments might get
  removed.  Check to see if they are there.
* Repeat optimizations while changing

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1997 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAllow isa<DSNode>(..)
Chris Lattner [Wed, 27 Mar 2002 00:52:57 +0000 (00:52 +0000)]
Allow isa<DSNode>(..)
Simplification routines return true on change

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1996 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Add support for DataStructure analysis
Chris Lattner [Tue, 26 Mar 2002 22:43:12 +0000 (22:43 +0000)]
* Add support for DataStructure analysis
* Parameterize pass outputting with the printPass template, so analysis
  output can optionally take more arguments than just a stream.  The
  default output mode is just to use operator<< on the analysis.
* Remove CurrentModule hack, in favor of using printPass
* Remove special operator<<'s defined for FindUsedTypes and
  FindUnsafePointerTypes, in favor of printPass specializations
* Use std::cout instead of cout

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1995 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoInitial checkin of Datastructure analysis.
Chris Lattner [Tue, 26 Mar 2002 22:39:06 +0000 (22:39 +0000)]
Initial checkin of Datastructure analysis.

Has bugs, but shouldn't crash in theory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1994 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew header file for datastructure analysis
Chris Lattner [Tue, 26 Mar 2002 22:38:45 +0000 (22:38 +0000)]
New header file for datastructure analysis

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1993 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoChange from Method to Function
Chris Lattner [Tue, 26 Mar 2002 18:02:30 +0000 (18:02 +0000)]
Change from Method to Function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1992 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoChange references from Method to Function
Chris Lattner [Tue, 26 Mar 2002 18:01:55 +0000 (18:01 +0000)]
Change references from Method to Function
change references from MethodARgument to FunctionArgument

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1991 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoConvert to use new style casts instead of direct checking
Chris Lattner [Tue, 26 Mar 2002 17:58:12 +0000 (17:58 +0000)]
Convert to use new style casts instead of direct checking

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1990 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agochange refs to Method to Function
Chris Lattner [Tue, 26 Mar 2002 17:55:33 +0000 (17:55 +0000)]
change refs to Method to Function
Change references to MEthodArgument to FunctionArgument

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1989 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoChange uses of Method to Function
Chris Lattner [Tue, 26 Mar 2002 17:49:55 +0000 (17:49 +0000)]
Change uses of Method to Function
Change uses of methodArgument to FunctionArgument

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1988 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove unneccesary forward declarations for classes
Chris Lattner [Tue, 26 Mar 2002 17:49:00 +0000 (17:49 +0000)]
Remove unneccesary forward declarations for classes

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1987 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoTransform uses of Method into uses of Function.
Chris Lattner [Tue, 26 Mar 2002 17:48:08 +0000 (17:48 +0000)]
Transform uses of Method into uses of Function.
Rename MethodArgument to FunctionArgument
Fix some _really_ out of date comments

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1986 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAllow clients to use FunctionType as well as MethodType for now
Chris Lattner [Tue, 26 Mar 2002 17:46:41 +0000 (17:46 +0000)]
Allow clients to use FunctionType as well as MethodType for now

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1985 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMake test more rigorous. It was never reading the non-scalar variables
Vikram S. Adve [Sun, 24 Mar 2002 13:22:04 +0000 (13:22 +0000)]
Make test more rigorous.  It was never reading the non-scalar variables
from memory!  Also, separate the writing and reading routines.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1983 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoinitialize sum variable
Chris Lattner [Sun, 24 Mar 2002 07:03:10 +0000 (07:03 +0000)]
initialize sum variable

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1982 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRefix bug: Add back method MachineCodeForInstruction::dropAllReferences.
Vikram S. Adve [Sun, 24 Mar 2002 03:58:02 +0000 (03:58 +0000)]
Refix bug: Add back method MachineCodeForInstruction::dropAllReferences.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1980 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix padding when allocating local variables on stack.
Vikram S. Adve [Sun, 24 Mar 2002 03:57:38 +0000 (03:57 +0000)]
Fix padding when allocating local variables on stack.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1979 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd methods to support type inquiry. Rename TmpInstruction values.
Vikram S. Adve [Sun, 24 Mar 2002 03:56:55 +0000 (03:56 +0000)]
Add methods to support type inquiry.  Rename TmpInstruction values.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1978 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMoved to directory Scalar/ and renamed.
Vikram S. Adve [Sun, 24 Mar 2002 03:55:06 +0000 (03:55 +0000)]
Moved to directory Scalar/ and renamed.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1977 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoDestroy MethodLiveVarInfo after register allocation.
Vikram S. Adve [Sun, 24 Mar 2002 03:54:03 +0000 (03:54 +0000)]
Destroy MethodLiveVarInfo after register allocation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1976 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoUse deterministic iterator for SchedGraphs. This is actually not
Vikram S. Adve [Sun, 24 Mar 2002 03:53:03 +0000 (03:53 +0000)]
Use deterministic iterator for SchedGraphs.  This is actually not
useful right now when we only do local scheduling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1975 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoBug fix: nextToTry was not being initialized in one case.
Vikram S. Adve [Sun, 24 Mar 2002 03:46:15 +0000 (03:46 +0000)]
Bug fix: nextToTry was not being initialized in one case.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1974 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd option to disable scheduling.
Vikram S. Adve [Sun, 24 Mar 2002 03:45:35 +0000 (03:45 +0000)]
Add option to disable scheduling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1973 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd option to disable scheduling.
Vikram S. Adve [Sun, 24 Mar 2002 03:44:55 +0000 (03:44 +0000)]
Add option to disable scheduling.
Destroy live-variable information after scheduling so it is
recomputed before later phases (e.g., reg. allocation).
Use deterministic iterator to enumerate sched graphs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1972 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMinor changes.
Vikram S. Adve [Sun, 24 Mar 2002 03:40:59 +0000 (03:40 +0000)]
Minor changes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1971 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRe-fix bug: Put back MachineCodeForInstruction::dropAllReferences.
Vikram S. Adve [Sun, 24 Mar 2002 03:40:11 +0000 (03:40 +0000)]
Re-fix bug: Put back MachineCodeForInstruction::dropAllReferences.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1970 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix padding for variables allocated on stack.
Vikram S. Adve [Sun, 24 Mar 2002 03:39:26 +0000 (03:39 +0000)]
Fix padding for variables allocated on stack.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1969 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMajor overhaul to FoldGetElemPtr to handle mixed array and struct refs.
Vikram S. Adve [Sun, 24 Mar 2002 03:37:53 +0000 (03:37 +0000)]
Major overhaul to FoldGetElemPtr to handle mixed array and struct refs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1968 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoUse deterministic iterator for treeRoots.
Vikram S. Adve [Sun, 24 Mar 2002 03:36:52 +0000 (03:36 +0000)]
Use deterministic iterator for treeRoots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1967 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoBug re-fix: put back MachineCodeForInstruction::get(*I).dropAllReferences().
Vikram S. Adve [Sun, 24 Mar 2002 03:35:16 +0000 (03:35 +0000)]
Bug re-fix: put back MachineCodeForInstruction::get(*I).dropAllReferences().
Also re-enable instr. scheduling pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1966 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoChange latencies for Load, Store and Branch instructions.
Vikram S. Adve [Sun, 24 Mar 2002 03:33:53 +0000 (03:33 +0000)]
Change latencies for Load, Store and Branch instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1965 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMajor enhancements to how array and structure indices are handled.
Vikram S. Adve [Sun, 24 Mar 2002 03:33:02 +0000 (03:33 +0000)]
Major enhancements to how array and structure indices are handled.
Improve checking for constants in Multiply.
Simpler method to keep track of when a node is folded into its parent.
Several other bug fixes.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1964 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoChange treeRoots data structure to make enumeration deterministic.
Vikram S. Adve [Sun, 24 Mar 2002 03:25:17 +0000 (03:25 +0000)]
Change treeRoots data structure to make enumeration deterministic.
Also, add a flag to marked nodes that do not need code because they
have been folded into the user (parent in the BURG tree).

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1963 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoChange treeRoots data structure to make enumeration deterministic.
Vikram S. Adve [Sun, 24 Mar 2002 03:24:00 +0000 (03:24 +0000)]
Change treeRoots data structure to make enumeration deterministic.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1962 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMajor overhaul to support arbitrary mixed array and structure indices.
Vikram S. Adve [Sun, 24 Mar 2002 03:21:18 +0000 (03:21 +0000)]
Major overhaul to support arbitrary mixed array and structure indices.
Also moved to the Scalar/ directory and renamed to "MultiDim".

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1961 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRename pass to DecomposeMultiDimRefs.
Vikram S. Adve [Sun, 24 Mar 2002 03:19:54 +0000 (03:19 +0000)]
Rename pass to DecomposeMultiDimRefs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1960 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix out-of-date name.
Vikram S. Adve [Sun, 24 Mar 2002 03:18:49 +0000 (03:18 +0000)]
Fix out-of-date name.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1959 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRegression tests for DecomposeMultiDimRefs pass.
Vikram S. Adve [Sun, 24 Mar 2002 03:17:16 +0000 (03:17 +0000)]
Regression tests for DecomposeMultiDimRefs pass.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1958 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRename Method to Function
Chris Lattner [Sat, 23 Mar 2002 22:51:58 +0000 (22:51 +0000)]
Rename Method to Function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1957 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove extranous forward decl
Chris Lattner [Sat, 23 Mar 2002 22:48:21 +0000 (22:48 +0000)]
Remove extranous forward decl

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1956 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove unneccesary forward definitions
Chris Lattner [Sat, 23 Mar 2002 22:48:07 +0000 (22:48 +0000)]
Remove unneccesary forward definitions

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1955 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd transition header file
Chris Lattner [Sat, 23 Mar 2002 22:47:43 +0000 (22:47 +0000)]
Add transition header file

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1954 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoUpdate documentation, rename Method to Function, move typedef to Value.h for now.
Chris Lattner [Sat, 23 Mar 2002 22:47:28 +0000 (22:47 +0000)]
Update documentation, rename Method to Function, move typedef to Value.h for now.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1953 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoChange Method to Function
Chris Lattner [Sat, 23 Mar 2002 22:46:51 +0000 (22:46 +0000)]
Change Method to Function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1952 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd transition typedef to Function
Chris Lattner [Sat, 23 Mar 2002 21:59:53 +0000 (21:59 +0000)]
Add transition typedef to Function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1951 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew pass to convert Convert multi-dimensional
Vikram S. Adve [Sat, 23 Mar 2002 20:46:18 +0000 (20:46 +0000)]
New pass to convert Convert multi-dimensional
array references into 1-D references.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1950 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMoved to Scalar/ directory.
Vikram S. Adve [Sat, 23 Mar 2002 20:44:37 +0000 (20:44 +0000)]
Moved to Scalar/ directory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1949 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew pass to decompose multi-dimensional array references into
Vikram S. Adve [Sat, 23 Mar 2002 20:43:39 +0000 (20:43 +0000)]
New pass to decompose multi-dimensional array references into
a sequence of 1-D references, using a sequence of getElementPtrs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1948 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove compilation of __main because we now link -lgcc into programs
Chris Lattner [Fri, 22 Mar 2002 19:13:47 +0000 (19:13 +0000)]
Remove compilation of __main because we now link -lgcc into programs

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1947 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd an assertion that would hopefully catch a problem that was tripping
Chris Lattner [Fri, 22 Mar 2002 18:01:58 +0000 (18:01 +0000)]
Add an assertion that would hopefully catch a problem that was tripping
cameron up

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1944 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix bug test/Regression/Transforms/LevelRaise/2002-03-21-MissedRaise3.ll
Chris Lattner [Thu, 21 Mar 2002 23:02:37 +0000 (23:02 +0000)]
Fix bug test/Regression/Transforms/LevelRaise/2002-03-21-MissedRaise3.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1943 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew testcase
Chris Lattner [Thu, 21 Mar 2002 23:00:48 +0000 (23:00 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1942 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix test/Regression/Transforms/LevelRaise/2002-03-21-MissedRaise2.ll
Chris Lattner [Thu, 21 Mar 2002 22:39:59 +0000 (22:39 +0000)]
Fix test/Regression/Transforms/LevelRaise/2002-03-21-MissedRaise2.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1941 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew testcase
Chris Lattner [Thu, 21 Mar 2002 22:39:43 +0000 (22:39 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1940 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* AllocationInst ctor moved here from iMemory.h
Chris Lattner [Thu, 21 Mar 2002 22:37:48 +0000 (22:37 +0000)]
* AllocationInst ctor moved here from iMemory.h
* AllocationInst now always has an array size operand

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1939 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago* Make AllocationInst ctor protected
Chris Lattner [Thu, 21 Mar 2002 22:37:01 +0000 (22:37 +0000)]
* Make AllocationInst ctor protected
* Move AllocationInst ctor to iMemory.cpp
* AllocationInst's always have one operand, even if it is a uint 1

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1938 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRerun test if opt gets changed
Chris Lattner [Thu, 21 Mar 2002 21:29:47 +0000 (21:29 +0000)]
Rerun test if opt gets changed

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1937 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRun all testcases
Chris Lattner [Thu, 21 Mar 2002 21:24:19 +0000 (21:24 +0000)]
Run all testcases

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1936 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoBuild LevelRaise subdirectory
Chris Lattner [Thu, 21 Mar 2002 21:24:13 +0000 (21:24 +0000)]
Build LevelRaise subdirectory

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1935 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd a debugging option to gccas to cause it to not do level raise or anything
Chris Lattner [Thu, 21 Mar 2002 21:21:50 +0000 (21:21 +0000)]
Add a debugging option to gccas to cause it to not do level raise or anything
after it.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1934 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix test/Regression/Other/2002-03-21-LevelRaiseMiss.ll
Chris Lattner [Thu, 21 Mar 2002 21:21:13 +0000 (21:21 +0000)]
Fix test/Regression/Other/2002-03-21-LevelRaiseMiss.ll

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1933 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoTestcase for a missed level raise opportunity
Chris Lattner [Thu, 21 Mar 2002 21:20:04 +0000 (21:20 +0000)]
Testcase for a missed level raise opportunity

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1932 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoMake ConvertableToGEP handle cases where the user is indexing into the
Chris Lattner [Thu, 21 Mar 2002 06:27:20 +0000 (06:27 +0000)]
Make ConvertableToGEP handle cases where the user is indexing into the
first element of a structure type.  Before this would not be handled because
getStructOffset would either stop immediately (because StopEarly was true
and Offset = 0), or blast past the level we wanted.

Now ConvertableToGEP steps down through the type one level at a time, checking
the Offset and Scale conditions at each step

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1931 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoImplement the new InsertInstBeforeInst function
Chris Lattner [Thu, 21 Mar 2002 06:24:00 +0000 (06:24 +0000)]
Implement the new InsertInstBeforeInst function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1930 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix the: test/Regression/Other/2002-03-20-LevelRaiseCrash.ll bug. It turned
Chris Lattner [Thu, 21 Mar 2002 06:22:23 +0000 (06:22 +0000)]
Fix the: test/Regression/Other/2002-03-20-LevelRaiseCrash.ll bug.  It turned
out that almost always the result of the add was the same as the GEP that
would be generated.  In this case, however, it wasn't, so bad things happened.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1929 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoFix bug in testcase
Chris Lattner [Thu, 21 Mar 2002 06:19:43 +0000 (06:19 +0000)]
Fix bug in testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1928 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoDeclare the new InsertInstBeforeInst function
Chris Lattner [Thu, 21 Mar 2002 06:15:53 +0000 (06:15 +0000)]
Declare the new InsertInstBeforeInst function

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1927 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoRemove a misguided API extension
Chris Lattner [Thu, 21 Mar 2002 05:46:43 +0000 (05:46 +0000)]
Remove a misguided API extension

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1926 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew testcase for YALRB (yet another level raise bug)
Chris Lattner [Thu, 21 Mar 2002 05:39:20 +0000 (05:39 +0000)]
New testcase for YALRB (yet another level raise bug)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1925 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAdd an assertion to catch a misuse of replaceAllUsesWith
Chris Lattner [Thu, 21 Mar 2002 05:38:15 +0000 (05:38 +0000)]
Add an assertion to catch a misuse of replaceAllUsesWith

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1924 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoCheckin testcase that was just sitting in my tree. Looks like backreferences
Chris Lattner [Thu, 21 Mar 2002 05:35:11 +0000 (05:35 +0000)]
Checkin testcase that was just sitting in my tree.  Looks like backreferences
have some problem in the parser, oh joy.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1923 91177308-0d34-0410-b5e6-96231b3b80d8

22 years ago1. Fix bug test/Regression/Other/2002-03-20-LevelRaiseBadCodegen.ll
Chris Lattner [Thu, 21 Mar 2002 03:04:38 +0000 (03:04 +0000)]
1. Fix bug test/Regression/Other/2002-03-20-LevelRaiseBadCodegen.ll
2. Allow negative scales in ConvertableToGEP, so that this loop from
   alloc_tree in the Olden health benchmark is correctly raised:

       for (i = 3; i >= 0; i--)
         fval[i] = alloc_tree(level - 1, label*4 + i + 1, new);

   Stepping through the array backwards caused a negative scale.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1922 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNamespace qualify debugging code
Chris Lattner [Thu, 21 Mar 2002 03:02:07 +0000 (03:02 +0000)]
Namespace qualify debugging code

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1921 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew testcase
Chris Lattner [Thu, 21 Mar 2002 03:01:14 +0000 (03:01 +0000)]
New testcase

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1920 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoAllow implementation of all HANDLE_*_INST macros at once by defining HANDLE_INST
Chris Lattner [Tue, 19 Mar 2002 05:51:18 +0000 (05:51 +0000)]
Allow implementation of all HANDLE_*_INST macros at once by defining HANDLE_INST

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1919 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoNew pass to convert Convert multi-dimensional
Vikram S. Adve [Tue, 19 Mar 2002 02:10:34 +0000 (02:10 +0000)]
New pass to convert Convert multi-dimensional
array references into 1-D references.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1918 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoBig bug fix: killed uses were being inserted instead of erased!
Vikram S. Adve [Tue, 19 Mar 2002 00:59:08 +0000 (00:59 +0000)]
Big bug fix: killed uses were being inserted instead of erased!
Also added a set of debug options.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1917 91177308-0d34-0410-b5e6-96231b3b80d8

22 years agoInitial checkin of InstVisitor class
Chris Lattner [Mon, 18 Mar 2002 19:07:42 +0000 (19:07 +0000)]
Initial checkin of InstVisitor class

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1916 91177308-0d34-0410-b5e6-96231b3b80d8