Chris Lattner
9772629794
Continue the implementation
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13818 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27 05:51:31 +00:00
Chris Lattner
a2f45b2802
A few more microsteps
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13817 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27 05:51:13 +00:00
Chris Lattner
56fff59841
gc_init now gets an argument
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13816 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27 05:51:00 +00:00
Chris Lattner
6623cffb6a
Uhh, that doesn't exist.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13815 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27 05:44:22 +00:00
Chris Lattner
5e77935852
Beta-test moving a header from include/Support into the llvm hierarchy:
...
it seems to work :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13814 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27 05:42:33 +00:00
Chris Lattner
bed85ff010
Header file moved
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13813 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27 05:41:36 +00:00
Chris Lattner
6f9e6074a9
Header moved
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13812 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27 05:37:32 +00:00
Chris Lattner
a5648f2ea2
Signals.h header moved. Eventually this should move into a lib/System library,
...
but not right now.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13811 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27 05:31:24 +00:00
Chris Lattner
3166440855
Moved header from include/Support/ to include/llvm/System
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13810 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27 05:30:18 +00:00
Chris Lattner
d895ffe122
Changes to make libSupport build on systems that don't have the wait syscall.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13806 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-27 01:20:55 +00:00
Alkis Evlogimenos
9a5dc4f7e5
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
2004-05-27 00:57:51 +00:00
John Criswell
f3ecf3a40c
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
2004-05-27 00:57:50 +00:00
Alkis Evlogimenos
75dbe8eafa
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
2004-05-27 00:15:23 +00:00
Chris Lattner
dcf3a6b124
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
2004-05-26 23:51:29 +00:00
Alkis Evlogimenos
fe3a093bc6
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
2004-05-26 22:50:28 +00:00
Alkis Evlogimenos
f6e8cb4954
Inline trivial constructors.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13797 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-26 22:07:18 +00:00
Reid Spencer
b03de0c780
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
2004-05-26 21:56:09 +00:00
Reid Spencer
75719bf239
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
2004-05-26 21:48:31 +00:00
Reid Spencer
9b41dcfa60
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
2004-05-26 21:46:18 +00:00
Alkis Evlogimenos
e5828f1fa7
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
2004-05-26 21:41:09 +00:00
Alkis Evlogimenos
99c58f4910
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
2004-05-26 21:38:14 +00:00
Misha Brukman
6f3512865e
Fix spelling of doxygen directive.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13791 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-26 17:42:51 +00:00
Chris Lattner
85acba6d58
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
2004-05-26 17:20:52 +00:00
Chris Lattner
c293cfa204
Make the test use the %A type
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13789 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-26 17:14:49 +00:00
Chris Lattner
42fbc7e809
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
2004-05-26 17:08:25 +00:00
Chris Lattner
94c43590ef
Fix a bug in reid's checkin
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13787 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-26 16:52:55 +00:00
Reid Spencer
096603ada5
Added a section on the SymbolTable class.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13786 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-26 08:41:35 +00:00
Reid Spencer
798ff64328
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
2004-05-26 07:37:11 +00:00
Reid Spencer
0d1b77e282
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
2004-05-26 07:18:52 +00:00
Tanya Lattner
ebac64534c
Adding scheduling class.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13783 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-26 06:27:36 +00:00
Tanya Lattner
4cffb588f5
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
2004-05-26 06:27:18 +00:00
Brian Gaeke
1812268126
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
2004-05-25 20:43:47 +00:00
Reid Spencer
6b1f58b6a4
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
2004-05-25 20:09:05 +00:00
Reid Spencer
4f840ed7e0
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
2004-05-25 20:01:25 +00:00
Reid Spencer
a85b8cf110
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
2004-05-25 19:09:25 +00:00
Reid Spencer
3751bd607b
Make some improvements suggested by Chris.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13765 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-25 19:03:21 +00:00
Reid Spencer
293a55f9f0
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
2004-05-25 18:44:51 +00:00
Alkis Evlogimenos
2662aa0f00
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
2004-05-25 18:24:27 +00:00
Reid Spencer
fa452c0550
Document a couple functions.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13761 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-25 18:14:38 +00:00
Chris Lattner
8dabb50287
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
2004-05-25 17:44:58 +00:00
Reid Spencer
94f2df295d
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
2004-05-25 17:29:59 +00:00
Reid Spencer
b152f9ff78
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
2004-05-25 17:29:21 +00:00
Reid Spencer
e0b295afd6
Removed unused, useless header file.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13757 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-25 17:28:35 +00:00
Reid Spencer
7aa940de94
Added a bit on slot numbers.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13756 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-25 15:47:57 +00:00
Reid Spencer
875510805f
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
2004-05-25 15:20:47 +00:00
Reid Spencer
9231ac8b6f
Convert to SymbolTable's new iteration interface.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13754 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-25 08:53:40 +00:00
Reid Spencer
af90b0d8b8
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
2004-05-25 08:53:29 +00:00
Reid Spencer
b870c5f7c5
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
2004-05-25 08:52:42 +00:00
Reid Spencer
567bc2cc1e
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
2004-05-25 08:52:20 +00:00
Reid Spencer
c8a1fcdb48
Remove unused header file.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@13750 91177308-0d34-0410-b5e6-96231b3b80d8
2004-05-25 08:51:36 +00:00