Commit Graph

2456 Commits

Author SHA1 Message Date
Chris Lattner
d853be2cff link.h causes problems on some platforms and is not needed on solaris, where
the comment came from.

llvm-svn: 14905
2004-07-17 03:09:12 +00:00
Chris Lattner
720ae1e5b3 Remove dead file
llvm-svn: 14904
2004-07-17 02:56:48 +00:00
Alkis Evlogimenos
ddd1db50f9 Add convinience constructor for function calls with two args.
llvm-svn: 14885
2004-07-16 12:04:28 +00:00
Chris Lattner
ea8ae81bf9 Add a new macro to be used for the end of enum lists.
llvm-svn: 14862
2004-07-16 00:01:05 +00:00
Chris Lattner
1f83f10da7 Give SetVector range support
llvm-svn: 14855
2004-07-15 08:18:31 +00:00
Chris Lattner
c19f2134fc 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.

llvm-svn: 14849
2004-07-15 02:54:36 +00:00
Chris Lattner
94212f7102 Fixes for PR341
llvm-svn: 14847
2004-07-15 02:51:31 +00:00
Chris Lattner
5ab6b23a7d Fix for PR341
llvm-svn: 14846
2004-07-15 02:50:38 +00:00
Chris Lattner
26e5829b8f Yeah, how about those 'primative' types huh?
llvm-svn: 14836
2004-07-15 01:15:53 +00:00
Chris Lattner
9e4dad1400 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!

llvm-svn: 14824
2004-07-14 20:10:26 +00:00
Chris Lattner
91169a26b5 * 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.

llvm-svn: 14820
2004-07-14 18:13:54 +00:00
Chris Lattner
10686c55cc Add a helper method. The StructType element is completely redundant in most
cases

llvm-svn: 14777
2004-07-12 20:36:08 +00:00
Chris Lattner
528291513f Add a missing #include
llvm-svn: 14773
2004-07-12 20:25:33 +00:00
Chris Lattner
2bf0308d44 Fix warning compiling with VC++
llvm-svn: 14772
2004-07-12 20:25:04 +00:00
Chris Lattner
4d2009965c Implement a new method useful for things like the inliner
llvm-svn: 14768
2004-07-12 01:17:52 +00:00
Chris Lattner
050495885f Add a new listener class for things that want to be informed about new
targets that are loaded

llvm-svn: 14758
2004-07-11 06:02:59 +00:00
Chris Lattner
2ea95d837e Delete the allocate*TargetMachine functions. Move options to a header file
that makes sense.

llvm-svn: 14754
2004-07-11 04:15:52 +00:00
Chris Lattner
2a79beb587 Add a new TargetNameParser class, which is useful for parsing options.
Add two methods which are useful for autoselecting targets.

llvm-svn: 14748
2004-07-11 03:59:46 +00:00
Chris Lattner
3f154d5c7c Provide better support for pointer-valued command line arguments
llvm-svn: 14746
2004-07-11 03:18:30 +00:00
Chris Lattner
195638502a First cut at TargetMachineRegistry and RegisterTarget classes
llvm-svn: 14742
2004-07-11 02:43:43 +00:00
Chris Lattner
8b4d801eab Add two new "virtual static" methods to the TargetMachine class
llvm-svn: 14741
2004-07-11 02:43:07 +00:00
Chris Lattner
55cd4a8b7b Add a new header
llvm-svn: 14737
2004-07-11 01:03:57 +00:00
Chris Lattner
a46346890c Removed unneeded forward decl
llvm-svn: 14727
2004-07-09 17:02:57 +00:00
Chris Lattner
d3f73edc53 Remove unused method
llvm-svn: 14726
2004-07-09 16:48:13 +00:00
Chris Lattner
235331d922 Eliminate the UID field in the Type class, bringing it down to 28 bytes.
llvm-svn: 14709
2004-07-08 22:31:37 +00:00
Chris Lattner
c03416c90a Add a new method
llvm-svn: 14705
2004-07-08 22:09:07 +00:00
Reid Spencer
abd8f7a30f Get rid of some cruft in the insert method.
llvm-svn: 14704
2004-07-08 21:50:33 +00:00
Reid Spencer
6996ff8254 First version of a vector with uniqueness constraints (or a set with
deterministic, insertion-order iteration).

llvm-svn: 14702
2004-07-08 19:36:21 +00:00
Misha Brukman
54115c22de Fix spelling of `equivalent'
llvm-svn: 14697
2004-07-08 17:45:18 +00:00
Chris Lattner
1aeb7ed7e4 isSigned/isUnsigned/isInteger methods do not need to be virtual
llvm-svn: 14694
2004-07-08 17:29:36 +00:00
Chris Lattner
74df119be3 Update comment.
Remove unused forward decl of Value.h
Make Type 32 bytes instead of 36 bytes

llvm-svn: 14692
2004-07-08 16:09:38 +00:00
Chris Lattner
c301c035d2 This file uses the Value class without a forward decl
llvm-svn: 14691
2004-07-08 15:54:29 +00:00
Alkis Evlogimenos
e7e19f771f Add viewCFG() and viewCFGOnly() APIs.
llvm-svn: 14679
2004-07-08 00:47:58 +00:00
Chris Lattner
c2b3e11473 All of these now live in the DataStructure directory
llvm-svn: 14664
2004-07-07 06:32:53 +00:00
Chris Lattner
bd3218fef2 Move DSA headers into Analysis/DataStructure to make it more obvious
what is implemented by the DataStructure library.

llvm-svn: 14662
2004-07-07 06:29:26 +00:00
Chris Lattner
fb2f56c7c8 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.

llvm-svn: 14660
2004-07-07 06:12:52 +00:00
Reid Spencer
3e8a01d80f Remove definition and use of OtherVal enumerator. This just fixes a thinko.
llvm-svn: 14634
2004-07-06 01:30:36 +00:00
Reid Spencer
37b31cbcba Move SlotCalculator.h to lib/Bytecode/Writer since that is the only place
that needs it after the Type != Value changes (bug 122).

llvm-svn: 14605
2004-07-04 11:36:31 +00:00
Reid Spencer
725398ad54 Make all the virtual function (except destructor) inline so there are
default implementations without taking up a ton of space in a .cpp file.

llvm-svn: 14603
2004-07-04 11:29:56 +00:00
Reid Spencer
a53681ae93 Add a new, compatible, interface function for writing types as operands.
This is necessary because Types are no longer Values.

llvm-svn: 14598
2004-07-04 10:59:05 +00:00
Reid Spencer
925f7fd54c Added #include <iostream> since this header is no longer picked up from
the Value.h header.

llvm-svn: 14597
2004-07-04 10:58:20 +00:00
Reid Spencer
678b551d2b - 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.

llvm-svn: 14596
2004-07-04 10:52:28 +00:00
Reid Spencer
eb12af7769 There is no longer a "Type" primitive type because Values and Types are
now distinct.

llvm-svn: 14595
2004-07-04 10:50:43 +00:00
Reid Spencer
ff486345fd Constify usage of Type* on the interface to ensure SymbolTable doesn't
modify types (it never should). Clean up some comments.

llvm-svn: 14594
2004-07-04 10:49:41 +00:00
Reid Spencer
037f53dadd Remove all of the classof(const Value*) methods of the derived types since
the Type base class no longer derives from Value.

llvm-svn: 14593
2004-07-04 10:48:27 +00:00
Reid Spencer
01068980b7 Make Type have no base classes. Previously it inherited Value. Also
removed the TypeTyID and TypeTy members so that the notion of the
"Type Type" is no longer present in LLVM. Various other adjustments
resulting from these changes were also made.

llvm-svn: 14592
2004-07-04 10:46:49 +00:00
Alkis Evlogimenos
b60ef8f308 Add more operators.
llvm-svn: 14589
2004-07-04 01:30:54 +00:00
Chris Lattner
f0af72ac49 Fix Type::isSized() to realize that "{ opaque }" is not sized
llvm-svn: 14585
2004-07-02 23:20:17 +00:00
Chris Lattner
d61ef00bc5 Since we are in the department of redundancy department, at least be correct
llvm-svn: 14582
2004-07-02 18:41:18 +00:00
Chris Lattner
c71f8fcb8e Add a new pass for code generators to use
llvm-svn: 14562
2004-07-02 05:44:13 +00:00