Chris Lattner
e6443c72fe
Add new Loop::hasExitBlock helper method
...
llvm-svn: 5663
2003-02-27 22:48:28 +00:00
Chris Lattner
c37308604f
Change behavior of changeExitBlock function to replace all instances of exit block
...
llvm-svn: 5661
2003-02-27 22:37:44 +00:00
Chris Lattner
db73d0ceab
Make the interface to update a little more efficient
...
llvm-svn: 5651
2003-02-27 20:24:17 +00:00
Chris Lattner
4efef545d2
* LoopInfo now keeps track of exit blocks from the loop
...
* New LoopInfo::isLoopHeader method
* Remove some #if 0 code
llvm-svn: 5649
2003-02-27 00:37:22 +00:00
Chris Lattner
5baf8bb966
Make the aliassettracker much more precise by actually tracking size
...
information for various accesses. What a concept.
llvm-svn: 5647
2003-02-26 22:11:00 +00:00
Chris Lattner
374168a56e
BasicAA doesn't need a public header
...
llvm-svn: 5639
2003-02-26 19:41:46 +00:00
Chris Lattner
f3a3d13d24
Tweak to work with new AA implementation
...
llvm-svn: 5632
2003-02-26 19:25:04 +00:00
Chris Lattner
8a8dc5b686
Checkin of new alias analysis interface:
...
* Takes into account the size of the memory reference to determine aliasing.
* Expose mod/ref information in a more consistent way
llvm-svn: 5631
2003-02-26 19:24:47 +00:00
Chris Lattner
7f0e8c4d31
* Un "protect" the getAnalysis<> functions
...
* Add a new initializePass() method to ImmutablePass
llvm-svn: 5629
2003-02-26 19:10:28 +00:00
Chris Lattner
38e874dd6e
Add new helper template function
...
llvm-svn: 5622
2003-02-25 00:00:50 +00:00
Chris Lattner
497c0d443c
Rename Instruction::hasSideEffects() -> mayWriteToMemory()
...
llvm-svn: 5620
2003-02-24 20:48:32 +00:00
Chris Lattner
f2009dbddb
This is a substantial rewrite of the AliasSetTracker class which now uses
...
a union-find based algorithm, is significantly faster, and is more general.
It will also scale to handle call instructions correctly, which is a nice
added bonus.
This includes a new pass -print-alias-sets which can be used to show how
alias sets are formed for a particular analysis.
llvm-svn: 5619
2003-02-24 20:37:56 +00:00
Chris Lattner
caba6cfcf5
Initial checkin of CallSite wrapper for Call/Invoke instructions
...
llvm-svn: 5618
2003-02-24 20:35:45 +00:00
Chris Lattner
74aa1f8c03
Add a new interface file for the PromoteMemToReg interface in the Utils library
...
llvm-svn: 5609
2003-02-22 23:04:52 +00:00
Chris Lattner
120d135f05
Move node forwarding code from being inlined to being out-of-line.
...
This brings a 11.6% speedup to steens, and a 3.6 overall speedup to ds-aa
llvm-svn: 5552
2003-02-13 19:09:00 +00:00
Chris Lattner
522cb6d282
Implement a "union-findy" version of DS-Analysis, which eliminates the
...
Referrers list on DSNodes.
llvm-svn: 5536
2003-02-11 23:11:51 +00:00
Chris Lattner
d4faf8a5da
Fix uninitialized member problem
...
llvm-svn: 5534
2003-02-11 06:36:00 +00:00
Chris Lattner
fade2f7d18
Bugfix for calling dump() after the links vector has been cleared
...
llvm-svn: 5533
2003-02-10 22:46:47 +00:00
Chris Lattner
723795113f
Move getNode() out of line
...
llvm-svn: 5531
2003-02-10 18:19:41 +00:00
Chris Lattner
4528fd1e2a
Implement a new method "viewGraph" which can be used to instantly view a graph from GDB.
...
llvm-svn: 5529
2003-02-10 18:17:38 +00:00
Chris Lattner
b86f27cc1f
TD Pass now does not cause globals to mark nodes incomplete.
...
llvm-svn: 5512
2003-02-09 18:40:25 +00:00
Chris Lattner
5f3ef2f0e7
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
e8381114ef
Add sanity check
...
llvm-svn: 5489
2003-02-04 00:03:57 +00:00
Chris Lattner
102e619864
Hack to work around deficiency in pass infrastructure
...
llvm-svn: 5485
2003-02-03 22:51:28 +00:00
Chris Lattner
b58c9c95d0
Eliminate unused resolving caller stuff
...
llvm-svn: 5475
2003-02-03 19:11:04 +00:00
Chris Lattner
1c12ad543d
* Add a bunch of stuff for checking the integrity of the graph
...
* remove the isNodeDead method
llvm-svn: 5474
2003-02-03 19:10:24 +00:00
Chris Lattner
4bb510896d
Remove pool alloc accessor
...
llvm-svn: 5473
2003-02-03 19:08:33 +00:00
Chris Lattner
cfae77498b
Expose information about pool allocation
...
llvm-svn: 5471
2003-02-03 19:07:46 +00:00
Chris Lattner
58fa654380
Allow modifying a global variables constness property
...
llvm-svn: 5468
2003-02-02 16:40:40 +00:00
Chris Lattner
7aec6c471b
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
d6b11d83a3
Add new composition mask
...
llvm-svn: 5454
2003-02-01 03:28:26 +00:00
Joel Stanley
b867c1f059
Added protos for two alternate, convenient CallInst constructors.
...
llvm-svn: 5453
2003-02-01 00:41:27 +00:00
Chris Lattner
14cc7b4231
Add new function to allow removal of typed named elements
...
llvm-svn: 5442
2003-01-30 20:54:03 +00:00
Chris Lattner
3acf20f0da
New API for traversing graph
...
llvm-svn: 5430
2003-01-29 21:09:59 +00:00
Chris Lattner
37a2301f9e
New helper header
...
llvm-svn: 5423
2003-01-27 22:08:52 +00:00
Chris Lattner
77e422543e
* Eliminate boolean arguments in favor of using enums
...
llvm-svn: 5420
2003-01-23 22:06:33 +00:00
Chris Lattner
1d35ac61ce
Print machine frame objects with the frame offset intrinsic to the machine
...
llvm-svn: 5329
2003-01-16 18:35:57 +00:00
Chris Lattner
301e1307d2
Move sparc specific code into the Sparc backend
...
llvm-svn: 5317
2003-01-15 21:36:50 +00:00
Chris Lattner
eac243c414
Simplify the interface
...
llvm-svn: 5313
2003-01-15 21:13:32 +00:00
Chris Lattner
30fbd2d1fe
Move private headers into private regalloc directory
...
llvm-svn: 5308
2003-01-15 20:26:32 +00:00
Chris Lattner
7f85810349
Move private header to private dir
...
llvm-svn: 5304
2003-01-15 19:50:32 +00:00
Chris Lattner
cfa7a8f9a2
Remove obsolete ctor
...
llvm-svn: 5301
2003-01-15 19:47:02 +00:00
Chris Lattner
7a5291a0c9
Remove internal helper fn
...
llvm-svn: 5300
2003-01-15 19:46:39 +00:00
Chris Lattner
d06cd53a81
ADd support for CC registers for Sparc BE
...
llvm-svn: 5297
2003-01-15 19:22:23 +00:00
Chris Lattner
f254db43cd
Add support for the CC registers for Sparc BE
...
llvm-svn: 5296
2003-01-15 19:22:06 +00:00
Chris Lattner
8c56dc23a5
Remove more unused methods
...
llvm-svn: 5295
2003-01-15 19:21:50 +00:00
Chris Lattner
e6fb373c01
Remove a ton of functions that are no longer used, instead using BuildMI
...
llvm-svn: 5290
2003-01-15 17:35:44 +00:00
Chris Lattner
856c3ad41c
Add new helper method addRegDef
...
llvm-svn: 5289
2003-01-15 17:18:22 +00:00
Chris Lattner
14021140c0
* Eliminate a bunch of inline functions.
...
* Convert callers to use BuildMI instead
llvm-svn: 5286
2003-01-15 00:02:41 +00:00
Chris Lattner
bfd37d4da8
Move to include/llvm/CodeGen
...
llvm-svn: 5285
2003-01-14 23:05:31 +00:00