Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								9c40c28926 
								
							 
						 
						
							
							
								
								Rationalize the names of passes that print information:  
							
							 
							
							... 
							
							
							
							-callgraph => print-callgraph
    -callscc   => print-callgraph-sccs
    -cfgscc    => print-cfg-sccs
    -externalfnconstants => print-externalfnconstants
    -print               => print-function
    -print-alias-sets (no change)
    -print-callgraph     => dot-callgraph
    -print-cfg           => dot-cfg
    -print-cfg-only      => dot-cfg-only
    -print-dom-info (no change)
    -printm              => print-module
    -printusedtypes      => print-used-types
llvm-svn: 56487 
							
						 
						
							2008-09-23 12:47:39 +00:00  
						
					 
				
					
						
							
							
								 
								Oscar Fuentes
							
						 
						
							 
							
							
							
							
								
							
							
								a229b3c9a7 
								
							 
						 
						
							
							
								
								Initial support for the CMake build system.  
							
							 
							
							... 
							
							
							
							llvm-svn: 56419 
							
						 
						
							2008-09-22 01:08:49 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								9ddb3145ae 
								
							 
						 
						
							
							
								
								Fix PR2792: treat volatile loads as writing memory somewhere.  
							
							 
							
							... 
							
							
							
							Treat stores as reading memory, just to play safe.
llvm-svn: 56188 
							
						 
						
							2008-09-13 12:45:50 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								06dbb126e6 
								
							 
						 
						
							
							
								
								Rather than marking all internal globals "Ref"  
							
							 
							
							... 
							
							
							
							when a readonly declaration is called, set a
flag.  This is faster and uses less memory.
In theory it is less accurate, because before
only those internal globals that were read
by someone were being marked "Ref", but now
all are.  But in practice, thanks to other
passes, all internal globals of the kind
considered here will be both read and stored
to: those only read will have been turned
into constants, and those only stored to will
have been deleted.
llvm-svn: 56143 
							
						 
						
							2008-09-12 07:29:58 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								d4133ac315 
								
							 
						 
						
							
							
								
								Intrinsics don't touch internal global variables  
							
							 
							
							... 
							
							
							
							(unless passed one via a parameter), even if they
are IntrWriteMem.
llvm-svn: 56115 
							
						 
						
							2008-09-11 19:35:55 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								e30b36fe37 
								
							 
						 
						
							
							
								
								Intrinsics don't read these kinds of global  
							
							 
							
							... 
							
							
							
							variables.
llvm-svn: 56105 
							
						 
						
							2008-09-11 15:43:12 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								e5579930db 
								
							 
						 
						
							
							
								
								Simplify this some more.  No functionality change.  
							
							 
							
							... 
							
							
							
							llvm-svn: 56003 
							
						 
						
							2008-09-09 19:56:34 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								d7ba10c31b 
								
							 
						 
						
							
							
								
								Optimization suggested by Matthijs Kooijman.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55988 
							
						 
						
							2008-09-09 13:44:24 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								c189e79440 
								
							 
						 
						
							
							
								
								Correct callgraph construction.  It has two problems:  
							
							 
							
							... 
							
							
							
							(1) code left over from the days of ConstantPointerRef:
if a use of a function is a GlobalValue then that is
not considered a reason to add an edge from the external
node, even though the use may be as an initializer for
an externally visible global!  There might be some point
to this behaviour when the use is by an alias (though the
code predated aliases by some centuries), but I think
PR2782 is a better way of handling that.  (2) If function
F calls function G, and also G is a parameter to the
call, then an F->G edge is not added to the callgraph.
While this doesn't seem to matter much, adding such an
edge makes the callgraph more regular.
In addition, the new code should be faster as well as
simpler.
llvm-svn: 55987 
							
						 
						
							2008-09-09 12:40:47 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								a9de91e066 
								
							 
						 
						
							
							
								
								Didn't mean to commit this change to how the  
							
							 
							
							... 
							
							
							
							callgraph is printed.
llvm-svn: 55912 
							
						 
						
							2008-09-08 16:04:03 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								46911f1271 
								
							 
						 
						
							
							
								
								Reapply 55859.  This doesn't change anything as  
							
							 
							
							... 
							
							
							
							long as the callgraph is correct.  It checks
for wrong callgraphs more strictly.
llvm-svn: 55894 
							
						 
						
							2008-09-08 11:05:51 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								95c2a7848a 
								
							 
						 
						
							
							
								
								When PruneEH turned an invoke into an ordinary  
							
							 
							
							... 
							
							
							
							call (thus changing the call site) it didn't
inform the callgraph about this.  But the
call site does matter - as shown by the testcase,
the callgraph become invalid after the inliner
ran (with an edge between two functions simply
missing), resulting in wrong deductions by
GlobalsModRef.
llvm-svn: 55872 
							
						 
						
							2008-09-06 17:19:29 +00:00  
						
					 
				
					
						
							
							
								 
								Owen Anderson
							
						 
						
							 
							
							
							
							
								
							
							
								1dd2e40521 
								
							 
						 
						
							
							
								
								Revert r55859.  This is breaking the build in the abscence of its companion commit.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55865 
							
						 
						
							2008-09-05 23:36:01 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								9e23602849 
								
							 
						 
						
							
							
								
								Delete the removeCallEdgeTo callgraph method,  
							
							 
							
							... 
							
							
							
							because it does not maintain a correct list
of callsites.  I discovered (see following
commit) that the inliner will create a wrong
callgraph if it is fed a callgraph with
correct edges but incorrect callsites.  These
were created by Prune-EH, and while it wasn't
done via removeCallEdgeTo, it could have been
done via removeCallEdgeTo, which is an accident
waiting to happen.  Use removeCallEdgeFor
instead.
llvm-svn: 55859 
							
						 
						
							2008-09-05 21:43:04 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								21a57993dc 
								
							 
						 
						
							
							
								
								Neaten this up a bit.  No functionality change.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55789 
							
						 
						
							2008-09-04 19:16:20 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								a79db30d28 
								
							 
						 
						
							
							
								
								Tidy up several unbeseeming casts from pointer to intptr_t.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55779 
							
						 
						
							2008-09-04 17:05:41 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								ee088a7093 
								
							 
						 
						
							
							
								
								If a SCC has a node without a function, then the SCC  
							
							 
							
							... 
							
							
							
							analysis would bail out without removing function
records for other members of the SCC (which may exist
if those functions read or wrote global variables).
Since these are initialized to "readnone", this
resulted in incorrect alias analysis results.
llvm-svn: 55714 
							
						 
						
							2008-09-03 19:37:16 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								e74d7502d2 
								
							 
						 
						
							
							
								
								Fix maxo bado thinko.  
							
							 
							
							... 
							
							
							
							llvm-svn: 55700 
							
						 
						
							2008-09-03 16:10:55 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								0eca0571f8 
								
							 
						 
						
							
							
								
								Since onlyReadsMemory returns true if in fact  
							
							 
							
							... 
							
							
							
							doesNotAccessMemory, check doesNotAccessMemory
first, since otherwise functions may be
marked readonly rather than readnone.
llvm-svn: 55697 
							
						 
						
							2008-09-03 15:31:24 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								42c644ef03 
								
							 
						 
						
							
							
								
								Cleanup GlobalsModRef a bit.  When analysing the  
							
							 
							
							... 
							
							
							
							callgraph, when one member of a SCC calls another
then the analysis would drop to mod-ref because
there is (usually) no function info for the callee
yet; fix this.  Teach the analysis about function
attributes, in particular the readonly attribute
(which requires being careful about globals).
llvm-svn: 55696 
							
						 
						
							2008-09-03 12:55:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								be1309058a 
								
							 
						 
						
							
							
								
								Don't use the result of WriteAsOperand or WriteTypeSymbolic.  
							
							 
							
							... 
							
							
							
							llvm-svn: 54977 
							
						 
						
							2008-08-19 04:42:37 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4c493d9a58 
								
							 
						 
						
							
							
								
								Don't call getAnalysisUsage unless -debug-pass is enabled.  This speeds  
							
							 
							
							... 
							
							
							
							up the passmgr by avoiding useless work.
llvm-svn: 54528 
							
						 
						
							2008-08-08 15:14:09 +00:00  
						
					 
				
					
						
							
							
								 
								Matthijs Kooijman
							
						 
						
							 
							
							
							
							
								
							
							
								2353f35989 
								
							 
						 
						
							
							
								
								Replace two manual loops with calls to CallSite::hasArguments (no functional changes).  
							
							 
							
							... 
							
							
							
							llvm-svn: 51947 
							
						 
						
							2008-06-04 16:57:50 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								698348dfac 
								
							 
						 
						
							
							
								
								Fix some constructs that gcc-4.4 warns about.  
							
							 
							
							... 
							
							
							
							llvm-svn: 51591 
							
						 
						
							2008-05-27 11:50:51 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								8830714bff 
								
							 
						 
						
							
							
								
								Use isSingleValueType instead of isFirstClassType to  
							
							 
							
							... 
							
							
							
							exclude struct and array types.
llvm-svn: 51452 
							
						 
						
							2008-05-22 23:43:22 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								d78c400b5b 
								
							 
						 
						
							
							
								
								Clean up the use of static and anonymous namespaces. This turned up  
							
							 
							
							... 
							
							
							
							several things that were neither in an anonymous namespace nor static
but not intended to be global.
llvm-svn: 51017 
							
						 
						
							2008-05-13 00:00:25 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								a8b7e78f54 
								
							 
						 
						
							
							
								
								Remove uses of llvm/System/IncludeFile.h that are no longer needed.  
							
							 
							
							... 
							
							
							
							llvm-svn: 50695 
							
						 
						
							2008-05-06 01:32:53 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								ab8cacee2d 
								
							 
						 
						
							
							
								
								Add assert.  
							
							 
							
							... 
							
							
							
							llvm-svn: 50596 
							
						 
						
							2008-05-02 22:13:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cc9709cff4 
								
							 
						 
						
							
							
								
								add a new CallGraphNode::removeCallEdgeFor method, tidy some comments.  
							
							 
							
							... 
							
							
							
							llvm-svn: 49617 
							
						 
						
							2008-04-13 19:41:25 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Berlin
							
						 
						
							 
							
							
							
							
								
							
							
								b646062ad5 
								
							 
						 
						
							
							
								
								Fix PR 2169.  
							
							 
							
							... 
							
							
							
							llvm-svn: 49339 
							
						 
						
							2008-04-07 14:20:50 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								9988569af8 
								
							 
						 
						
							
							
								
								Don't include <map> in Pass.h, which doesn't need it. This requires  
							
							 
							
							... 
							
							
							
							adding <map> to many files that actually do need it.
llvm-svn: 48667 
							
						 
						
							2008-03-21 23:51:57 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								1a3ebe36f7 
								
							 
						 
						
							
							
								
								enable -analyze for andersens  
							
							 
							
							... 
							
							
							
							llvm-svn: 48601 
							
						 
						
							2008-03-20 15:36:44 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								80e43fa744 
								
							 
						 
						
							
							
								
								Restore isCFGOnly property of various analysis passes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 48579 
							
						 
						
							2008-03-20 02:25:21 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								718da668ab 
								
							 
						 
						
							
							
								
								PassInfo keep tracks whether a pass is an analysis pass or not.  
							
							 
							
							... 
							
							
							
							llvm-svn: 48554 
							
						 
						
							2008-03-19 21:56:59 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								af75ab8130 
								
							 
						 
						
							
							
								
								Do not use virtual function to identify an analysis pass.  
							
							 
							
							... 
							
							
							
							llvm-svn: 48520 
							
						 
						
							2008-03-19 00:48:41 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Berlin
							
						 
						
							 
							
							
							
							
								
							
							
								5fef9aea12 
								
							 
						 
						
							
							
								
								Fix PR 2160 by making sure arguments to external functions get marked as pointing to anything  
							
							 
							
							... 
							
							
							
							llvm-svn: 48509 
							
						 
						
							2008-03-18 22:22:53 +00:00  
						
					 
				
					
						
							
							
								 
								Scott Michel
							
						 
						
							 
							
							
							
							
								
							
							
								08ef1b2bdb 
								
							 
						 
						
							
							
								
								Dial down gcc's warnings: don't use 0UL when 0U suffices (and when the  
							
							 
							
							... 
							
							
							
							variables and methods themselves only use unsigned.)
llvm-svn: 48492 
							
						 
						
							2008-03-18 16:55:06 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								864970e9b6 
								
							 
						 
						
							
							
								
								Identify Analysis pass.  
							
							 
							
							... 
							
							
							
							Do not run analysis pass again if analysis info is still available.
This fixes PR1441.
llvm-svn: 48476 
							
						 
						
							2008-03-18 00:39:19 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Berlin
							
						 
						
							 
							
							
							
							
								
							
							
								c3d98074a9 
								
							 
						 
						
							
							
								
								Add Hybrid Cycle Detection to Andersen's analysis.  
							
							 
							
							... 
							
							
							
							Patch by Curtis Dunham.
llvm-svn: 47959 
							
						 
						
							2008-03-05 19:31:47 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								7bb51dfbb1 
								
							 
						 
						
							
							
								
								De-tabify.  
							
							 
							
							... 
							
							
							
							llvm-svn: 47598 
							
						 
						
							2008-02-26 10:51:52 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								d723b13f14 
								
							 
						 
						
							
							
								
								Change a C-style cast to const_cast, to avoid a -Wcast-qual warning.  
							
							 
							
							... 
							
							
							
							llvm-svn: 47437 
							
						 
						
							2008-02-21 17:33:24 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								579f07135a 
								
							 
						 
						
							
							
								
								Unbreak build with gcc 4.3: provide missed includes and silence most annoying warnings.  
							
							 
							
							... 
							
							
							
							llvm-svn: 47367 
							
						 
						
							2008-02-20 11:08:44 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f3ebc3f3d2 
								
							 
						 
						
							
							
								
								Remove attribution from file headers, per discussion on llvmdev.  
							
							 
							
							... 
							
							
							
							llvm-svn: 45418 
							
						 
						
							2007-12-29 20:36:04 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a087a8d2ce 
								
							 
						 
						
							
							
								
								remove attribution from lib Makefiles.  
							
							 
							
							... 
							
							
							
							llvm-svn: 45415 
							
						 
						
							2007-12-29 20:09:26 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								8a332b235d 
								
							 
						 
						
							
							
								
								Add explicit keywords, and fix a minor typo that they uncovered.  
							
							 
							
							... 
							
							
							
							llvm-svn: 45034 
							
						 
						
							2007-12-14 15:41:34 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Berlin
							
						 
						
							 
							
							
							
							
								
							
							
								0af43a1895 
								
							 
						 
						
							
							
								
								Changes from Curtis Dunham implementing lazy cycle detection algorithm.  
							
							 
							
							... 
							
							
							
							Changes from me implementing different way of representing points-to anything.
Changes from me that improve slightly on LCD.
llvm-svn: 44895 
							
						 
						
							2007-12-12 00:37:04 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								38ef3a8ec7 
								
							 
						 
						
							
							
								
								Rather than having special rules like "intrinsics cannot  
							
							 
							
							... 
							
							
							
							throw exceptions", just mark intrinsics with the nounwind
attribute.  Likewise, mark intrinsics as readnone/readonly
and get rid of special aliasing logic (which didn't use
anything more than this anyway).
llvm-svn: 44544 
							
						 
						
							2007-12-03 20:06:50 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								68b6f50938 
								
							 
						 
						
							
							
								
								Integrate the readonly/readnone logic more deeply  
							
							 
							
							... 
							
							
							
							into alias analysis.  This meant updating the API
which now has versions of the getModRefBehavior,
doesNotAccessMemory and onlyReadsMemory methods
which take a callsite parameter.  These should be
used unless the callsite is not known, since in
general they can do a better job than the versions
that take a function.  Also, users should no longer
call the version of getModRefBehavior that takes
both a function and a callsite.  To reduce the
chance of misuse it is now protected.
llvm-svn: 44487 
							
						 
						
							2007-12-01 07:51:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								907703cecd 
								
							 
						 
						
							
							
								
								chain update requests properly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 44460 
							
						 
						
							2007-11-30 18:52:58 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								016547d226 
								
							 
						 
						
							
							
								
								Create nodes for inline asm so that we don't crash looking for the node later.  
							
							 
							
							... 
							
							
							
							llvm-svn: 44267 
							
						 
						
							2007-11-22 03:07:37 +00:00  
						
					 
				
					
						
							
							
								 
								Hartmut Kaiser
							
						 
						
							 
							
							
							
							
								
							
							
								1207cd6b1b 
								
							 
						 
						
							
							
								
								Silenced a VC++ warning.  
							
							 
							
							... 
							
							
							
							llvm-svn: 43374 
							
						 
						
							2007-10-25 23:49:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								18a9273e61 
								
							 
						 
						
							
							
								
								Add a new DenseSet abstraction.  
							
							 
							
							... 
							
							
							
							llvm-svn: 42474 
							
						 
						
							2007-09-30 00:47:20 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Berlin
							
						 
						
							 
							
							
							
							
								
							
							
								342181c51d 
								
							 
						 
						
							
							
								
								Switch to densemap rather than std::set  
							
							 
							
							... 
							
							
							
							llvm-svn: 42462 
							
						 
						
							2007-09-29 00:50:40 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Berlin
							
						 
						
							 
							
							
							
							
								
							
							
								a447de7065 
								
							 
						 
						
							
							
								
								Ignore redundant constraints  
							
							 
							
							... 
							
							
							
							llvm-svn: 42397 
							
						 
						
							2007-09-27 15:42:23 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								d40e795c19 
								
							 
						 
						
							
							
								
								Don't execute dump unless NDEBUG isn't defined.  
							
							 
							
							... 
							
							
							
							llvm-svn: 42280 
							
						 
						
							2007-09-24 22:43:48 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Berlin
							
						 
						
							 
							
							
							
							
								
							
							
								c82c9f078a 
								
							 
						 
						
							
							
								
								Comment fixups  
							
							 
							
							... 
							
							
							
							llvm-svn: 42279 
							
						 
						
							2007-09-24 22:20:45 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Berlin
							
						 
						
							 
							
							
							
							
								
							
							
								5d7136a1df 
								
							 
						 
						
							
							
								
								Implement offline variable substitution in order to reduce memory  
							
							 
							
							... 
							
							
							
							and time usage.
Fixup operator == to make this work, and add a resize method to DenseMap
so we can resize our hashtable once we know how big it should be.
llvm-svn: 42269 
							
						 
						
							2007-09-24 19:45:49 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Berlin
							
						 
						
							 
							
							
							
							
								
							
							
								90aaa1dcf7 
								
							 
						 
						
							
							
								
								Fix bug in andersen's related to test_and_set.  
							
							 
							
							... 
							
							
							
							Add operator == and != to SparseBitVector.
Simplify code for test_and_set
llvm-svn: 42018 
							
						 
						
							2007-09-16 23:59:53 +00:00  
						
					 
				
					
						
							
							
								 
								Daniel Berlin
							
						 
						
							 
							
							
							
							
								
							
							
								ffce584d1c 
								
							 
						 
						
							
							
								
								Rewrite of andersen's to be about 100x faster, cleaner, and begin to support field sensitivity  
							
							 
							
							... 
							
							
							
							llvm-svn: 42016 
							
						 
						
							2007-09-16 21:45:02 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								d305c404be 
								
							 
						 
						
							
							
								
								Do not overuse std::string.  Pass around char * directly.  
							
							 
							
							... 
							
							
							
							llvm-svn: 41001 
							
						 
						
							2007-08-10 18:29:32 +00:00  
						
					 
				
					
						
							
							
								 
								Dan Gohman
							
						 
						
							 
							
							
							
							
								
							
							
								34d442f274 
								
							 
						 
						
							
							
								
								More explicit keywords.  
							
							 
							
							... 
							
							
							
							llvm-svn: 40673 
							
						 
						
							2007-08-01 15:32:29 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								a273d1cd3a 
								
							 
						 
						
							
							
								
								Verify loop info.  
							
							 
							
							... 
							
							
							
							llvm-svn: 40062 
							
						 
						
							2007-07-19 18:02:32 +00:00  
						
					 
				
					
						
							
							
								 
								Duncan Sands
							
						 
						
							 
							
							
							
							
								
							
							
								60f28bff4c 
								
							 
						 
						
							
							
								
								Replace mysterious code causing a g++-4.2 warning  
							
							 
							
							... 
							
							
							
							with hopefully correct code that pleases g++-4.2.
llvm-svn: 40051 
							
						 
						
							2007-07-19 09:42:01 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								703de8fea8 
								
							 
						 
						
							
							
								
								CallGraphSCCPass manager may require other passes.  
							
							 
							
							... 
							
							
							
							Use schedulePass() to accomodate these requirement instead of directly
assigning a manager to new CallGraph PassManager.
llvm-svn: 37695 
							
						 
						
							2007-06-21 22:29:02 +00:00  
						
					 
				
					
						
							
							
								 
								Nick Lewycky
							
						 
						
							 
							
							
							
							
								
							
							
								e7da2d6ac3 
								
							 
						 
						
							
							
								
								Fix typo in comment.  
							
							 
							
							... 
							
							
							
							llvm-svn: 36873 
							
						 
						
							2007-05-06 13:37:16 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								8c78a0bff0 
								
							 
						 
						
							
							
								
								Drop 'const'  
							
							 
							
							... 
							
							
							
							llvm-svn: 36662 
							
						 
						
							2007-05-03 01:11:54 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								e95c6ad802 
								
							 
						 
						
							
							
								
								Use 'static const char' instead of 'static const int'.  
							
							 
							
							... 
							
							
							
							Due to darwin gcc bug, one version of darwin linker coalesces
static const int, which defauts PassID based pass identification.
llvm-svn: 36652 
							
						 
						
							2007-05-02 21:39:20 +00:00  
						
					 
				
					
						
							
							
								 
								Lauro Ramos Venancio
							
						 
						
							 
							
							
							
							
								
							
							
								41223586a2 
								
							 
						 
						
							
							
								
								Fix build error.  
							
							 
							
							... 
							
							
							
							llvm-svn: 36648 
							
						 
						
							2007-05-02 20:37:47 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								09f162ca6a 
								
							 
						 
						
							
							
								
								Do not use typeinfo to identify pass in pass manager.  
							
							 
							
							... 
							
							
							
							llvm-svn: 36632 
							
						 
						
							2007-05-01 21:15:47 +00:00  
						
					 
				
					
						
							
							
								 
								Anton Korobeynikov
							
						 
						
							 
							
							
							
							
								
							
							
								fb80151c42 
								
							 
						 
						
							
							
								
								Removed tabs everywhere except autogenerated & external files. Add make  
							
							 
							
							... 
							
							
							
							target for tabs checking.
llvm-svn: 36146 
							
						 
						
							2007-04-16 18:10:23 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								003a559633 
								
							 
						 
						
							
							
								
								Avoid constructing std::strings unless pass debugging is ON.  
							
							 
							
							... 
							
							
							
							llvm-svn: 34933 
							
						 
						
							2007-03-05 20:01:30 +00:00  
						
					 
				
					
						
							
							
								 
								Jeff Cohen
							
						 
						
							 
							
							
							
							
								
							
							
								b622c11f77 
								
							 
						 
						
							
							
								
								Unbreak VC++ build.  
							
							 
							
							... 
							
							
							
							llvm-svn: 34917 
							
						 
						
							2007-03-05 00:00:42 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								28349abeab 
								
							 
						 
						
							
							
								
								Make getPassManagerType() const.  
							
							 
							
							... 
							
							
							
							llvm-svn: 34669 
							
						 
						
							2007-02-27 15:00:39 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								f75727ab14 
								
							 
						 
						
							
							
								
								Make classes in anonymous namespaces use VISIBILITY_HIDDEN to help reduce  
							
							 
							
							... 
							
							
							
							LLVM's footprint and speed up linking.
llvm-svn: 33941 
							
						 
						
							2007-02-05 23:42:17 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								2341c22ec7 
								
							 
						 
						
							
							
								
								Changes to support making the shift instructions be true BinaryOperators.  
							
							 
							
							... 
							
							
							
							This feature is needed in order to support shifts of more than 255 bits
on large integer types.  This changes the syntax for llvm assembly to
make shl, ashr and lshr instructions look like a binary operator:
   shl i32 %X, 1
instead of
   shl i32 %X, i8 1
Additionally, this should help a few passes perform additional optimizations.
llvm-svn: 33776 
							
						 
						
							2007-02-02 02:16:23 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								b8a29bdde9 
								
							 
						 
						
							
							
								
								Dump function names when debug-pass=Executions is used.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33772 
							
						 
						
							2007-02-01 22:38:33 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								f7fea8adf3 
								
							 
						 
						
							
							
								
								Pretty print pass manager  
							
							 
							
							... 
							
							
							
							llvm-svn: 33766 
							
						 
						
							2007-02-01 22:09:37 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								5301e7c605 
								
							 
						 
						
							
							
								
								For PR1136: Rename GlobalVariable::isExternal as isDeclaration to avoid  
							
							 
							
							... 
							
							
							
							confusion with external linkage types.
llvm-svn: 33663 
							
						 
						
							2007-01-30 20:08:39 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								b64c433619 
								
							 
						 
						
							
							
								
								Use StartPassTimer() and StopPassManager()  
							
							 
							
							... 
							
							
							
							llvm-svn: 33640 
							
						 
						
							2007-01-29 23:29:54 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								5a4a315aed 
								
							 
						 
						
							
							
								
								Measure timings.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33627 
							
						 
						
							2007-01-29 20:08:03 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								6a47b3c655 
								
							 
						 
						
							
							
								
								Remove dead code.  
							
							 
							
							... 
							
							
							
							CallGraphSCCPass does not need to implement runOnModule().
It supports runOnSCC().
llvm-svn: 33516 
							
						 
						
							2007-01-26 01:08:18 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								020f4f2bea 
								
							 
						 
						
							
							
								
								Fix typo.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33467 
							
						 
						
							2007-01-23 21:55:17 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								1f8200b404 
								
							 
						 
						
							
							
								
								Add CallGraphSCCPass::assignPassManager().  
							
							 
							
							... 
							
							
							
							This enables CalLGraphPassManager.
llvm-svn: 33466 
							
						 
						
							2007-01-23 21:52:35 +00:00  
						
					 
				
					
						
							
							
								 
								Devang Patel
							
						 
						
							 
							
							
							
							
								
							
							
								48537a046c 
								
							 
						 
						
							
							
								
								Add CGPassManager.  
							
							 
							
							... 
							
							
							
							llvm-svn: 33309 
							
						 
						
							2007-01-17 21:45:01 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								266e42b312 
								
							 
						 
						
							
							
								
								For PR950:  
							
							 
							
							... 
							
							
							
							This patch removes the SetCC instructions and replaces them with the ICmp
and FCmp instructions. The SetCondInst instruction has been removed and
been replaced with ICmpInst and FCmpInst.
llvm-svn: 32751 
							
						 
						
							2006-12-23 06:05:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								57ef942306 
								
							 
						 
						
							
							
								
								eliminate static ctors from Statistics  
							
							 
							
							... 
							
							
							
							llvm-svn: 32697 
							
						 
						
							2006-12-19 22:30:33 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								a77f14265b 
								
							 
						 
						
							
							
								
								Added an automatic cast to "std::ostream*" etc. from OStream. We then can  
							
							 
							
							... 
							
							
							
							rework the hacks that had us passing OStream in. We pass in std::ostream*
instead, check for null, and then dispatch to the correct print() method.
llvm-svn: 32636 
							
						 
						
							2006-12-17 05:15:13 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								f3baad3ee1 
								
							 
						 
						
							
							
								
								Changed llvm_ostream et all to OStream. llvm_cerr, llvm_cout, llvm_null, are  
							
							 
							
							... 
							
							
							
							now cerr, cout, and NullStream resp.
llvm-svn: 32298 
							
						 
						
							2006-12-07 01:30:32 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								700b873130 
								
							 
						 
						
							
							
								
								Detemplatize the Statistic class.  The only type it is instantiated with  
							
							 
							
							... 
							
							
							
							is 'unsigned'.
llvm-svn: 32279 
							
						 
						
							2006-12-06 17:46:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6b2e9d97d1 
								
							 
						 
						
							
							
								
								Simplify code  
							
							 
							
							... 
							
							
							
							llvm-svn: 32270 
							
						 
						
							2006-12-06 06:35:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								dd23d3dd05 
								
							 
						 
						
							
							
								
								straighten out various memory ownership issues in the callgraph stuff.  
							
							 
							
							... 
							
							
							
							This fixes Regression/Other/2002-01-31-CallGraph.ll.
llvm-svn: 32237 
							
						 
						
							2006-12-05 19:46:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								baf6c54410 
								
							 
						 
						
							
							
								
								Add a comment and fix a memory leak.  Thanks to Vikram for pointing this out.  
							
							 
							
							... 
							
							
							
							llvm-svn: 32196 
							
						 
						
							2006-12-04 21:22:45 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								afd54eb8b6 
								
							 
						 
						
							
							
								
								Replacing std::iostreams with llvm iostreams. Some of these changes involve  
							
							 
							
							... 
							
							
							
							adding a temporary wrapper around the ostream to make it friendly to
functions expecting an LLVM stream. This should be fixed in the future.
llvm-svn: 31990 
							
						 
						
							2006-11-29 00:19:40 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								6c38f0bb07 
								
							 
						 
						
							
							
								
								For PR950:  
							
							 
							
							... 
							
							
							
							The long awaited CAST patch. This introduces 12 new instructions into LLVM
to replace the cast instruction. Corresponding changes throughout LLVM are
provided. This passes llvm-test, llvm/test, and SPEC CPUINT2000 with the
exception of 175.vpr which fails only on a slight floating point output
difference.
llvm-svn: 31931 
							
						 
						
							2006-11-27 01:05:10 +00:00  
						
					 
				
					
						
							
							
								 
								Bill Wendling
							
						 
						
							 
							
							
							
							
								
							
							
								4b1a04ac62 
								
							 
						 
						
							
							
								
								Replaced DEBUG(std::cerr with DOUT.  
							
							 
							
							... 
							
							
							
							llvm-svn: 31812 
							
						 
						
							2006-11-17 07:36:54 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								fdff938a7e 
								
							 
						 
						
							
							
								
								For PR950:  
							
							 
							
							... 
							
							
							
							This patch converts the old SHR instruction into two instructions,
AShr (Arithmetic) and LShr (Logical). The Shr instructions now are not
dependent on the sign of their operands.
llvm-svn: 31542 
							
						 
						
							2006-11-08 06:47:33 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								de46e48420 
								
							 
						 
						
							
							
								
								For PR786:  
							
							 
							
							... 
							
							
							
							Turn on -Wunused and -Wno-unused-parameter. Clean up most of the resulting
fall out by removing unused variables. Remaining warnings have to do with
unused functions (I didn't want to delete code without review) and unused
variables in generated code. Maintainers should clean up the remaining
issues when they see them. All changes pass DejaGnu tests and Olden.
llvm-svn: 31380 
							
						 
						
							2006-11-02 20:25:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								aba5e1ee97 
								
							 
						 
						
							
							
								
								Fix a bug pointed out by Zhongxing Xu  
							
							 
							
							... 
							
							
							
							llvm-svn: 30831 
							
						 
						
							2006-10-09 17:28:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								134ff353f9 
								
							 
						 
						
							
							
								
								Fixme is already done  
							
							 
							
							... 
							
							
							
							llvm-svn: 30685 
							
						 
						
							2006-10-01 22:46:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bfdd19bc01 
								
							 
						 
						
							
							
								
								Teach globalsmodref-aa to track scalar pointer global variables which point  
							
							 
							
							... 
							
							
							
							to unaliased allocations.  Use this information to disambiguate pointers loaded
from them.  This is a very common case, so it's worthwhile to handle efficiently.
This implements Analysis/GlobalsModRef/indirect-global.ll
llvm-svn: 30684 
							
						 
						
							2006-10-01 22:36:45 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								e7141c8be6 
								
							 
						 
						
							
							
								
								For PR387:  
							
							 
							
							... 
							
							
							
							Close out this long standing bug by removing the remaining overloaded
virtual functions in LLVM. The -Woverloaded-virtual option is now turned on.
llvm-svn: 29934 
							
						 
						
							2006-08-28 01:02:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								97c9f20c52 
								
							 
						 
						
							
							
								
								simplify AnalysisGroup registration, eliminating one typeid call.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29932 
							
						 
						
							2006-08-28 00:42:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c2d3d3112e 
								
							 
						 
						
							
							
								
								eliminate RegisterOpt.  It does the same thing as RegisterPass.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29925 
							
						 
						
							2006-08-27 22:42:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3c9b2420df 
								
							 
						 
						
							
							
								
								Eliminate RegisterAnalysis.  RegisterPass now does all that is necessary.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29921 
							
						 
						
							2006-08-27 22:30:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5de3b8b262 
								
							 
						 
						
							
							
								
								Change the callgraph representation to store the callsite along with the  
							
							 
							
							... 
							
							
							
							target CG node.  This allows the inliner to properly update the callgraph
when using the pruning inliner.  The pruning inliner may not copy over all
call sites from a callee to a caller, so the edges corresponding to those
call sites should not be copied over either.
This fixes PR827 and Transforms/Inline/2006-07-12-InlinePruneCGUpdate.ll
llvm-svn: 29120 
							
						 
						
							2006-07-12 18:29:36 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								f7300b2706 
								
							 
						 
						
							
							
								
								It was pointed out that DEBUG() is only available with -debug.  
							
							 
							
							... 
							
							
							
							llvm-svn: 29106 
							
						 
						
							2006-07-11 18:25:13 +00:00  
						
					 
				
					
						
							
							
								 
								Jim Laskey
							
						 
						
							 
							
							
							
							
								
							
							
								c3d341ea98 
								
							 
						 
						
							
							
								
								Ensure that dump calls that are associated with asserts are removed from  
							
							 
							
							... 
							
							
							
							non-debug build.
llvm-svn: 29105 
							
						 
						
							2006-07-11 17:58:07 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								be535661cc 
								
							 
						 
						
							
							
								
								For PR780:  
							
							 
							
							... 
							
							
							
							1. Fix the macros in IncludeFile.h to put everything in the llvm namespace
2. Replace the previous explicit mechanism in all the .h and .cpp files
   with the macros in IncludeFile.h
This gets us a consistent mechanism throughout LLVM for ensuring linkage.
Next step is to make sure its used in enough places.
llvm-svn: 28715 
							
						 
						
							2006-06-07 22:00:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								20a4da4dfd 
								
							 
						 
						
							
							
								
								Fix -pedantic warning  
							
							 
							
							... 
							
							
							
							llvm-svn: 28634 
							
						 
						
							2006-06-01 17:17:46 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								5861659a1e 
								
							 
						 
						
							
							
								
								Change from using a stub function to a stub variable for passing to the  
							
							 
							
							... 
							
							
							
							IncludeFile hack to ensure linkage of analysis passes. This works around
some -pedantic warnings about assigning an object to a function.
llvm-svn: 28621 
							
						 
						
							2006-06-01 07:02:51 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								c3cff44880 
								
							 
						 
						
							
							
								
								move calltarget to dsa  
							
							 
							
							... 
							
							
							
							llvm-svn: 28546 
							
						 
						
							2006-05-29 23:39:48 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								e465381401 
								
							 
						 
						
							
							
								
								Since there was interest on the mailing list, this is a utility pass that  
							
							 
							
							... 
							
							
							
							uses DSA to make find targets of calls.  It provides a very convinient
interface to DSA results to do things with indirect calls, such as
write a devirtualizer (which I have and may commit one of these days).
llvm-svn: 28545 
							
						 
						
							2006-05-29 22:58:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								aa2372562e 
								
							 
						 
						
							
							
								
								Patches to make the LLVM sources more -pedantic clean.  Patch provided  
							
							 
							
							... 
							
							
							
							by Anton Korobeynikov!  This is a step towards closing PR786.
llvm-svn: 28447 
							
						 
						
							2006-05-24 17:04:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bce2626d8a 
								
							 
						 
						
							
							
								
								updates for recent changes  
							
							 
							
							... 
							
							
							
							llvm-svn: 26481 
							
						 
						
							2006-03-03 01:21:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6806c02380 
								
							 
						 
						
							
							
								
								Add explicit iostream #includes  
							
							 
							
							... 
							
							
							
							llvm-svn: 25513 
							
						 
						
							2006-01-22 23:19:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								00ca8d2de8 
								
							 
						 
						
							
							
								
								Add a new CallGraph::getOrInsertFunction for clients to use when updating  
							
							 
							
							... 
							
							
							
							the callgraph.
llvm-svn: 25317 
							
						 
						
							2006-01-14 20:03:00 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bc351e171f 
								
							 
						 
						
							
							
								
								add a dump method to CallGraph  
							
							 
							
							... 
							
							
							
							llvm-svn: 25314 
							
						 
						
							2006-01-14 19:17:02 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								cfc60f3484 
								
							 
						 
						
							
							
								
								Remove unused inclusion of SymbolTable.h  
							
							 
							
							... 
							
							
							
							llvm-svn: 25170 
							
						 
						
							2006-01-10 03:48:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								be19877731 
								
							 
						 
						
							
							
								
								Separate the call graph implementation from its interface.  This implements  
							
							 
							
							... 
							
							
							
							the rough idea sketched out in http://nondot.org/sabre/LLVMNotes/CallGraphClass.txt ,
allowing new spiffy implementations of the callgraph interface to be built.
Many thanks to Saem Ghani for contributing this!
llvm-svn: 24944 
							
						 
						
							2005-12-22 06:07:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								90b0c99066 
								
							 
						 
						
							
							
								
								Remove this pass, it is not useful  
							
							 
							
							... 
							
							
							
							llvm-svn: 23949 
							
						 
						
							2005-10-24 02:35:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bde3845548 
								
							 
						 
						
							
							
								
								DONT_BUILD_RELINKED is gone and implied by BUILD_ARCHIVE now  
							
							 
							
							... 
							
							
							
							llvm-svn: 23940 
							
						 
						
							2005-10-24 02:26:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8c087e962c 
								
							 
						 
						
							
							
								
								Only build .a file versions of these libraries, instead of .a and .o versions.  
							
							 
							
							... 
							
							
							
							This should speed up build times.
llvm-svn: 23933 
							
						 
						
							2005-10-24 01:59:48 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b45e57c2dd 
								
							 
						 
						
							
							
								
								move this to the analyze tool  
							
							 
							
							... 
							
							
							
							llvm-svn: 23918 
							
						 
						
							2005-10-24 00:27:36 +00:00  
						
					 
				
					
						
							
							
								 
								Andrew Lenharth
							
						 
						
							 
							
							
							
							
								
							
							
								9144ec4764 
								
							 
						 
						
							
							
								
								core changes for varargs  
							
							 
							
							... 
							
							
							
							llvm-svn: 22254 
							
						 
						
							2005-06-18 18:34:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e25cfaee55 
								
							 
						 
						
							
							
								
								Malloc/Free have mod/ref effects.  Do not allow CSE of function calls that  
							
							 
							
							... 
							
							
							
							call malloc/free.  This fixes PR555.
llvm-svn: 21443 
							
						 
						
							2005-04-22 05:36:59 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								774511633d 
								
							 
						 
						
							
							
								
								Convert tabs to spaces  
							
							 
							
							... 
							
							
							
							llvm-svn: 21439 
							
						 
						
							2005-04-22 04:01:18 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								01808caded 
								
							 
						 
						
							
							
								
								Remove trailing whitespace  
							
							 
							
							... 
							
							
							
							llvm-svn: 21416 
							
						 
						
							2005-04-21 21:13:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7e0a534cba 
								
							 
						 
						
							
							
								
								do not crash when using -debug  
							
							 
							
							... 
							
							
							
							llvm-svn: 21092 
							
						 
						
							2005-04-05 01:12:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b919b21777 
								
							 
						 
						
							
							
								
								do not dereference an extra layer of pointers to determine if an external  
							
							 
							
							... 
							
							
							
							call can modify a memory location.  This fixes
test/Regression/Analysis/Andersens/modreftest.ll
llvm-svn: 21088 
							
						 
						
							2005-04-04 22:23:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								af4d93cd39 
								
							 
						 
						
							
							
								
								import all of the rest of the stubs that dsa uses for direct comparison  
							
							 
							
							... 
							
							
							
							llvm-svn: 20932 
							
						 
						
							2005-03-29 20:36:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4dba2ee974 
								
							 
						 
						
							
							
								
								learn about some more functions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 20929 
							
						 
						
							2005-03-29 20:04:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ca85130b0a 
								
							 
						 
						
							
							
								
								Fix a major problem with global variable initializers.  This could cause  
							
							 
							
							... 
							
							
							
							us to have stuff pointing to the null pointer, which makes no sense
(the null ptr is an ssa value, not the null object)
llvm-svn: 20922 
							
						 
						
							2005-03-29 17:21:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								dd94b2d01e 
								
							 
						 
						
							
							
								
								add some more functions, ignore setcc for constraints!  
							
							 
							
							... 
							
							
							
							llvm-svn: 20917 
							
						 
						
							2005-03-29 06:52:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7617e886c1 
								
							 
						 
						
							
							
								
								Handle "known" external calls context sensitively, add support for realloc  
							
							 
							
							... 
							
							
							
							and a couple of other functions that are important.
Handle aggregate undef values for gv initializers
llvm-svn: 20914 
							
						 
						
							2005-03-29 06:09:07 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								81b6d86a3a 
								
							 
						 
						
							
							
								
								Teach andersens that non-escaping memory cannot be mod/ref'd by external fn calls.  
							
							 
							
							... 
							
							
							
							llvm-svn: 20891 
							
						 
						
							2005-03-28 06:21:17 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								009585d2ac 
								
							 
						 
						
							
							
								
								Fix grammar  
							
							 
							
							... 
							
							
							
							llvm-svn: 20890 
							
						 
						
							2005-03-28 04:32:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a8ad8b2826 
								
							 
						 
						
							
							
								
								Make anders-aa much more precise by not being completely pessimistic about  
							
							 
							
							... 
							
							
							
							external functions.  Teach it about a few important ones.
llvm-svn: 20889 
							
						 
						
							2005-03-28 04:03:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								147f8b789c 
								
							 
						 
						
							
							
								
								wrap some long lines  
							
							 
							
							... 
							
							
							
							llvm-svn: 20884 
							
						 
						
							2005-03-27 22:03:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ea69f1f9e8 
								
							 
						 
						
							
							
								
								teach andersens about undef  
							
							 
							
							... 
							
							
							
							llvm-svn: 20881 
							
						 
						
							2005-03-27 18:58:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								aff85ac552 
								
							 
						 
						
							
							
								
								Simplify dead code into a fixme :)  
							
							 
							
							... 
							
							
							
							llvm-svn: 20800 
							
						 
						
							2005-03-24 02:41:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								85a1d92323 
								
							 
						 
						
							
							
								
								fix a compiler crash in runtime/libprofile  
							
							 
							
							... 
							
							
							
							llvm-svn: 20799 
							
						 
						
							2005-03-24 01:22:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6a3f5fd623 
								
							 
						 
						
							
							
								
								wrap a long line  
							
							 
							
							... 
							
							
							
							llvm-svn: 20797 
							
						 
						
							2005-03-23 23:51:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2a7358064e 
								
							 
						 
						
							
							
								
								If we are calling an external function, chain to another AA to potentially  
							
							 
							
							... 
							
							
							
							decide, don't just immediately give up.
This implements GlobalsModRef/chaining-analysis.ll
llvm-svn: 20796 
							
						 
						
							2005-03-23 23:49:47 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								531f9e92d4 
								
							 
						 
						
							
							
								
								This mega patch converts us from using Function::a{iterator|begin|end} to  
							
							 
							
							... 
							
							
							
							using Function::arg_{iterator|begin|end}.  Likewise Module::g* -> Module::global_*.
This patch is contributed by Gabor Greif, thanks!
llvm-svn: 20597 
							
						 
						
							2005-03-15 04:54:21 +00:00  
						
					 
				
					
						
							
							
								 
								Jeff Cohen
							
						 
						
							 
							
							
							
							
								
							
							
								cede1ce95a 
								
							 
						 
						
							
							
								
								Add even more missing createXxxPass functions.  
							
							 
							
							... 
							
							
							
							llvm-svn: 19402 
							
						 
						
							2005-01-08 22:01:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a12b5df616 
								
							 
						 
						
							
							
								
								Actually overload the virtual method.  This fixes  
							
							 
							
							... 
							
							
							
							Regression/Analysis/GlobalsModRef/purecse.ll.  Isn't this what the
-Woverload-whatever flag would warn about :)
llvm-svn: 19018 
							
						 
						
							2004-12-17 17:12:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								71d04bce55 
								
							 
						 
						
							
							
								
								Adjust to new alias analysis interfaces  
							
							 
							
							... 
							
							
							
							llvm-svn: 18957 
							
						 
						
							2004-12-15 07:22:13 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								5c132bc3af 
								
							 
						 
						
							
							
								
								For PR387:\  
							
							 
							
							... 
							
							
							
							Add getModRefInfo method to avoid overloaded virtuals
llvm-svn: 18601 
							
						 
						
							2004-12-07 08:11:24 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								9083936835 
								
							 
						 
						
							
							
								
								For PR387:\  
							
							 
							
							... 
							
							
							
							Make only one print method to avoid overloaded virtual warnings when \
compiled with -Woverloaded-virtual
llvm-svn: 18589 
							
						 
						
							2004-12-07 04:03:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1b4e78d9e6 
								
							 
						 
						
							
							
								
								Mission accomplished!  
							
							 
							
							... 
							
							
							
							llvm-svn: 17990 
							
						 
						
							2004-11-19 16:22:24 +00:00  
						
					 
				
					
						
							
							
								 
								Alkis Evlogimenos
							
						 
						
							 
							
							
							
							
								
							
							
								6bbc57ec12 
								
							 
						 
						
							
							
								
								Fix library name.  
							
							 
							
							... 
							
							
							
							llvm-svn: 17306 
							
						 
						
							2004-10-28 05:36:48 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								c1c320c335 
								
							 
						 
						
							
							
								
								We won't use automake  
							
							 
							
							... 
							
							
							
							llvm-svn: 17155 
							
						 
						
							2004-10-22 03:35:04 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								6a11a75f31 
								
							 
						 
						
							
							
								
								Initial automake generated Makefile template  
							
							 
							
							... 
							
							
							
							llvm-svn: 17136 
							
						 
						
							2004-10-18 23:55:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2978437b76 
								
							 
						 
						
							
							
								
								Add support  
							
							 
							
							... 
							
							
							
							llvm-svn: 17052 
							
						 
						
							2004-10-16 18:16:19 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								ace94df71f 
								
							 
						 
						
							
							
								
								Update to reflect changes in Makefile rules.  
							
							 
							
							... 
							
							
							
							llvm-svn: 16950 
							
						 
						
							2004-10-13 11:46:52 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								e2d1af8be0 
								
							 
						 
						
							
							
								
								Build both archive and relinked objects  
							
							 
							
							... 
							
							
							
							llvm-svn: 16892 
							
						 
						
							2004-10-10 22:17:39 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								b84cbf2725 
								
							 
						 
						
							
							
								
								Initial version of automake Makefile.am file.  
							
							 
							
							... 
							
							
							
							llvm-svn: 16885 
							
						 
						
							2004-10-10 20:43:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4f2cf030e8 
								
							 
						 
						
							
							
								
								'Pass' should now not be derived from by clients.  Instead, they should derive  
							
							 
							
							... 
							
							
							
							from ModulePass.  Instead of implementing Pass::run, then should implement
ModulePass::runOnModule.
llvm-svn: 16436 
							
						 
						
							2004-09-20 04:48:05 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								135419193e 
								
							 
						 
						
							
							
								
								Finegrainify namespacification  
							
							 
							
							... 
							
							
							
							'Pass' should now not be derived from by clients.  Instead, they should derive
from ModulePass.  Instead of implementing Pass::run, then should implement
ModulePass::runOnModule.
llvm-svn: 16434 
							
						 
						
							2004-09-20 04:44:31 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d6d99dfa3f 
								
							 
						 
						
							
							
								
								Fix a nasty iterator invalidation problem I introduced yesterday.  This  
							
							 
							
							... 
							
							
							
							unfortunately is the cause of a bunch of failures from tonight, and the
reason the tester is running so slow :(
llvm-svn: 16407 
							
						 
						
							2004-09-19 19:01:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								824a21868b 
								
							 
						 
						
							
							
								
								Add CallGraphNode::removeAnyCallEdgeTo method  
							
							 
							
							... 
							
							
							
							llvm-svn: 16398 
							
						 
						
							2004-09-18 21:34:34 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								85d5ccc006 
								
							 
						 
						
							
							
								
								When changing a function, make sure to update the CallGraphNode for the  
							
							 
							
							... 
							
							
							
							function, not just the CallGraph.
llvm-svn: 16388 
							
						 
						
							2004-09-18 00:27:20 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								e81c2aa42a 
								
							 
						 
						
							
							
								
								Implement new changeFunction method, nuke a never implemented one.  
							
							 
							
							... 
							
							
							
							llvm-svn: 16386 
							
						 
						
							2004-09-18 00:22:13 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								7c16caa336 
								
							 
						 
						
							
							
								
								Changes For Bug 352  
							
							 
							
							... 
							
							
							
							Move include/Config and include/Support into include/llvm/Config,
include/llvm/ADT and include/llvm/Support. From here on out, all LLVM
public header files must be under include/llvm/.
llvm-svn: 16137 
							
						 
						
							2004-09-01 22:55:40 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								12324753f2 
								
							 
						 
						
							
							
								
								Fix a bug that caused the pass to go into infinite loops on trivial testcases.  
							
							 
							
							... 
							
							
							
							This is fallout of the Bug 122 changes.
llvm-svn: 15811 
							
						 
						
							2004-08-16 05:38:02 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6b54110281 
								
							 
						 
						
							
							
								
								Add standard print/dump methods to CallGraph classes.  
							
							 
							
							... 
							
							
							
							llvm-svn: 15569 
							
						 
						
							2004-08-08 03:27:49 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								63b38bd2ed 
								
							 
						 
						
							
							
								
								Fix #includes of i*.h => Instructions.h as per PR403.  
							
							 
							
							... 
							
							
							
							llvm-svn: 15334 
							
						 
						
							2004-07-29 17:30:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								036d2b0c4d 
								
							 
						 
						
							
							
								
								nuke pointless -debug output  
							
							 
							
							... 
							
							
							
							llvm-svn: 15267 
							
						 
						
							2004-07-27 08:03:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b696462260 
								
							 
						 
						
							
							
								
								Fix conservative assumption, which was quite broken.  Also, notice that  
							
							 
							
							... 
							
							
							
							functions known to not access memory (like sin/cos) don't access memory! :)
llvm-svn: 15264 
							
						 
						
							2004-07-27 07:46:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3a353e84b7 
								
							 
						 
						
							
							
								
								Complete rewrite of this pass to be faster, use less memory, be easier to  
							
							 
							
							... 
							
							
							
							understand, and more accurate to boot!  This implements
GlobalModRef/purecse.ll over the previous impl.
llvm-svn: 15260 
							
						 
						
							2004-07-27 06:40:37 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								30d69a5af9 
								
							 
						 
						
							
							
								
								bug 122:  
							
							 
							
							... 
							
							
							
							- Replace ConstantPointerRef usage with GlobalValue usage
- Minimize redundant isa<GlobalValue> usage
- Correct isa<Constant> for GlobalValue subclass
llvm-svn: 14942 
							
						 
						
							2004-07-18 00:18:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3c42077c37 
								
							 
						 
						
							
							
								
								Fixes for PR341  
							
							 
							
							... 
							
							
							
							llvm-svn: 14843 
							
						 
						
							2004-07-15 02:31:46 +00:00  
						
					 
				
					
						
							
							
								 
								Reid Spencer
							
						 
						
							 
							
							
							
							
								
							
							
								eb04d9bcb4 
								
							 
						 
						
							
							
								
								Add #include <iostream> since Value.h does not #include it any more.  
							
							 
							
							... 
							
							
							
							llvm-svn: 14622 
							
						 
						
							2004-07-04 12:19:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								26dff501a4 
								
							 
						 
						
							
							
								
								Initial checkin of a simple mod/ref analysis for global variables.  This is  
							
							 
							
							... 
							
							
							
							still overly conservative and uses very simple data structures, but it is a
start, and allows elimination of a lot of loads.
llvm-svn: 14462 
							
						 
						
							2004-06-28 06:33:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								135fb4be7c 
								
							 
						 
						
							
							
								
								Moving to lib/Analysis/DataStructure  
							
							 
							
							... 
							
							
							
							llvm-svn: 14450 
							
						 
						
							2004-06-28 00:29:42 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f019e346f4 
								
							 
						 
						
							
							
								
								Fix header  
							
							 
							
							... 
							
							
							
							llvm-svn: 14394 
							
						 
						
							2004-06-25 04:24:22 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								44601805a6 
								
							 
						 
						
							
							
								
								File requires IPA, moved to lib/Analysis/IPA  
							
							 
							
							... 
							
							
							
							llvm-svn: 14330 
							
						 
						
							2004-06-22 19:04:53 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								c5300a4f04 
								
							 
						 
						
							
							
								
								File depends on MemoryDepAnalysis (DSA); moved to lib/Analysis/DataStructure  
							
							 
							
							... 
							
							
							
							llvm-svn: 14327 
							
						 
						
							2004-06-22 18:28:37 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								df6339bee7 
								
							 
						 
						
							
							
								
								Files depend on DSA, moved to lib/Analysis/DataStructure  
							
							 
							
							... 
							
							
							
							llvm-svn: 14326 
							
						 
						
							2004-06-22 18:13:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2738b7ea61 
								
							 
						 
						
							
							
								
								Add some notes so I can throw away one of my many todo lists.  
							
							 
							
							... 
							
							
							
							llvm-svn: 14046 
							
						 
						
							2004-06-05 20:12:36 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								75019ba397 
								
							 
						 
						
							
							
								
								Don't send random junk to CachedWriter's.  Also remove a cast that could be  
							
							 
							
							... 
							
							
							
							problematic when Type does not derive from Value.
llvm-svn: 14022 
							
						 
						
							2004-06-04 20:25:55 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								49cdc6b564 
								
							 
						 
						
							
							
								
								Minor efficiency gain: do 1 nlogn lookup instead of two  
							
							 
							
							... 
							
							
							
							Code cleanup
llvm-svn: 13875 
							
						 
						
							2004-05-28 05:36:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fc7509b7d4 
								
							 
						 
						
							
							
								
								Fix warnings about reaching end of non-void function  
							
							 
							
							... 
							
							
							
							llvm-svn: 13852 
							
						 
						
							2004-05-27 20:57:01 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5758134505 
								
							 
						 
						
							
							
								
								Add a simple implementation of Andersen's interprocedural pointer analysis  
							
							 
							
							... 
							
							
							
							llvm-svn: 13666 
							
						 
						
							2004-05-23 21:00:47 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								17fcb67a20 
								
							 
						 
						
							
							
								
								Fine grainify namespacification  
							
							 
							
							... 
							
							
							
							llvm-svn: 13436 
							
						 
						
							2004-05-09 06:22:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6942946132 
								
							 
						 
						
							
							
								
								Fix a problem with double freeing memory.  For some reason, CallGraph is not  
							
							 
							
							... 
							
							
							
							acting like a normal pass.  :(
llvm-svn: 13318 
							
						 
						
							2004-05-02 16:06:18 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								929291aabb 
								
							 
						 
						
							
							
								
								Plug a minor memory leak  
							
							 
							
							... 
							
							
							
							llvm-svn: 13317 
							
						 
						
							2004-05-02 07:31:34 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								7e66438579 
								
							 
						 
						
							
							
								
								Send text and numbers directly to CachedWriter's contained ostream.  
							
							 
							
							... 
							
							
							
							llvm-svn: 13243 
							
						 
						
							2004-04-28 18:52:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2d3a7a6ff0 
								
							 
						 
						
							
							
								
								Changes to fix up the inst_iterator to pass to boost iterator checks.  This  
							
							 
							
							... 
							
							
							
							patch was graciously contributed by Vladimir Prus.
llvm-svn: 13185 
							
						 
						
							2004-04-27 15:13:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								99504890b7 
								
							 
						 
						
							
							
								
								Pass the callgraph not the module  
							
							 
							
							... 
							
							
							
							llvm-svn: 13087 
							
						 
						
							2004-04-20 21:52:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8d0838130c 
								
							 
						 
						
							
							
								
								Add the ability for SCC passes to initialize and finalize themselves  
							
							 
							
							... 
							
							
							
							llvm-svn: 13084 
							
						 
						
							2004-04-20 21:30:06 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8b6db18ac3 
								
							 
						 
						
							
							
								
								Change the call graph class to have TWO external nodes, making call graph  
							
							 
							
							... 
							
							
							
							SCC passes much more useful.  In particular, this should fix the incredibly
stupid missed inlining opportunities that the inliner suffered from.
llvm-svn: 12860 
							
						 
						
							2004-04-12 05:36:32 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								96d3b0a6de 
								
							 
						 
						
							
							
								
								Make code more readable.  
							
							 
							
							... 
							
							
							
							llvm-svn: 12305 
							
						 
						
							2004-03-12 00:58:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								06834e6d7b 
								
							 
						 
						
							
							
								
								getNodes() is gone  
							
							 
							
							... 
							
							
							
							llvm-svn: 11166 
							
						 
						
							2004-02-07 23:57:26 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a9450bd4ac 
								
							 
						 
						
							
							
								
								Cleanups  
							
							 
							
							... 
							
							
							
							llvm-svn: 9907 
							
						 
						
							2003-11-12 00:40:34 +00:00  
						
					 
				
					
						
							
							
								 
								Brian Gaeke
							
						 
						
							 
							
							
							
							
								
							
							
								960707c335 
								
							 
						 
						
							
							
								
								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
							
						 
						
							 
							
							
							
							
								
							
							
								9a010038f1 
								
							 
						 
						
							
							
								
								More additions  
							
							 
							
							... 
							
							
							
							llvm-svn: 9834 
							
						 
						
							2003-11-09 19:54:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								950c75f135 
								
							 
						 
						
							
							
								
								Add more functions  
							
							 
							
							... 
							
							
							
							llvm-svn: 9826 
							
						 
						
							2003-11-09 04:10:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5011b956a9 
								
							 
						 
						
							
							
								
								None of the __llvm_* functions call into the program.  This makes the  
							
							 
							
							... 
							
							
							
							callgraph MUCH simpler for eh using program.
llvm-svn: 9825 
							
						 
						
							2003-11-09 04:00:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5f6463c041 
								
							 
						 
						
							
							
								
								Fix name collision  
							
							 
							
							... 
							
							
							
							llvm-svn: 9722 
							
						 
						
							2003-11-05 05:55:45 +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
							
						 
						
							 
							
							
							
							
								
							
							
								9c4a58b780 
								
							 
						 
						
							
							
								
								Make the call graph more precise despite the hated constantpointerrefs.  
							
							 
							
							... 
							
							
							
							Do you detect the animosity I feel towards CPRs yet?
llvm-svn: 9640 
							
						 
						
							2003-10-31 21:05:12 +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
							
						 
						
							 
							
							
							
							
								
							
							
								54ac910a5c 
								
							 
						 
						
							
							
								
								Fix PR62, and llvm/test/Regression/CBackend/2003-10-28-CastToPtrToStruct.ll  
							
							 
							
							... 
							
							
							
							ConstantExpr's can use unrelated types, make sure to scan them.
llvm-svn: 9569 
							
						 
						
							2003-10-28 23:09:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								fb8e19b7ca 
								
							 
						 
						
							
							
								
								Fix bug: CBackend/2003-10-23-UnusedType.ll and hopefully 252.eon  
							
							 
							
							... 
							
							
							
							llvm-svn: 9441 
							
						 
						
							2003-10-23 19:30:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5987ab8677 
								
							 
						 
						
							
							
								
								This is a disgusting hack that improves code substantially, by making  
							
							 
							
							... 
							
							
							
							callgraphSCC passes more effective.
llvm-svn: 9384 
							
						 
						
							2003-10-22 18:53:31 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								4436c49787 
								
							 
						 
						
							
							
								
								Added LLVM copyright notice to Makefiles.  
							
							 
							
							... 
							
							
							
							llvm-svn: 9312 
							
						 
						
							2003-10-20 22:26:57 +00:00  
						
					 
				
					
						
							
							
								 
								John Criswell
							
						 
						
							 
							
							
							
							
								
							
							
								482202a601 
								
							 
						 
						
							
							
								
								Added LLVM project notice to the top of every C++ source file.  
							
							 
							
							... 
							
							
							
							Header files will be on the way.
llvm-svn: 9298 
							
						 
						
							2003-10-20 19:43:21 +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
							
						 
						
							 
							
							
							
							
								
							
							
								44d2c3514a 
								
							 
						 
						
							
							
								
								Regularize header file comments  
							
							 
							
							... 
							
							
							
							llvm-svn: 9071 
							
						 
						
							2003-10-13 03:32:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								04d9cb6770 
								
							 
						 
						
							
							
								
								Switch from using CallInst's to represent call sites to using the LLVM  
							
							 
							
							... 
							
							
							
							CallSite class.  Now we can represent function calls by invoke instructions
too!
llvm-svn: 8629 
							
						 
						
							2003-09-20 16:34:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								233f2a0816 
								
							 
						 
						
							
							
								
								These two conditions are not exclusive!!  
							
							 
							
							... 
							
							
							
							llvm-svn: 8518 
							
						 
						
							2003-09-15 04:35:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5d0d3a2667 
								
							 
						 
						
							
							
								
								Make the print output more useful  
							
							 
							
							... 
							
							
							
							llvm-svn: 8517 
							
						 
						
							2003-09-15 04:29:37 +00:00  
						
					 
				
					
						
							
							
								 
								Misha Brukman
							
						 
						
							 
							
							
							
							
								
							
							
								329983228f 
								
							 
						 
						
							
							
								
								Fixed spelling and grammar.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8478 
							
						 
						
							2003-09-11 18:14:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6f5e18d696 
								
							 
						 
						
							
							
								
								Replace M with F when refering to functions  
							
							 
							
							... 
							
							
							
							llvm-svn: 8274 
							
						 
						
							2003-08-31 20:36:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								78a5c1aa3c 
								
							 
						 
						
							
							
								
								Rename TarjanSCCIterator -> scc_iterator  
							
							 
							
							... 
							
							
							
							* Increases consistency with other iterators (e.g. df_iterator, po_iterator...)
  * It's shorter
  * We don't name classes by the implementation, we name it for the interface!
llvm-svn: 8273 
							
						 
						
							2003-08-31 20:01:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								6b9d3efb64 
								
							 
						 
						
							
							
								
								Remove dead var  
							
							 
							
							... 
							
							
							
							llvm-svn: 8270 
							
						 
						
							2003-08-31 19:54:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								4336db8d1d 
								
							 
						 
						
							
							
								
								The SCC::HasLoop method is now in the main iterator  
							
							 
							
							... 
							
							
							
							llvm-svn: 8269 
							
						 
						
							2003-08-31 19:51:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a687f44559 
								
							 
						 
						
							
							
								
								Remove explicit passing of SCC's around as objects.  
							
							 
							
							... 
							
							
							
							llvm-svn: 8267 
							
						 
						
							2003-08-31 19:46:48 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								028f248ba8 
								
							 
						 
						
							
							
								
								Move the getAnalysisUsage method from the header file  
							
							 
							
							... 
							
							
							
							llvm-svn: 8264 
							
						 
						
							2003-08-31 19:40:57 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7d1a871ede 
								
							 
						 
						
							
							
								
								The tarjan iterator now returns a reference to the current SCC, not a possibly null pointer!  
							
							 
							
							... 
							
							
							
							llvm-svn: 8262 
							
						 
						
							2003-08-31 19:35:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2ee82ff48e 
								
							 
						 
						
							
							
								
								Minor cleanups  
							
							 
							
							... 
							
							
							
							Iterate from tarj_begin -> tarj_end, not from tarj_begin -> NULL
llvm-svn: 8260 
							
						 
						
							2003-08-31 19:29:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f7e9594843 
								
							 
						 
						
							
							
								
								Initial checkin of the CallGraphSCCPass class  
							
							 
							
							... 
							
							
							
							llvm-svn: 8247 
							
						 
						
							2003-08-31 01:54:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c592c9f8a3 
								
							 
						 
						
							
							
								
								Remove unnecessary use of NonCopyable  
							
							 
							
							... 
							
							
							
							llvm-svn: 7641 
							
						 
						
							2003-08-06 17:16:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								151576413e 
								
							 
						 
						
							
							
								
								Adjust for new DSGraph API  
							
							 
							
							... 
							
							
							
							llvm-svn: 6993 
							
						 
						
							2003-06-30 03:14:54 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								9ed31bc497 
								
							 
						 
						
							
							
								
								Fix bug: CBackend/2003-05-31-MissingStructName.ll  
							
							 
							
							... 
							
							
							
							llvm-svn: 6495 
							
						 
						
							2003-05-31 23:30:52 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								f789f29aaa 
								
							 
						 
						
							
							
								
								Eliminate unnecessary ->get calls that are now automatically handled.  
							
							 
							
							... 
							
							
							
							llvm-svn: 6397 
							
						 
						
							2003-05-29 15:12:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								80614ee5ef 
								
							 
						 
						
							
							
								
								Implement optimization for direct function call case.  This dramatically  
							
							 
							
							... 
							
							
							
							reduces the number of function nodes created and speeds up analysis by
about 10% overall.
llvm-svn: 5495 
							
						 
						
							2003-02-05 21:59:58 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c44c04af44 
								
							 
						 
						
							
							
								
								Change DSGraph stuff to use hash_(set|map) instead of std::(set|map)  
							
							 
							
							... 
							
							
							
							This change provides a small (3%) but consistent speedup
llvm-svn: 5460 
							
						 
						
							2003-02-01 04:52:08 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								38c5e417a7 
								
							 
						 
						
							
							
								
								* Eliminate boolean arguments in favor of using enums  
							
							 
							
							... 
							
							
							
							llvm-svn: 5420 
							
						 
						
							2003-01-23 22:06:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c42ada2e5e 
								
							 
						 
						
							
							
								
								Remove #includes  
							
							 
							
							... 
							
							
							
							llvm-svn: 4968 
							
						 
						
							2002-12-12 03:47:27 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								775e51d87a 
								
							 
						 
						
							
							
								
								Iterator that enumerates the ProgramDependenceGraph (PDG) for a function,  
							
							 
							
							... 
							
							
							
							i.e., enumerates all data and control dependences for the function.
llvm-svn: 4958 
							
						 
						
							2002-12-08 14:13:19 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								8975afdfc4 
								
							 
						 
						
							
							
								
								An explicit representation of dependence graphs, and a pass that  
							
							 
							
							... 
							
							
							
							computes a dependence graph for data dependences on memory locations
using interprocedural Mod/Ref information.
llvm-svn: 4957 
							
						 
						
							2002-12-08 13:26:29 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								19b3303f3d 
								
							 
						 
						
							
							
								
								(1) Bug fix that was causing nodes with dangling references to be freed.  
							
							 
							
							... 
							
							
							
							We run removeDeadNodes() on the TD graph up front before using it.
(2) Major enhancement to printing of results: now we list the actual objects
    that are mod/ref instead of just printing the bit vectors.
Also an important bug fix in TDDataStructures pass (no change here):
clear Mod/Ref bits of callers before inlining into a function.
llvm-svn: 4833 
							
						 
						
							2002-11-27 17:37:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1aeca4d0e6 
								
							 
						 
						
							
							
								
								Fix bug  
							
							 
							
							... 
							
							
							
							llvm-svn: 4697 
							
						 
						
							2002-11-11 22:23:56 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2ea00e994e 
								
							 
						 
						
							
							
								
								Reduce amount of work needed to compute ip/modref  
							
							 
							
							... 
							
							
							
							llvm-svn: 4637 
							
						 
						
							2002-11-08 22:17:01 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								465668552a 
								
							 
						 
						
							
							
								
								Fix IPModRef to use new DS interface  
							
							 
							
							... 
							
							
							
							llvm-svn: 4628 
							
						 
						
							2002-11-08 19:13:14 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								5904e63465 
								
							 
						 
						
							
							
								
								Implement ResolveCallSiteModRefInfo for IPModRef.  computeModRef is not yet done though!  
							
							 
							
							... 
							
							
							
							llvm-svn: 4602 
							
						 
						
							2002-11-07 07:12:23 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								28c34bd8eb 
								
							 
						 
						
							
							
								
								Fix problem with dangling referrers  
							
							 
							
							... 
							
							
							
							llvm-svn: 4595 
							
						 
						
							2002-11-07 05:00:35 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bac5fec8b9 
								
							 
						 
						
							
							
								
								Allow the ResolveCallSiteModRefInfo method to return a mapping of nodes,  
							
							 
							
							... 
							
							
							
							implement the mod/ref bit masking
llvm-svn: 4578 
							
						 
						
							2002-11-06 19:59:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2b23bf16e3 
								
							 
						 
						
							
							
								
								Add a stub to implement the context sensitive mod/ref info for call sites  
							
							 
							
							... 
							
							
							
							llvm-svn: 4577 
							
						 
						
							2002-11-06 19:38:43 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								3cf08cc08a 
								
							 
						 
						
							
							
								
								Give a back pointer to the IPModRef object to the FunctionModRefInfo object  
							
							 
							
							... 
							
							
							
							llvm-svn: 4576 
							
						 
						
							2002-11-06 19:07:13 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2f05c9a206 
								
							 
						 
						
							
							
								
								Remove a couple of #includes, move some code from .h file  
							
							 
							
							... 
							
							
							
							llvm-svn: 4575 
							
						 
						
							2002-11-06 18:38:18 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								36da63f19f 
								
							 
						 
						
							
							
								
								An interprocedural analysis pass that computes flow-insensitive  
							
							 
							
							... 
							
							
							
							IP Mod and Ref information for every function and every call site.
llvm-svn: 4567 
							
						 
						
							2002-11-06 17:02:03 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b9d55473b5 
								
							 
						 
						
							
							
								
								Allow the call graph to be called from analyze naturally with print implemented  
							
							 
							
							... 
							
							
							
							llvm-svn: 4517 
							
						 
						
							2002-11-04 00:21:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c952e4558b 
								
							 
						 
						
							
							
								
								Make users of FindUsedTypes not have problems with linkage.  This fixes  
							
							 
							
							... 
							
							
							
							Cwriter.
llvm-svn: 3900 
							
						 
						
							2002-09-24 00:07:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1a386b6a73 
								
							 
						 
						
							
							
								
								- Do not expose ::ID from any of the analyses anymore.  
							
							 
							
							... 
							
							
							
							llvm-svn: 3417 
							
						 
						
							2002-08-21 17:09:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2675007573 
								
							 
						 
						
							
							
								
								* Standardize how analysis results/passes as printed with the print() virtual  
							
							 
							
							... 
							
							
							
							methods
* Eliminate AnalysisID:  Now it is just a typedef for const PassInfo*
* Simplify how AnalysisID's are initialized
* Eliminate Analysis/Writer.cpp/.h: incorporate printing functionality into
  the analyses themselves.
llvm-svn: 3116 
							
						 
						
							2002-07-27 01:12:17 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c8b7092e54 
								
							 
						 
						
							
							
								
								* Add support for different "PassType's"  
							
							 
							
							... 
							
							
							
							* Add new RegisterOpt/RegisterAnalysis templates for registering passes that
  are to show up in opt or analyze
* Register Analyses now
* Change optimizations to use RegisterOpt instead of RegisterPass
* Add support for different "PassType's"
* Add new RegisterOpt/RegisterAnalysis templates for registering passes that
  are to show up in opt or analyze
* Register Analyses now
* Change optimizations to use RegisterOpt instead of RegisterPass
* Remove getPassName implementations from various subclasses
llvm-svn: 3113 
							
						 
						
							2002-07-26 21:12:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a2c0985980 
								
							 
						 
						
							
							
								
								* Add support for different "PassType's"  
							
							 
							
							... 
							
							
							
							* Add new RegisterOpt/RegisterAnalysis templates for registering passes that
  are to show up in opt or analyze
* Register Analyses now
* Change optimizations to use RegisterOpt instead of RegisterPass
* Add support for different "PassType's"
* Add new RegisterOpt/RegisterAnalysis templates for registering passes that
  are to show up in opt or analyze
* Register Analyses now
* Change optimizations to use RegisterOpt instead of RegisterPass
* Remove getPassName implementations from various subclasses
llvm-svn: 3112 
							
						 
						
							2002-07-26 21:12:44 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								b62cc6785c 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							 
							
							... 
							
							
							
							llvm-svn: 3097 
							
						 
						
							2002-07-25 19:59:41 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								1cd30451c0 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							 
							
							... 
							
							
							
							llvm-svn: 3069 
							
						 
						
							2002-07-24 22:33:53 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								a896b08b5c 
								
							 
						 
						
							
							
								
								*** empty log message ***  
							
							 
							
							... 
							
							
							
							llvm-svn: 3002 
							
						 
						
							2002-07-23 17:52:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								341ce63dd4 
								
							 
						 
						
							
							
								
								Convert Command Line option handling code to use the CommandLine 2.0 interface  
							
							 
							
							... 
							
							
							
							llvm-svn: 2983 
							
						 
						
							2002-07-22 02:08:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								79b0c7d016 
								
							 
						 
						
							
							
								
								* s/method/function  
							
							 
							
							... 
							
							
							
							llvm-svn: 2958 
							
						 
						
							2002-07-18 04:43:16 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								113f4f4609 
								
							 
						 
						
							
							
								
								MEGAPATCH checkin.  
							
							 
							
							... 
							
							
							
							For details, See: docs/2002-06-25-MegaPatchInfo.txt
llvm-svn: 2779 
							
						 
						
							2002-06-25 16:13:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								181cc32365 
								
							 
						 
						
							
							
								
								Replace all usages of Type::isPointerType with isa<PointerType>  
							
							 
							
							... 
							
							
							
							llvm-svn: 2486 
							
						 
						
							2002-05-06 16:15:30 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d5a847057b 
								
							 
						 
						
							
							
								
								Eliminate duplicate or unneccesary #include's  
							
							 
							
							... 
							
							
							
							llvm-svn: 2397 
							
						 
						
							2002-04-29 17:42:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								c8e665431b 
								
							 
						 
						
							
							
								
								* Rename MethodPass class to FunctionPass  
							
							 
							
							... 
							
							
							
							- Rename runOnMethod to runOnFunction
* Transform getAnalysisUsageInfo into getAnalysisUsage
  - Method is now const
  - It now takes one AnalysisUsage object to fill in instead of 3 vectors
    to fill in
  - Pass's now specify which other passes they _preserve_ not which ones
    they modify (be conservative!)
  - A pass can specify that it preserves all analyses (because it never
    modifies the underlying program)
* s/Method/Function/g in other random places as well
llvm-svn: 2333 
							
						 
						
							2002-04-27 06:56:12 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ac7c298ba8 
								
							 
						 
						
							
							
								
								Print out what the root of the call graph is.  
							
							 
							
							... 
							
							
							
							llvm-svn: 2223 
							
						 
						
							2002-04-10 20:31:44 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								d92b01c385 
								
							 
						 
						
							
							
								
								Add #includes to make up for #includes pruned out of header files.  
							
							 
							
							... 
							
							
							
							llvm-svn: 2207 
							
						 
						
							2002-04-09 18:37:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								62b7fd136e 
								
							 
						 
						
							
							
								
								Change references to the Method class to be references to the Function  
							
							 
							
							... 
							
							
							
							class.  The Method class is obsolete (renamed) and all references to it
are being converted over to Function.
llvm-svn: 2144 
							
						 
						
							2002-04-07 20:49:59 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								15deaa0ab9 
								
							 
						 
						
							
							
								
								s/Method/Function  
							
							 
							
							... 
							
							
							
							llvm-svn: 2043 
							
						 
						
							2002-03-29 17:08:29 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0df67e347a 
								
							 
						 
						
							
							
								
								change refs to Method to Function  
							
							 
							
							... 
							
							
							
							Change references to MEthodArgument to FunctionArgument
llvm-svn: 1989 
							
						 
						
							2002-03-26 17:55:33 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								62f1e98e4f 
								
							 
						 
						
							
							
								
								Initial checkin  
							
							 
							
							... 
							
							
							
							llvm-svn: 1831 
							
						 
						
							2002-03-07 20:16:38 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								beed742b55 
								
							 
						 
						
							
							
								
								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
							
						 
						
							 
							
							
							
							
								
							
							
								d852cc32ec 
								
							 
						 
						
							
							
								
								Move call graph printing support out of Writer.h into Callgraph.h  
							
							 
							
							... 
							
							
							
							remove dead global function
llvm-svn: 1825 
							
						 
						
							2002-03-06 18:00:49 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8032732948 
								
							 
						 
						
							
							
								
								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
							
						 
						
							 
							
							
							
							
								
							
							
								83d485b310 
								
							 
						 
						
							
							
								
								* Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and into  
							
							 
							
							... 
							
							
							
							llvm/Support/CFG.h
* Make pred & succ iterators for intervals global functions
* Add #includes that are now neccesary because BasicBlock.h doesn't include
  InstrTypes.h anymore
llvm-svn: 1750 
							
						 
						
							2002-02-12 22:39:50 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								60a6591d83 
								
							 
						 
						
							
							
								
								Method.h no longer includes BasicBlock.h  
							
							 
							
							... 
							
							
							
							Method::inst_* is now in llvm/Support/InstIterator.h
GraphTraits specializations for BasicBlock and Methods are now in llvm/Support/CFG.h
llvm-svn: 1746 
							
						 
						
							2002-02-12 21:07:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								ccf571a408 
								
							 
						 
						
							
							
								
								Convert analyses to new pass structure  
							
							 
							
							... 
							
							
							
							llvm-svn: 1603 
							
						 
						
							2002-01-31 00:42:27 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								0686e435d1 
								
							 
						 
						
							
							
								
								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
							
						 
						
							 
							
							
							
							
								
							
							
								7f74a56e24 
								
							 
						 
						
							
							
								
								Changes to build successfully with GCC 3.02  
							
							 
							
							... 
							
							
							
							llvm-svn: 1503 
							
						 
						
							2002-01-20 22:54:45 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								2413b160ec 
								
							 
						 
						
							
							
								
								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
							
						 
						
							 
							
							
							
							
								
							
							
								5de2204fe8 
								
							 
						 
						
							
							
								
								Create a new #include "Support/..." directory structure to move things  
							
							 
							
							... 
							
							
							
							from "llvm/Support/..." that are not llvm dependant.
Move files and fix #includes
llvm-svn: 1400 
							
						 
						
							2001-11-27 00:03:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								03946cd9b6 
								
							 
						 
						
							
							
								
								Implement a new entry node that has edges to all external methods in the module  
							
							 
							
							... 
							
							
							
							llvm-svn: 1369 
							
						 
						
							2001-11-26 18:51:25 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								7082e110f7 
								
							 
						 
						
							
							
								
								New pass to find types in use by a program  
							
							 
							
							... 
							
							
							
							llvm-svn: 1232 
							
						 
						
							2001-11-09 05:27:21 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								cf66422978 
								
							 
						 
						
							
							
								
								Print the method that makes an instruction invalid  
							
							 
							
							... 
							
							
							
							llvm-svn: 1213 
							
						 
						
							2001-11-08 19:29:51 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								83f1528061 
								
							 
						 
						
							
							
								
								Initial checkin of pointer safety checker  
							
							 
							
							... 
							
							
							
							llvm-svn: 1181 
							
						 
						
							2001-11-07 21:16:12 +00:00  
						
					 
				
					
						
							
							
								 
								Vikram S. Adve
							
						 
						
							 
							
							
							
							
								
							
							
								5dab57de99 
								
							 
						 
						
							
							
								
								Added function IsLeafMethod to identify leaf methods.  
							
							 
							
							... 
							
							
							
							This will use the CallGraph only if one is provided.
llvm-svn: 950 
							
						 
						
							2001-10-22 13:55:46 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								8cbbbef674 
								
							 
						 
						
							
							
								
								* Add support for Invoke instructions  
							
							 
							
							... 
							
							
							
							* Add support for indirect calls
llvm-svn: 752 
							
						 
						
							2001-10-13 06:33:19 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								da55810666 
								
							 
						 
						
							
							
								
								Commit more code over to new cast style  
							
							 
							
							... 
							
							
							
							llvm-svn: 697 
							
						 
						
							2001-10-02 03:41:24 +00:00  
						
					 
				
					
						
							
							
								 
								Chris Lattner
							
						 
						
							 
							
							
							
							
								
							
							
								bbf3ae8414 
								
							 
						 
						
							
							
								
								Initial support for construction of a call graph  
							
							 
							
							... 
							
							
							
							llvm-svn: 660 
							
						 
						
							2001-09-28 00:08:15 +00:00