Reid Spencer
e6e0da0b9f
Completely rewrote the class. SymbolTable now separates Type* from Value* in preparation\
...
for making Type not derive from Value. There are now separate interfaces \
for looking up, finding, and inserting Types and Values. There are also \
three separate iterator interfaces, one for type planes, one for the types \
(type type plane), and one for values within a type plane. See the \
documentation in the Header file.
llvm-svn: 13752
2004-05-25 08:52:42 +00:00
Reid Spencer
08e75b22a5
Convert to SymbolTable's new lookup and iteration interfaces.
...
llvm-svn: 13751
2004-05-25 08:52:20 +00:00
Reid Spencer
09c1dbce28
Remove unused header file.
...
llvm-svn: 13750
2004-05-25 08:51:36 +00:00
Reid Spencer
169865d831
Make this pass simply invoke SymbolTable::strip().
...
llvm-svn: 13749
2004-05-25 08:51:25 +00:00
Reid Spencer
65559ced22
Remove use of Type::TypeTy from an assert. It will go away soon.
...
llvm-svn: 13748
2004-05-25 08:50:52 +00:00
Reid Spencer
63530c743e
Get rid of a wart: useless getFILE function is now a cast macro.
...
llvm-svn: 13747
2004-05-25 08:46:15 +00:00
Reid Spencer
495ac831bb
Give Type its own dump() method in preparation for Type != Value.
...
llvm-svn: 13746
2004-05-25 08:46:04 +00:00
Reid Spencer
987a052f3a
Completely rewrote the class. SymbolTable now separates Type* from Value* in preparation\
...
for making Type not derive from Value. There are now separate interfaces \
for looking up, finding, and inserting Types and Values. There are also \
three separate iterator interfaces, one for type planes, one for the types \
(type type plane), and one for values within a type plane. See the \
documentation in the Header file.
llvm-svn: 13745
2004-05-25 08:45:53 +00:00
Reid Spencer
33a58c0a10
Convert dump() method to call Type::dump() instead of Value::dump().
...
llvm-svn: 13744
2004-05-25 08:45:42 +00:00
Reid Spencer
3750a5feb8
Fix a small typo.
...
llvm-svn: 13743
2004-05-25 08:45:31 +00:00
Vikram S. Adve
6026f572eb
Recognize memalign and friends, and handle them specially.
...
llvm-svn: 13741
2004-05-25 08:14:52 +00:00
Chris Lattner
66f55c8e78
Implement InstCombine:shift.ll:test16, which turns (X >> C1) & C2 != C3
...
into (X & (C2 << C1)) != (C3 << C1), where the shift may be either left or
right and the compare may be any one.
This triggers 1546 times in 176.gcc alone, as it is a common pattern that
occurs for bitfield accesses.
llvm-svn: 13740
2004-05-25 06:32:08 +00:00
Chris Lattner
342fef68de
New testcase
...
llvm-svn: 13739
2004-05-25 06:30:49 +00:00
Chris Lattner
84431acbf1
Implement some helpers
...
llvm-svn: 13738
2004-05-25 05:32:43 +00:00
Chris Lattner
0185a86e38
Add some helpers
...
llvm-svn: 13737
2004-05-25 05:32:13 +00:00
Chris Lattner
b8fb5e789b
Implement instcombine/cast.ll:test16:
...
Canonicalize cast X to bool into a setne instruction
llvm-svn: 13736
2004-05-25 04:29:21 +00:00
Chris Lattner
d905489f64
Add a new test16 and fix some other tests that were not properly written
...
llvm-svn: 13735
2004-05-25 04:28:43 +00:00
Chris Lattner
58ec281e5f
Make doc_code shrink-to-fit. This only works in mozilla, but it doesn't
...
hurt legibility on IE
llvm-svn: 13720
2004-05-24 18:05:58 +00:00
Tanya Lattner
7cf16701f7
Moved MachineBasicBlock deconstructor to cpp file and removed it from LeakDetector to fix memory leak bug.
...
llvm-svn: 13718
2004-05-24 07:14:35 +00:00
Chris Lattner
79409ebc27
Fix a bug in my previous checkin
...
llvm-svn: 13717
2004-05-24 06:24:46 +00:00
Tanya Lattner
aabaaec037
Added MachineFunction parent* to MachineBasicBlock. Customized ilist template
...
to set the parent when a MachineBasicBlock is added to a MachineFunction.
llvm-svn: 13716
2004-05-24 06:11:51 +00:00
Chris Lattner
1eb1dd4e10
Lots of minor typo fixes, some minor inaccuracies fixed, and some new material.
...
llvm-svn: 13715
2004-05-24 05:35:17 +00:00
Chris Lattner
34b4f957ef
new feature
...
llvm-svn: 13714
2004-05-24 05:34:32 +00:00
Chris Lattner
654165695a
Fix a couple of busted li's
...
llvm-svn: 13713
2004-05-24 04:55:32 +00:00
Chris Lattner
be2814718c
Add a todo to make it clear that the section is not done
...
llvm-svn: 13712
2004-05-24 04:54:31 +00:00
Chris Lattner
3eb16081b1
Personally, I think that documentation is as important as code. Increase
...
the visibility of dox changes
llvm-svn: 13711
2004-05-24 04:53:32 +00:00
Chris Lattner
ff169e5d11
Fix a div problem that was causing some wierd indentation. Get more div'y
...
llvm-svn: 13710
2004-05-24 04:50:25 +00:00
Chris Lattner
1d56b84489
Add some notes
...
llvm-svn: 13709
2004-05-24 04:45:52 +00:00
Chris Lattner
3b2150208d
Add a link to the GC doc
...
llvm-svn: 13708
2004-05-24 04:43:49 +00:00
Chris Lattner
f38d51ea42
Eliminate an explicit use of the LLVM basic block, using getParent instead,
...
which simplifies the code
llvm-svn: 13707
2004-05-24 03:44:52 +00:00
Tanya Lattner
55477a5af1
Changed clone to be const.
...
Changed copy constructor to set parent, prev, and next pointers to null.
llvm-svn: 13706
2004-05-24 03:14:18 +00:00
Alkis Evlogimenos
1790a73dc5
Eliminate warnings
...
llvm-svn: 13704
2004-05-23 23:02:35 +00:00
Chris Lattner
cedf6db567
Testcases for andersen's alias analysis.
...
I think this is all of the stuff I had pending in my tree..
llvm-svn: 13703
2004-05-23 21:31:00 +00:00
Chris Lattner
52e7345268
Spelling people's names right is kinda important
...
llvm-svn: 13702
2004-05-23 21:27:29 +00:00
Chris Lattner
87cf9f79dc
Build the garbage collectors
...
llvm-svn: 13701
2004-05-23 21:26:29 +00:00
Chris Lattner
71890fd358
Initial checkin of GC implementation support files
...
llvm-svn: 13700
2004-05-23 21:25:59 +00:00
Reid Spencer
e1e37cd089
Create a new style for tables that have no width (.doc_table_nw) so the
...
table doesn't stretch across the whole page. Change for BytecodeFormat.html
llvm-svn: 13699
2004-05-23 21:25:50 +00:00
Chris Lattner
74d7e65df6
Check in an EARLY START on a simple copying collector
...
llvm-svn: 13698
2004-05-23 21:25:45 +00:00
Chris Lattner
a617e50e59
Add a simple testcase for garbage collection support
...
llvm-svn: 13697
2004-05-23 21:24:50 +00:00
Chris Lattner
1e22b42cb6
Add support for accurate garbage collection to the LLVM code generators
...
llvm-svn: 13696
2004-05-23 21:23:35 +00:00
Chris Lattner
85f19c7b3f
Add some notes to myself, no functional changes
...
llvm-svn: 13695
2004-05-23 21:23:12 +00:00
Chris Lattner
5862899c44
minor wording change
...
llvm-svn: 13694
2004-05-23 21:22:55 +00:00
Chris Lattner
fbdf40f86a
Fix cases where we missed inlining some more obvious candidates because the
...
caller was in an SCC.
llvm-svn: 13693
2004-05-23 21:22:17 +00:00
Chris Lattner
bf8b81252f
Simplify the interface and remove an unneeded #include
...
llvm-svn: 13692
2004-05-23 21:21:35 +00:00
Chris Lattner
fee8ce6131
Fairly substantial changes to update the alias analysis we are querying as
...
we make the transformation. This allows us to use interprocedural alias
analyses successfully.
llvm-svn: 13691
2004-05-23 21:21:17 +00:00
Chris Lattner
cf81f974b8
Adjust to the changes in the AliasSetTracker interface
...
llvm-svn: 13690
2004-05-23 21:20:19 +00:00
Chris Lattner
33de90e8c6
Add support for replacement of formal arguments with simpler expressions.
...
llvm-svn: 13689
2004-05-23 21:19:55 +00:00
Chris Lattner
f113f6a630
Implement the -lowergc pass which is used by code generators (like the CBE)
...
that do not have builtin support for garbage collection.
llvm-svn: 13688
2004-05-23 21:19:22 +00:00
Chris Lattner
5f65590915
Recognize and verify the new GC intrinsics.
...
llvm-svn: 13687
2004-05-23 21:16:51 +00:00
Chris Lattner
a65df8b576
Add the new GC intrinsics
...
llvm-svn: 13686
2004-05-23 21:16:33 +00:00