Chris Lattner
aa8b6d047c
By default PHINode::removeIncomingValue will delete the phi node if the last
...
incoming value is deleted!
llvm-svn: 4076
2002-10-08 21:31:56 +00:00
Chris Lattner
3cf20c3f14
Expose isCriticalEdge & SplitCriticalEdge methods from crit-edges pass
...
llvm-svn: 4075
2002-10-08 21:06:27 +00:00
Chris Lattner
b9f59f1533
Expose new "recalculate" method from dominatorset
...
llvm-svn: 4074
2002-10-08 19:12:08 +00:00
Chris Lattner
0007480fd4
Cleanup testcase
...
llvm-svn: 4073
2002-10-08 19:11:21 +00:00
Chris Lattner
35c02b84ff
Make test more interesting by adding dummy phi node
...
llvm-svn: 4072
2002-10-08 19:11:02 +00:00
Chris Lattner
b32252aa71
It is illegal for PHI nodes to have zero values, delete the code to handle them
...
llvm-svn: 4071
2002-10-08 17:07:39 +00:00
Chris Lattner
55c7ae3cdc
Fold ashr -1, X into -1
...
llvm-svn: 4070
2002-10-08 16:16:40 +00:00
Chris Lattner
1e39dc6f80
Add new testcase for arithmetic shr of -1
...
llvm-svn: 4069
2002-10-08 16:10:35 +00:00
Chris Lattner
717bd8eb0b
This test was mistakenly matching 'predecessors' that the new asmwriter
...
spits out
llvm-svn: 4068
2002-10-08 16:09:47 +00:00
Nick Hildenbrandt
cf5752f001
LLVM syntax highlighting for VIM.
...
llvm-svn: 4067
2002-10-07 22:54:48 +00:00
Chris Lattner
b7590d8595
Don't rotate paper.
...
llvm-svn: 4066
2002-10-07 22:37:03 +00:00
Chris Lattner
b9cacc43f7
New testcase
...
llvm-svn: 4065
2002-10-07 20:32:38 +00:00
Chris Lattner
0d8fa625ea
Fix testcase to run correctly, add description
...
llvm-svn: 4064
2002-10-07 20:25:45 +00:00
Chris Lattner
21aba702ee
Finally I'm able to distill a testcase for a problem I'm seeing!
...
llvm-svn: 4063
2002-10-07 20:05:27 +00:00
Chris Lattner
3a13076188
- Implement a new -print-cfg option for analyze, that causes it to print the
...
CFG of each function in the module to 'dot' files.
llvm-svn: 4062
2002-10-07 18:38:01 +00:00
Chris Lattner
2378135686
- Allow printing generic LLVM graphs to 'dot' files, so they can be
...
visualized easily.
llvm-svn: 4061
2002-10-07 18:37:10 +00:00
Chris Lattner
c532e35cce
Non-functionality change just to make it more clear what is going on
...
llvm-svn: 4060
2002-10-07 18:34:32 +00:00
Chris Lattner
1a1a1002c4
Avoid making external global variables internal
...
llvm-svn: 4059
2002-10-07 18:33:53 +00:00
Chris Lattner
a79cd8735c
Fix bug in last checkin
...
llvm-svn: 4058
2002-10-07 17:13:22 +00:00
Chris Lattner
80cf2a964b
Update testcase to be legal llvm
...
llvm-svn: 4057
2002-10-07 17:00:53 +00:00
Chris Lattner
b366eddab0
Remove really old testcase
...
llvm-svn: 4056
2002-10-07 16:59:51 +00:00
Chris Lattner
a186714d74
Implement operator= for SuccIterators
...
llvm-svn: 4055
2002-10-07 16:53:22 +00:00
Chris Lattner
f04f2bc929
Checkin new "feature" test for cee
...
llvm-svn: 4054
2002-10-06 23:31:09 +00:00
Chris Lattner
82fa78a6ea
NEw "feature" test that cee should eventually handle
...
llvm-svn: 4053
2002-10-06 23:05:38 +00:00
Chris Lattner
4e19009255
Global variables are now external if they don't have initializers, not
...
"uninitialized"
llvm-svn: 4052
2002-10-06 22:48:09 +00:00
Chris Lattner
d8244f43d4
Check that we don't have external varaibles with internal linkage
...
llvm-svn: 4051
2002-10-06 22:47:32 +00:00
Chris Lattner
6408586b7b
The parser now accepts "external" global variables, in addition to the backwards
...
compatible "uninitialized" global variables
llvm-svn: 4050
2002-10-06 22:45:09 +00:00
Chris Lattner
24e01d2066
- Cleaned up all of the test/Feature tests to not use uint's with
...
getelementptr instructions and not to add pointers.
llvm-svn: 4049
2002-10-06 22:43:49 +00:00
Chris Lattner
06471a039a
Remove old crusty test
...
llvm-svn: 4048
2002-10-06 22:35:56 +00:00
Chris Lattner
f4abbab692
Test "external" modifier on global variable
...
Fix getelementptr instruction to use long isntead of uint index
llvm-svn: 4047
2002-10-06 22:32:38 +00:00
Chris Lattner
3deb0bdf6c
- Add new isExternal() method to GlobalVariable to mirror Function.
...
- doxygenize comments and add new comments
llvm-svn: 4046
2002-10-06 22:29:58 +00:00
Chris Lattner
6eae53f5b1
- The extract tool now is sure to extract the function implementation for
...
the specified name instead of extracting the prototype if both exist.
llvm-svn: 4045
2002-10-06 21:30:04 +00:00
Chris Lattner
53a414c3c4
PHI nodes are not allowed to exist with zero incoming values, check that
...
there aren't any like this.
llvm-svn: 4044
2002-10-06 21:00:31 +00:00
Vikram S. Adve
6932399f9b
Bug fix: In preventing static global variables from being printed twice,
...
I also prevented external globals from being printed twice, but they
should (extern declaration and definition).
llvm-svn: 4043
2002-10-05 23:43:10 +00:00
Anand Shukla
d49d35f562
Added #include<unistd.h> to compile with solaris gcc3.2
...
llvm-svn: 4042
2002-10-04 23:57:01 +00:00
Anand Shukla
02acbe2c93
added cast to unsigned to compile with gcc3.2 (sparc)
...
llvm-svn: 4041
2002-10-04 23:56:18 +00:00
Chris Lattner
75e143a29e
New testcase for bug never checked into CVS, but that I hit during debugging a
...
new feature
llvm-svn: 4039
2002-10-04 23:29:40 +00:00
Chris Lattner
a923b0f49f
Handle post dominance correctly in the case where blocks do not have a path to
...
the exit node.
llvm-svn: 4038
2002-10-04 14:50:20 +00:00
Chris Lattner
85ba0832e5
Fix a nasty problem with dominance calculation for unreachable blocks.
...
If we had a CFG that look like Entry -> B, Unreachable -> B, then we would
not correctly determine that Entry dominated B, because Entry did not
apparently dominate "unreachable". This patch fixes this by making the entry
node dominate all blocks, including unreachable ones.
llvm-svn: 4037
2002-10-04 14:45:48 +00:00
Chris Lattner
eeecc3e1b3
Prune function nodes that are no longer referenced due to inlining
...
llvm-svn: 4036
2002-10-03 21:55:28 +00:00
Chris Lattner
8f603615d8
sgefa uses truely huge data structures nodes. Only print part of them if they
...
are so big
llvm-svn: 4035
2002-10-03 21:55:13 +00:00
Chris Lattner
267eb7dc67
The wall clock timer (implementing using the RTC or cycle counter on x86) is
...
so much more accurate than the per process timers that we get better results
(less noise) by sorting according to wall time than process time.
llvm-svn: 4034
2002-10-03 21:08:20 +00:00
Chris Lattner
31d4a68166
Handle bug exposed by power benchmark
...
llvm-svn: 4033
2002-10-03 21:06:38 +00:00
Nick Hildenbrandt
1ccdc12400
Add parens around constant calls to getelemptr to properly associate the reference
...
llvm-svn: 4032
2002-10-03 20:47:24 +00:00
Chris Lattner
fcdb95cd42
Reimplement/port the Bottom Up Closure pass
...
llvm-svn: 4031
2002-10-03 20:38:41 +00:00
Chris Lattner
c135b54584
New testcase
...
llvm-svn: 4030
2002-10-03 20:06:33 +00:00
Chris Lattner
e52f808665
DataStructure.h doesn't include DSGraph.h
...
llvm-svn: 4029
2002-10-02 22:14:38 +00:00
Chris Lattner
bcb0197fe3
Remove commented out stuff
...
DataStructure.h doesn't include DSGraph.h now
llvm-svn: 4028
2002-10-02 22:14:17 +00:00
Chris Lattner
668457ea05
Move GlobalDSGraph class defn to the end of the file
...
llvm-svn: 4027
2002-10-02 21:55:52 +00:00
Chris Lattner
801fcdd060
This file doesn't need Pass.h
...
llvm-svn: 4026
2002-10-02 21:55:24 +00:00