Reid Spencer
355b0d88cb
****** ABOLISH ConstantPointerRef *****
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14919 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-17 23:26:57 +00:00
Reid Spencer
e2643aa9df
Extend constructor so that it can support GlobalValue's (with names).
...
Make GlobalValue a "classof" Constant
Fix the classof(Value*) to include GlobalValue's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14918 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-17 23:26:12 +00:00
Reid Spencer
d25e6cd128
Constant value not needed after CPR's disappear.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14917 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-17 23:23:30 +00:00
Reid Spencer
8b67f54767
Added a README to point users to the documentation on the design of this
...
library which is a prerequisite for maintaining the library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14909 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-17 08:39:53 +00:00
Chris Lattner
bc10c3b6c3
link.h causes problems on some platforms and is not needed on solaris, where
...
the comment came from.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14905 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-17 03:09:12 +00:00
Chris Lattner
9e02cf8266
Remove dead file
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14904 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-17 02:56:48 +00:00
Alkis Evlogimenos
8e9b219b67
Add convinience constructor for function calls with two args.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14885 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-16 12:04:28 +00:00
Chris Lattner
dcb115bc82
Add a new macro to be used for the end of enum lists.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14862 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-16 00:01:05 +00:00
Chris Lattner
5e87754250
Give SetVector range support
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14855 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-15 08:18:31 +00:00
Chris Lattner
80d94b88e1
Final fix for PR341: eliminate operator<<(ostream, Value*). Clients should
...
now send references to ostreams instead of pointers. Sending pointers to
ostreams will print their addresses.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14849 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-15 02:54:36 +00:00
Chris Lattner
0a8e8e1a4e
Fixes for PR341
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14847 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-15 02:51:31 +00:00
Chris Lattner
94009a5954
Fix for PR341
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14846 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-15 02:50:38 +00:00
Chris Lattner
654b710527
Yeah, how about those 'primative' types huh?
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14836 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-15 01:15:53 +00:00
Chris Lattner
ec90d8f80d
Make PATypeHolder and friends return non-const pointers to the types they
...
hold. Because types are basically immutable anyway, they should not be
referenced as "const Type*" everywhere. Just "Type*" should suffice!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14824 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-14 20:10:26 +00:00
Chris Lattner
b757f160fc
* Change code to use a static_cast instead of reinterpret_cast
...
* Add comments
* Add two new gep ctors for the very common case of creating a two operand
GEP instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14820 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-14 18:13:54 +00:00
Chris Lattner
c78631f0e2
Add a helper method. The StructType element is completely redundant in most
...
cases
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14777 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-12 20:36:08 +00:00
Chris Lattner
268f2583b9
Add a missing #include
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14773 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-12 20:25:33 +00:00
Chris Lattner
85e4eb6dc0
Fix warning compiling with VC++
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14772 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-12 20:25:04 +00:00
Chris Lattner
bbd913bb6d
Implement a new method useful for things like the inliner
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14768 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-12 01:17:52 +00:00
Chris Lattner
2845ece825
Add a new listener class for things that want to be informed about new
...
targets that are loaded
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14758 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-11 06:02:59 +00:00
Chris Lattner
635ffcdf58
Delete the allocate*TargetMachine functions. Move options to a header file
...
that makes sense.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14754 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-11 04:15:52 +00:00
Chris Lattner
cbc74123d8
Add a new TargetNameParser class, which is useful for parsing options.
...
Add two methods which are useful for autoselecting targets.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14748 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-11 03:59:46 +00:00
Chris Lattner
6a4dd24a99
Provide better support for pointer-valued command line arguments
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14746 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-11 03:18:30 +00:00
Chris Lattner
9f27ede92d
First cut at TargetMachineRegistry and RegisterTarget classes
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14742 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-11 02:43:43 +00:00
Chris Lattner
a51e273a76
Add two new "virtual static" methods to the TargetMachine class
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14741 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-11 02:43:07 +00:00
Chris Lattner
170d3af552
Add a new header
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14737 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-11 01:03:57 +00:00
Chris Lattner
20d20fc77d
Removed unneeded forward decl
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14727 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-09 17:02:57 +00:00
Chris Lattner
36002e43ec
Remove unused method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14726 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-09 16:48:13 +00:00
Chris Lattner
57cd1ff463
Eliminate the UID field in the Type class, bringing it down to 28 bytes.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14709 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-08 22:31:37 +00:00
Chris Lattner
ddc49d6121
Add a new method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14705 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-08 22:09:07 +00:00
Reid Spencer
800473c8df
Get rid of some cruft in the insert method.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14704 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-08 21:50:33 +00:00
Reid Spencer
4bb2867bc1
First version of a vector with uniqueness constraints (or a set with
...
deterministic, insertion-order iteration).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14702 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-08 19:36:21 +00:00
Misha Brukman
0f54f19f29
Fix spelling of `equivalent'
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14697 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-08 17:45:18 +00:00
Chris Lattner
e1d6799661
isSigned/isUnsigned/isInteger methods do not need to be virtual
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14694 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-08 17:29:36 +00:00
Chris Lattner
c29af0084f
Update comment.
...
Remove unused forward decl of Value.h
Make Type 32 bytes instead of 36 bytes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14692 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-08 16:09:38 +00:00
Chris Lattner
e2b4ae9d93
This file uses the Value class without a forward decl
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14691 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-08 15:54:29 +00:00
Alkis Evlogimenos
71bf404e9b
Add viewCFG() and viewCFGOnly() APIs.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14679 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-08 00:47:58 +00:00
Chris Lattner
8adbec89ce
Headers moved
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14665 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-07 06:35:22 +00:00
Chris Lattner
7ff5daa0b6
All of these now live in the DataStructure directory
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14664 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-07 06:32:53 +00:00
Chris Lattner
6c49989b3e
Move DSA headers into Analysis/DataStructure to make it more obvious
...
what is implemented by the DataStructure library.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14662 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-07 06:29:26 +00:00
Chris Lattner
efffdc9408
As much as I hate to say it, the whole setNode interface for DSNodeHandles
...
is HOPELESSLY broken. The problem is that the embedded getNode call can
change the offset of the node handle in unpredictable ways.
As it turns out, all of the clients of this method really want to set
both the node and the offset, thus it is more efficient (and less buggy)
to just do both of them in one method call. This fixes some obscure bugs
handling non-forwarded node handles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14660 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-07 06:12:52 +00:00
Reid Spencer
ba466362c4
Remove definition and use of OtherVal enumerator. This just fixes a thinko.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14634 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-06 01:30:36 +00:00
Reid Spencer
e0bc0c1822
Move SlotCalculator.h to lib/Bytecode/Writer since that is the only place
...
that needs it after the Type != Value changes (bug 122).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14605 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-04 11:36:31 +00:00
Reid Spencer
1847444e0c
Make all the virtual function (except destructor) inline so there are
...
default implementations without taking up a ton of space in a .cpp file.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14603 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-04 11:29:56 +00:00
Reid Spencer
ed3d16e443
Add a new, compatible, interface function for writing types as operands.
...
This is necessary because Types are no longer Values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14598 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-04 10:59:05 +00:00
Reid Spencer
2d59de545a
Added #include <iostream> since this header is no longer picked up from
...
the Value.h header.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14597 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-04 10:58:20 +00:00
Reid Spencer
da8440a6ae
- Remove enumerator TypeVal since Values can't be types any more
...
- Remove isa_impl relationship between Types and Values
- Add OtherVal so "other" users can interact with Values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14596 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-04 10:52:28 +00:00
Reid Spencer
88bdcd5d56
There is no longer a "Type" primitive type because Values and Types are
...
now distinct.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14595 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-04 10:50:43 +00:00
Reid Spencer
9d625274ea
Constify usage of Type* on the interface to ensure SymbolTable doesn't
...
modify types (it never should). Clean up some comments.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14594 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-04 10:49:41 +00:00
Reid Spencer
69e9abbb03
Remove all of the classof(const Value*) methods of the derived types since
...
the Type base class no longer derives from Value.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14593 91177308-0d34-0410-b5e6-96231b3b80d8
2004-07-04 10:48:27 +00:00