Reid Spencer
a23e595275
Avoid use of size(), which counts, in favor of other mechanisms.
...
llvm-svn: 15221
2004-07-25 21:44:54 +00:00
Reid Spencer
07e3e1c29b
Adjust to new Module.h interface for dependent libraries
...
Only write the target triple and deplibs if they are non-empty.
llvm-svn: 15216
2004-07-25 21:29:43 +00:00
Reid Spencer
11fc1457c0
bug 263:
...
Ensure the list of libraries is cleared.
llvm-svn: 15212
2004-07-25 18:08:57 +00:00
Reid Spencer
9077f12bb0
bug 263:
...
Add ability to write target triple and dependent libraries information.
llvm-svn: 15211
2004-07-25 18:08:18 +00:00
Alkis Evlogimenos
d4ef731684
Use name.empty() instead of testing against equality with the empty
...
string.
llvm-svn: 15191
2004-07-25 06:16:52 +00:00
Alkis Evlogimenos
d5f5b018e9
Disallow creation of named values of type void.
...
llvm-svn: 15190
2004-07-25 06:07:15 +00:00
Brian Gaeke
bdab8e50cd
Fix problem with inserting FunctionPasses that depend on ImmutablePasses
...
(e.g., LICM) into FunctionPassManagers. The problem is that we were
using a C-style cast to cast required analysis passes to PassClass*, but
if it's a FunctionPassManager, and the required analysis pass is an
ImmutablePass, the types aren't really compatible, so the C-style cast
causes a crash.
llvm-svn: 15140
2004-07-23 19:35:50 +00:00
Chris Lattner
59c0771263
Updates to gc intrinsics, contributed by Tobias Nurmiranta
...
llvm-svn: 15096
2004-07-22 05:50:01 +00:00
Chris Lattner
6dbdddfa28
classof implementations are now inlined
...
llvm-svn: 14987
2004-07-19 00:59:10 +00:00
Chris Lattner
1353dd5917
Method now returns null, dtor is inlined
...
llvm-svn: 14983
2004-07-19 00:55:35 +00:00
Chris Lattner
80105701f5
Fix infinite loop gccld'ing povray
...
llvm-svn: 14962
2004-07-18 08:12:57 +00:00
Reid Spencer
78477eb62b
Shrink some code.
...
llvm-svn: 14956
2004-07-18 01:04:19 +00:00
Reid Spencer
4a586ee919
bug 122:
...
- Move these functions from other places
- Provide implementations of Constant class overrides in GlobalValue
llvm-svn: 14936
2004-07-18 00:06:26 +00:00
Reid Spencer
ad3ee0e6bb
bug 122:
...
- Replace ConstantPointerRef usage with GlobalValue usage
- Replace tabs.
llvm-svn: 14935
2004-07-18 00:03:48 +00:00
Reid Spencer
873e776581
bug 122:
...
- Correct an assert to not have redundant isa<GlobalValue>
llvm-svn: 14934
2004-07-18 00:02:41 +00:00
Reid Spencer
27b74ad249
bug 122:
...
- Correct isa<Constant> for GlobalValue subclass
llvm-svn: 14933
2004-07-18 00:01:50 +00:00
Reid Spencer
4005f11ca3
bug 122:
...
- Correct isa<Constant> for GlobalValue subclass
- Fix some tabs and indentation.
llvm-svn: 14932
2004-07-17 23:57:36 +00:00
Reid Spencer
d83e76d112
bug 122:
...
- Module doesn't need to manage ConstantPointerRefs any more.
llvm-svn: 14931
2004-07-17 23:53:23 +00:00
Reid Spencer
0e268122cc
bug 122:
...
- Replace ConstantPointerRef usage with GlobalValue usage
- Correct isa<Constant> for GlobalValue subclass
llvm-svn: 14930
2004-07-17 23:50:57 +00:00
Reid Spencer
daba673c69
bug 122:
...
- Move GlobalValue and GlobalVariable implementations to Globals.cpp
llvm-svn: 14929
2004-07-17 23:50:19 +00:00
Reid Spencer
56e2bed436
bug 122:
...
- Replace ConstantPointerRef usage with GlobalValue usage
- Minimize redundant isa<GlobalValue> usage
- Correct isa<Constant> for GlobalValue subclass
- Delete ConstantPointerRef member function implementations
llvm-svn: 14928
2004-07-17 23:48:33 +00:00
Reid Spencer
bc38cd572f
bug 122:
...
- Replace ConstantPointerRef usage with GlobalValue usage
- Minimize redundant isa<GlobalValue> usage
- Correct isa<Constant> for GlobalValue subclass
llvm-svn: 14927
2004-07-17 23:47:01 +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
9b03d18729
IA64 compat
...
llvm-svn: 14867
2004-07-16 00:08:28 +00:00
Chris Lattner
94212f7102
Fixes for PR341
...
llvm-svn: 14847
2004-07-15 02:51:31 +00:00
Chris Lattner
d1b726d18f
Implement folding of expressions like 'uint cast (int* getelementptr (int*
...
null, uint 1) to uint)' to a constant integer. We can only do this with
primitive LLVM types, because other types have target-specific sizes.
llvm-svn: 14837
2004-07-15 01:16:59 +00:00
Chris Lattner
74bd192fba
Implement new helper methods for creating two-index GEP instructions
...
llvm-svn: 14821
2004-07-14 18:14:33 +00:00
Chris Lattner
183766f21e
Make Argument::print more resilient to non-verifiable IR
...
llvm-svn: 14801
2004-07-13 23:14:34 +00:00
Chris Lattner
1a1afa3566
Catch aggregates passed by value sooner rather than later.
...
llvm-svn: 14800
2004-07-13 20:09:51 +00:00
Chris Lattner
3f023d6df9
implement new helper method
...
llvm-svn: 14776
2004-07-12 20:35:11 +00:00
Chris Lattner
d581590c73
Fix a really nasty logic error that VC noticed.
...
Reid, this might matter to you :)
llvm-svn: 14774
2004-07-12 20:27:31 +00:00
Chris Lattner
b704df8365
Implement new method
...
llvm-svn: 14767
2004-07-12 01:17:34 +00:00
Reid Spencer
d45c27da89
Replace use of defunct Type::setName method with SymbolTable::insert.
...
Patch found and provided by Vladimir Merzliakov. Thanks Vladimir!
llvm-svn: 14732
2004-07-10 16:37:42 +00:00
Chris Lattner
d3f73edc53
Remove unused method
...
llvm-svn: 14726
2004-07-09 16:48:13 +00:00
Chris Lattner
ef1e8119ec
The uid mapping is no more
...
llvm-svn: 14708
2004-07-08 22:31:09 +00:00
Chris Lattner
77a943eb4c
Eliminate the SignedType and UnsignedType classes.
...
llvm-svn: 14695
2004-07-08 17:30:07 +00:00
Misha Brukman
f7987f7c2a
There is no error message to print out, end sentence with `!'
...
llvm-svn: 14678
2004-07-07 21:22:05 +00:00
Reid Spencer
ff9f74082f
Fix for bug 391.
...
Improve exeception handling around bcreader invocations.
llvm-svn: 14674
2004-07-07 21:01:38 +00:00
Chris Lattner
6c5e26142c
Fix regressions in these testcases:
...
Regression.Assembler.2002-01-24-BadSymbolTableAssert
Regression.Assembler.2002-01-24-ValueRefineAbsType
Found through the nightly tester :)
llvm-svn: 14671
2004-07-07 18:07:46 +00:00
Chris Lattner
ab994ac49a
The bytecode reader wants to be able to read types that are not quite resolved
...
yet, then resolve them in it's own sweet time. We must support this.
llvm-svn: 14666
2004-07-07 06:48:27 +00:00
Chris Lattner
006aea24ff
When folding constant expr gep's, don't force the use of long indices.
...
llvm-svn: 14658
2004-07-07 04:45:13 +00:00
Chris Lattner
b9f3b677ae
Make sure people don't make functiontypes with an invalid return type
...
llvm-svn: 14654
2004-07-06 23:25:19 +00:00
Chris Lattner
5c1abfecfe
Find bugs sooner rather than later. In this case, don't allow the creation
...
of instructions that don't have a first-class or void type.
llvm-svn: 14646
2004-07-06 17:44:17 +00:00
Reid Spencer
bfacdee814
Correct syntax typo .. ; -> :
...
llvm-svn: 14619
2004-07-04 12:15:11 +00:00
Reid Spencer
8a9a34f7ff
- Changes for bug 122
...
- Remove Tabs
- Add inserters needed since Value doesn't implement them any more
- Move some functions here to avoid cyclic header file dependencies.
llvm-svn: 14618
2004-07-04 12:14:17 +00:00
Reid Spencer
d02e1dc90d
- #include <iostream> since its not in Value.h any more.
...
llvm-svn: 14617
2004-07-04 11:55:37 +00:00
Reid Spencer
d242724126
Constify SymbolTable's use of Type* so that it never modifies them.
...
llvm-svn: 14616
2004-07-04 11:55:08 +00:00
Reid Spencer
64a2a1c92b
- #include <iostream> since its not in Value.h any more.
...
- constify use of Type* returned from symbol table.
llvm-svn: 14615
2004-07-04 11:52:49 +00:00
Reid Spencer
abf33934d2
#include <iostream> since its not in Value.h any more.
...
llvm-svn: 14614
2004-07-04 11:51:24 +00:00
Reid Spencer
93c3d80eb4
Adjust the slot machine to handle Types separately from Values. This was
...
done by doubling up the data structures so that Type based equivalents are
used. A consequence of this is overloading of function members that take a
Type* instead of a Value*. Various other cleanups related to Type != Value
(bug 122) were also implemented.
llvm-svn: 14613
2004-07-04 11:50:43 +00:00