Chris Lattner
deb71bf41d
Fix a serious bug where we didn't insert globals into the globalset when
...
cloning a graph.
llvm-svn: 20770
2005-03-22 19:44:11 +00:00
Chris Lattner
b2d5129f59
add a method
...
llvm-svn: 20761
2005-03-22 01:42:10 +00:00
Chris Lattner
0ed923c45a
Now that the dead ctor is gone, nothing uses the old node mapping exported by
...
cloneInto: make it an internally used mapping.
llvm-svn: 20760
2005-03-22 00:36:51 +00:00
Chris Lattner
4264b1d97e
remove a dead ctor
...
llvm-svn: 20759
2005-03-22 00:33:35 +00:00
Chris Lattner
81a96c578c
now that the second argument is always this->ReturnNodes, don't bother passing it.
...
llvm-svn: 20758
2005-03-22 00:29:44 +00:00
Chris Lattner
d76fbaa604
drop the second argument to cloneInto, which is always the local scalar map.
...
llvm-svn: 20753
2005-03-22 00:20:56 +00:00
Chris Lattner
49d2b42d89
move this stuff out of line
...
llvm-svn: 20750
2005-03-22 00:09:36 +00:00
Chris Lattner
dc160907ad
allow passing clone flags into the ctor
...
llvm-svn: 20747
2005-03-21 22:49:43 +00:00
Chris Lattner
ed74103e0c
add a new map
...
llvm-svn: 20742
2005-03-21 20:29:56 +00:00
Chris Lattner
8b4af69d5b
make this const correct
...
llvm-svn: 20741
2005-03-21 20:28:50 +00:00
Chris Lattner
7c6e697cc6
Ugh, for some reason, I can't call this unless the reference is const!?!?!?
...
llvm-svn: 20732
2005-03-21 10:00:45 +00:00
Chris Lattner
37f099ae83
Make the first operand of this method be modifiable.
...
llvm-svn: 20730
2005-03-21 09:39:20 +00:00
Chris Lattner
64f3947426
add a method
...
llvm-svn: 20729
2005-03-21 09:38:39 +00:00
Chris Lattner
7550f93ef5
If merging two calls like: foo(A) and bar(B, C), make sure the result has two
...
arguments, not one.
llvm-svn: 20728
2005-03-21 09:18:39 +00:00
Chris Lattner
df1aa8b6ed
rename a method add a data structure.
...
llvm-svn: 20722
2005-03-21 04:46:35 +00:00
Chris Lattner
5c37c87195
Provide a guaranteed definition of intptr_t. Thansk to Evan Jones for
...
pointing this out!
llvm-svn: 20721
2005-03-21 01:36:35 +00:00
Chris Lattner
334f54c1a0
Remove the InlinedGlobals set which is always empty.
...
llvm-svn: 20715
2005-03-20 04:30:16 +00:00
Chris Lattner
d5c24fc737
add a method
...
llvm-svn: 20709
2005-03-20 03:29:39 +00:00
Chris Lattner
e0771155f6
rename some methods and add some new methods for dealing with the globals list
...
in a DSNode.
llvm-svn: 20701
2005-03-20 02:38:39 +00:00
Misha Brukman
c85dd5e38e
Constant-propagate the value of `isL' variable and eliminate it.
...
llvm-svn: 20698
2005-03-19 23:39:50 +00:00
Jeff Cohen
c5c4aa7911
Silence VC++ warning about mixing intptr_t and bool, and about unused variable isL.
...
llvm-svn: 20697
2005-03-19 22:36:39 +00:00
Chris Lattner
5fc6764893
Make each scalar map contain a reference to an equivalence class of global
...
variables. Do not insert a global into the scalar map unless it is the
leader of its equivalence class.
llvm-svn: 20695
2005-03-19 22:13:13 +00:00
Chris Lattner
f279754707
Each DS collection now contains an equivalence class of globals values.
...
llvm-svn: 20694
2005-03-19 22:12:33 +00:00
Chris Lattner
09ef2499f6
add a method to clear globals from a node
...
llvm-svn: 20693
2005-03-19 22:12:03 +00:00
Chris Lattner
19068b431e
Two fixes for the copy ctor/operator=:
...
1. Make sure to clear() 'this' before adding elements to it
2. Make sure that the leaders of the RHS EC are the leaders of the LHS EC.
llvm-svn: 20692
2005-03-19 21:02:12 +00:00
Chris Lattner
d9b3369aa9
add some methods, fix a major bug in getLeader() that was causing things to
...
not be unified correctly.
llvm-svn: 20691
2005-03-19 20:42:43 +00:00
Chris Lattner
e4d74b8d85
implement a proper copy ctor, operator= and add a helper method.
...
llvm-svn: 20690
2005-03-19 19:26:14 +00:00
Alkis Evlogimenos
19bea8930f
Add new function getPtrPtrFromArrayPtr().
...
llvm-svn: 20684
2005-03-19 11:40:31 +00:00
Chris Lattner
b3103a3768
Rewrite this class, making the following improvements:
...
1. It now actually uses tarjan's algorithm, so it is a efficient inverse
ackerman's function for union operations, not linear time.
2. It now stores one copy of the data in the set instead of two.
3. It now works for elements other than pointers.
4. It now has a more STL-like interface that exposes iterators instead
of internal implementation details.
llvm-svn: 20677
2005-03-19 05:14:29 +00:00
Chris Lattner
ea7615d853
add 3 methods
...
llvm-svn: 20667
2005-03-17 23:45:35 +00:00
Duraid Madina
8b010ff8d2
dainty
...
llvm-svn: 20653
2005-03-17 18:23:22 +00:00
Chris Lattner
e0b373b2c3
remove compat_iterator, which is dead in the tree.
...
llvm-svn: 20644
2005-03-16 22:42:45 +00:00
Chris Lattner
0332fdf1d9
remove use of compat_iterator
...
llvm-svn: 20642
2005-03-16 22:42:01 +00:00
Jeff Cohen
b169eae709
Don't provide default hash struct instantiation.
...
llvm-svn: 20639
2005-03-16 05:49:06 +00:00
Jeff Cohen
f52b95ac20
Add adapter class to let VC++ hash_map use GCC's hash struct.
...
llvm-svn: 20637
2005-03-16 05:25:09 +00:00
Misha Brukman
ff0255f345
Fix grammar wrt apostrophe's
...
llvm-svn: 20635
2005-03-16 03:54:50 +00:00
Misha Brukman
d5e8033d4a
Convert tabs to spaces
...
llvm-svn: 20634
2005-03-16 03:46:55 +00:00
Chris Lattner
82b219432d
remove warning, make computeGGToGMapping return an invnodemap.
...
llvm-svn: 20621
2005-03-15 17:52:07 +00:00
Chris Lattner
4db93bc8d2
add support for hashing nodehandles.
...
llvm-svn: 20620
2005-03-15 17:51:51 +00:00
Chris Lattner
0376862732
add iterators for return nodes list.
...
llvm-svn: 20617
2005-03-15 16:46:11 +00:00
Jeff Cohen
c6d8a9188b
Do it right...
...
llvm-svn: 20605
2005-03-15 06:21:40 +00:00
Jeff Cohen
c456e6eceb
Fix VC++ breakage.
...
llvm-svn: 20604
2005-03-15 06:15:08 +00:00
Chris Lattner
3333cbe988
remove reverse BB iterators.
...
llvm-svn: 20601
2005-03-15 05:17:48 +00:00
Chris Lattner
a2fd75ccf7
remove a whole bunch of dead methods. Noone should use reverse iterators anyway.
...
llvm-svn: 20600
2005-03-15 05:13:47 +00:00
Chris Lattner
eb2e04e812
Rename method, add counterpart.
...
llvm-svn: 20592
2005-03-15 00:58:09 +00:00
Chris Lattner
fe56642977
Remove the reverse iterators for arguments and global vars.
...
Rename argument iterators arg_* instead of a*
Remove global variable iterators global_* instead of g*.
Keep the old names for temporary compatibility.
Patch contributed by Gabor Greif!
llvm-svn: 20591
2005-03-14 23:49:40 +00:00
Chris Lattner
fa7bf4a21e
Add a useful method.
...
llvm-svn: 20587
2005-03-14 19:22:33 +00:00
Chris Lattner
252d6277b5
Add support for printing EQ graphs
...
llvm-svn: 20581
2005-03-13 19:50:40 +00:00
Chris Lattner
183a6977d2
add a helper method
...
llvm-svn: 20578
2005-03-13 19:04:04 +00:00
Chris Lattner
a4bd8bd9b0
remove this from the PA namespace, leaving it in the llvm ns
...
llvm-svn: 20574
2005-03-12 12:08:52 +00:00