Alkis Evlogimenos [Thu, 27 May 2004 00:57:51 +0000 (00:57 +0000)]
Add section on the newly added Instruction and subclasses constructor
variant.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13802
91177308-0d34-0410-b5e6-
96231b3b80d8
John Criswell [Thu, 27 May 2004 00:57:50 +0000 (00:57 +0000)]
Only give warnings if the user doesn't have mmap(). This is pretty much
a hack that allows users to fight through a build if they don't have mmap().
When I get into the office, I'll make something better.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13801
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Thu, 27 May 2004 00:15:23 +0000 (00:15 +0000)]
Add constructors that take a BasicBlock to append to, to the rest of
the llvm::Instruction hierarchy.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13800
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 26 May 2004 23:51:29 +0000 (23:51 +0000)]
Fix a test that was "broken" by new optimizations. The transformation we
are doing is certainly correct, its just that we didn't have the capability
to do it when the testcase was written (no select instr)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13799
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Wed, 26 May 2004 22:50:28 +0000 (22:50 +0000)]
Do not pass a null pointer if this instruction is not prepended or
appended anywhere.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13798
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Wed, 26 May 2004 22:07:18 +0000 (22:07 +0000)]
Inline trivial constructors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13797
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 26 May 2004 21:56:09 +0000 (21:56 +0000)]
Several clean ups suggested by Chris: remove tabs, make SlotMachine do lazy
initialization so we don't scan large Modules/Functions needlessly, tighten
up restrictions on what can be put in SlotMachine (no Constants that aren't
GlobalValues).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13796
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 26 May 2004 21:48:31 +0000 (21:48 +0000)]
Provide the correct patch for bug 345. The solution is to add a setTypeName
function to llvmAsmParser.y and then use it in the one place in the grammar
that needs it. Also had to make Type::setName public because setTypeName
needs it in order to retain compatibility with setValueName.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13795
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 26 May 2004 21:46:18 +0000 (21:46 +0000)]
Tighten up checking on SymbolTable interface to make it illegal to pass a
Type* where a Value* is expected.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13794
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Wed, 26 May 2004 21:41:09 +0000 (21:41 +0000)]
Refactor common initialization code in private init() functions.
This is a first step in supplying append to basic block constructors
for all instruction types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13793
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Wed, 26 May 2004 21:38:14 +0000 (21:38 +0000)]
Use one destination constructor for the unconditional branch.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13792
91177308-0d34-0410-b5e6-
96231b3b80d8
Misha Brukman [Wed, 26 May 2004 17:42:51 +0000 (17:42 +0000)]
Fix spelling of doxygen directive.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13791
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 26 May 2004 17:20:52 +0000 (17:20 +0000)]
Fix PR344: the incorrect remove was being used.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13790
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 26 May 2004 17:14:49 +0000 (17:14 +0000)]
Make the test use the %A type
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13789
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 26 May 2004 17:08:25 +0000 (17:08 +0000)]
A quick and ugly hack to fix PR345. I used TypeTy specifically to make
Reid cringe :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13788
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Wed, 26 May 2004 16:52:55 +0000 (16:52 +0000)]
Fix a bug in reid's checkin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13787
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 26 May 2004 08:41:35 +0000 (08:41 +0000)]
Added a section on the SymbolTable class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13786
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 26 May 2004 07:37:11 +0000 (07:37 +0000)]
Part of bug 122:
This change removes the BuildBytecodeInfo flag from the SlotCalculator
class. This flag was needed to distinguish between the Bytecode/Writer
and the AsmWriter. Now that AsmWriter doesn't use SlotCalculator, we can
remove this flag and simplify some code. Also, some minor name changes
to CachedWriter.h needed to be committed (missed in previous commit).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13785
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Wed, 26 May 2004 07:18:52 +0000 (07:18 +0000)]
Part of bug 122. Removed dependency of AsmWriter on SlotCalculator by
incorporating a significantly simpler "SlotMachine" into this file. The
SlotMachine is tailored for use by only the AsmWriter whose requirements
for slot numbers are vastly different than from the Bytecode/Writer. Code
change passes all Feature and Regression tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13784
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Wed, 26 May 2004 06:27:36 +0000 (06:27 +0000)]
Adding scheduling class.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13783
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Wed, 26 May 2004 06:27:18 +0000 (06:27 +0000)]
Updating my cvs versions. THis is still in progress and much will be changed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13782
91177308-0d34-0410-b5e6-
96231b3b80d8
Brian Gaeke [Tue, 25 May 2004 20:43:47 +0000 (20:43 +0000)]
Add a (not very meaningful) default constructor for AllocInfo objects.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13773
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 20:09:05 +0000 (20:09 +0000)]
Put SlotTable.h inclusion back at front of list to be coding standards
compliant. Thanks, Chris.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13771
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 20:01:25 +0000 (20:01 +0000)]
Change the install-includes target to completely ignore the llvm/Internal
directory. Headers located there are not public to LLVM but are shared
between LLVM modules.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13769
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 19:09:25 +0000 (19:09 +0000)]
Make the constructor explicit so we can't implicitly convert bool to
SlotTable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13766
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 19:03:21 +0000 (19:03 +0000)]
Make some improvements suggested by Chris.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13765
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 18:44:51 +0000 (18:44 +0000)]
Adding the initial implementation of the SlotTable class. This class is
the Abstract Data Type that holds slot number values and associates them
with Type* and Value*. The SlotTable is simply the holder of the slot
numbers and provides a controlled interface for building the table. It does
not enforce any particular idiom or functionality for manipulating the slot
numbers.
This is part of bug_122. The SlotCalculator and SlotMachine classes will
follow.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13764
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Tue, 25 May 2004 18:24:27 +0000 (18:24 +0000)]
Remove this file as well as it is no longer needed nor it compiles
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13762
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 18:14:38 +0000 (18:14 +0000)]
Document a couple functions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13761
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 25 May 2004 17:44:58 +0000 (17:44 +0000)]
Make use of the doc_author and doc_code styles. <tt>'ify llvm names. Minor
other edits
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13760
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 17:29:59 +0000 (17:29 +0000)]
Changed to use SymbolTable's new iteration interfaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13759
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 17:29:21 +0000 (17:29 +0000)]
Changed to use SymbolTable's new lookup interface.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13758
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 17:28:35 +0000 (17:28 +0000)]
Removed unused, useless header file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13757
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 15:47:57 +0000 (15:47 +0000)]
Added a bit on slot numbers.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13756
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 15:20:47 +0000 (15:20 +0000)]
Made it illegal to pass a Type* through one of the Value* interfaces. The
SymbolTable will now assert if this is done. This didn't find any incorrect
usage of SymbolTable but will prevent future mistakes until Type != Value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13755
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:53:40 +0000 (08:53 +0000)]
Convert to SymbolTable's new iteration interface.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13754
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:53:29 +0000 (08:53 +0000)]
Convert to SymbolTable's new iteration interface. Remove tabs.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13753
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:52:42 +0000 (08:52 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13752
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:52:20 +0000 (08:52 +0000)]
Convert to SymbolTable's new lookup and iteration interfaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13751
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:51:36 +0000 (08:51 +0000)]
Remove unused header file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13750
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:51:25 +0000 (08:51 +0000)]
Make this pass simply invoke SymbolTable::strip().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13749
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:50:52 +0000 (08:50 +0000)]
Remove use of Type::TypeTy from an assert. It will go away soon.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13748
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:46:15 +0000 (08:46 +0000)]
Get rid of a wart: useless getFILE function is now a cast macro.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13747
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:46:04 +0000 (08:46 +0000)]
Give Type its own dump() method in preparation for Type != Value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13746
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:45:53 +0000 (08:45 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13745
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:45:42 +0000 (08:45 +0000)]
Convert dump() method to call Type::dump() instead of Value::dump().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13744
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Tue, 25 May 2004 08:45:31 +0000 (08:45 +0000)]
Fix a small typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13743
91177308-0d34-0410-b5e6-
96231b3b80d8
Vikram S. Adve [Tue, 25 May 2004 08:14:52 +0000 (08:14 +0000)]
Recognize memalign and friends, and handle them specially.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13741
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 25 May 2004 06:32:08 +0000 (06:32 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13740
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 25 May 2004 06:30:49 +0000 (06:30 +0000)]
New testcase
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13739
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 25 May 2004 05:32:43 +0000 (05:32 +0000)]
Implement some helpers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13738
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 25 May 2004 05:32:13 +0000 (05:32 +0000)]
Add some helpers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13737
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 25 May 2004 04:29:21 +0000 (04:29 +0000)]
Implement instcombine/cast.ll:test16:
Canonicalize cast X to bool into a setne instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13736
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Tue, 25 May 2004 04:28:43 +0000 (04:28 +0000)]
Add a new test16 and fix some other tests that were not properly written
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13735
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 May 2004 18:05:58 +0000 (18:05 +0000)]
Make doc_code shrink-to-fit. This only works in mozilla, but it doesn't
hurt legibility on IE
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13720
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Mon, 24 May 2004 07:14:35 +0000 (07:14 +0000)]
Moved MachineBasicBlock deconstructor to cpp file and removed it from LeakDetector to fix memory leak bug.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13718
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 May 2004 06:24:46 +0000 (06:24 +0000)]
Fix a bug in my previous checkin
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13717
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Mon, 24 May 2004 06:11:51 +0000 (06:11 +0000)]
Added MachineFunction parent* to MachineBasicBlock. Customized ilist template
to set the parent when a MachineBasicBlock is added to a MachineFunction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13716
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 May 2004 05:35:17 +0000 (05:35 +0000)]
Lots of minor typo fixes, some minor inaccuracies fixed, and some new material.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13715
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 May 2004 05:34:32 +0000 (05:34 +0000)]
new feature
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13714
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 May 2004 04:55:32 +0000 (04:55 +0000)]
Fix a couple of busted li's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13713
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 May 2004 04:54:31 +0000 (04:54 +0000)]
Add a todo to make it clear that the section is not done
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13712
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 May 2004 04:53:32 +0000 (04:53 +0000)]
Personally, I think that documentation is as important as code. Increase
the visibility of dox changes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13711
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 May 2004 04:50:25 +0000 (04:50 +0000)]
Fix a div problem that was causing some wierd indentation. Get more div'y
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13710
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 May 2004 04:45:52 +0000 (04:45 +0000)]
Add some notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13709
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 May 2004 04:43:49 +0000 (04:43 +0000)]
Add a link to the GC doc
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13708
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Mon, 24 May 2004 03:44:52 +0000 (03:44 +0000)]
Eliminate an explicit use of the LLVM basic block, using getParent instead,
which simplifies the code
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13707
91177308-0d34-0410-b5e6-
96231b3b80d8
Tanya Lattner [Mon, 24 May 2004 03:14:18 +0000 (03:14 +0000)]
Changed clone to be const.
Changed copy constructor to set parent, prev, and next pointers to null.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13706
91177308-0d34-0410-b5e6-
96231b3b80d8
Alkis Evlogimenos [Sun, 23 May 2004 23:02:35 +0000 (23:02 +0000)]
Eliminate warnings
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13704
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:31:00 +0000 (21:31 +0000)]
Testcases for andersen's alias analysis.
I think this is all of the stuff I had pending in my tree..
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13703
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:27:29 +0000 (21:27 +0000)]
Spelling people's names right is kinda important
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13702
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:26:29 +0000 (21:26 +0000)]
Build the garbage collectors
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13701
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:25:59 +0000 (21:25 +0000)]
Initial checkin of GC implementation support files
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13700
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Spencer [Sun, 23 May 2004 21:25:50 +0000 (21:25 +0000)]
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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13699
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:25:45 +0000 (21:25 +0000)]
Check in an EARLY START on a simple copying collector
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13698
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:24:50 +0000 (21:24 +0000)]
Add a simple testcase for garbage collection support
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13697
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:23:35 +0000 (21:23 +0000)]
Add support for accurate garbage collection to the LLVM code generators
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13696
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:23:12 +0000 (21:23 +0000)]
Add some notes to myself, no functional changes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13695
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:22:55 +0000 (21:22 +0000)]
minor wording change
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13694
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:22:17 +0000 (21:22 +0000)]
Fix cases where we missed inlining some more obvious candidates because the
caller was in an SCC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13693
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:21:35 +0000 (21:21 +0000)]
Simplify the interface and remove an unneeded #include
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13692
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:21:17 +0000 (21:21 +0000)]
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13691
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:20:19 +0000 (21:20 +0000)]
Adjust to the changes in the AliasSetTracker interface
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13690
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:19:55 +0000 (21:19 +0000)]
Add support for replacement of formal arguments with simpler expressions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13689
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:19:22 +0000 (21:19 +0000)]
Implement the -lowergc pass which is used by code generators (like the CBE)
that do not have builtin support for garbage collection.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13688
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:16:51 +0000 (21:16 +0000)]
Recognize and verify the new GC intrinsics.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13687
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:16:33 +0000 (21:16 +0000)]
Add the new GC intrinsics
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13686
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:16:13 +0000 (21:16 +0000)]
Add a new prototype
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13685
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:15:48 +0000 (21:15 +0000)]
Changes to work with the changes to the AliasAnalysis interface. The -no-aa
class is now in the BasicAliasAnalysis.cpp file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13684
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:15:12 +0000 (21:15 +0000)]
Move the -no-aa AA implementation into this file since both of these
alias analysis implementations are special: they do not autoforward to a
chained implementation of alias analysis
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13683
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:14:27 +0000 (21:14 +0000)]
Updates to work with the new auto-forwarding AA interface changes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13682
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:14:09 +0000 (21:14 +0000)]
Fix a really nasty bug with the -disable-ds-field-sensitivity option
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13681
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:13:51 +0000 (21:13 +0000)]
Update to match the autochaining interface that the AA interface uses
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13680
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:13:24 +0000 (21:13 +0000)]
Implement the interfaces to update value numbering information. Add an
assert.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13679
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:12:38 +0000 (21:12 +0000)]
Several *major* changes to the AA interfaces:
1. Provide interfaces so that clients can update alias analyses to reflect
the changes made by the transformations.
2. Change how alias analysis implementations work overall. In particular,
now clients will automatically forward to chained AA implementations: they
don't have to remember to do it themselves.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13678
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:11:17 +0000 (21:11 +0000)]
Add interfaces to update value numbering results
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13677
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:10:58 +0000 (21:10 +0000)]
Rename a method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13676
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:07:27 +0000 (21:07 +0000)]
Make use of the new doc_author class. "Seperate content from presentation" they said.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13675
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:06:58 +0000 (21:06 +0000)]
Lots of minor cleanups and clarifications
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13674
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Lattner [Sun, 23 May 2004 21:06:21 +0000 (21:06 +0000)]
Remove implemented stuff
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13673
91177308-0d34-0410-b5e6-
96231b3b80d8