52 Commits

Author SHA1 Message Date
Misha Brukman
fa100531e1 Fix spelling/grammar.
llvm-svn: 9023
2003-10-10 17:54:14 +00:00
Chris Lattner
3284ed725a Reject "llvm." as a function name
llvm-svn: 8608
2003-09-19 19:31:41 +00:00
Chris Lattner
c1b1651210 Change the semancics of the dropallrefs method
llvm-svn: 8572
2003-09-17 04:58:59 +00:00
John Criswell
f711d34e98 Reverting back to the previous revision.
We want to check for length 5 because we might get the "llvm." string as the
name.  That string is in the LLVM namespace and should be checked as such.
We also don't have to worry about garbage data because (I believe) the string
class will return a valid value.  So, the switch statement will work and we
don't have to worry about the code wandering into segfault land.

llvm-svn: 8419
2003-09-09 16:58:41 +00:00
John Criswell
8d575cb2e1 Modified the check for intrinsic functions. All intrinsic functions have to
be at least 6 characters, since something must follow the "llvm." string in the
function name.
This seems to fix an assertion failure with the SingleSource tests, too.

llvm-svn: 8418
2003-09-09 16:36:09 +00:00
Chris Lattner
04ecefe232 Eliminate support for the llvm.unwind intrinisic, using the Unwind instruction instead
llvm-svn: 8411
2003-09-08 19:44:26 +00:00
Chris Lattner
ea9891311a As it turns out, things will be simpler than I first expected. We no longer
need any exception handling intrinsics beyond llvm.unwind. (yaay)

llvm-svn: 8145
2003-08-25 22:35:01 +00:00
Chris Lattner
7da3571af9 rethrow is really the language independent primitive here. "throw" can be written
in terms of it and llvm.exc.setcurrent.

Rework the intrinsics.

llvm-svn: 8110
2003-08-24 12:24:08 +00:00
Chris Lattner
ca3e569269 Fix copy-and-paste-o
llvm-svn: 8104
2003-08-24 06:57:53 +00:00
Chris Lattner
ade9410c99 Initial support for recognizing LLVM exception handling intrinsics
llvm-svn: 8102
2003-08-24 05:30:29 +00:00
Chris Lattner
748e9e143b Add intrinsics for the llvm.sig(set|long)jmp functions
llvm-svn: 7949
2003-08-18 15:41:24 +00:00
Chris Lattner
4159fdaef2 Add a bunch of new Alpha Intrinsics for Rahul Joshi
llvm-svn: 7646
2003-08-06 20:08:25 +00:00
Chris Lattner
60104f00c7 Add support for Alpha intrinsics, contributed by Rahul Joshi
llvm-svn: 7373
2003-07-28 21:20:57 +00:00
Chris Lattner
192623ec93 Add support for setjmp/longjmp primitives
Patch checked in for Bill Wendling :)

llvm-svn: 6241
2003-05-17 22:26:33 +00:00
Chris Lattner
bb346d07b5 Add more support for intrinsic functions and for varargs stuff
llvm-svn: 6035
2003-05-08 03:47:33 +00:00
Chris Lattner
379a8d2d1c Add new linkage types to support a real frontend
llvm-svn: 5786
2003-04-16 20:28:45 +00:00
Chris Lattner
98cf1f5d64 - Eliminated the deferred symbol table stuff in Module & Function, it really
wasn't an optimization and it was causing lots of bugs.

llvm-svn: 4779
2002-11-20 18:36:02 +00:00
Chris Lattner
b251c3d727 Eliminate the concept of a deferred symbol table. The optimization really isn't,
and it causes obscure bugs to show up in passes.

llvm-svn: 4777
2002-11-20 18:07:48 +00:00
Chris Lattner
33100eddd2 - Eliminate SymbolTable::ParentSymTab, ST::localLookup, and
Function::ParentSymTab.  These aren't needed at all.

llvm-svn: 4186
2002-10-15 21:26:29 +00:00
Chris Lattner
149376dee5 - Change Function's so that their argument list is populated when they are
constructed.  Before, external functions would have an empty argument list,
    now a Function ALWAYS has a populated argument list.

llvm-svn: 4149
2002-10-13 20:57:00 +00:00
Vikram S. Adve
0267d0c62e Remove specification of argument default from cpp file.
llvm-svn: 3772
2002-09-17 01:17:57 +00:00
Chris Lattner
184b298edc Enable "garbage detection" of LLVM objects. Now users should be obnoxious
warnings.  If they accidentally leak LLVM Value's.

llvm-svn: 3620
2002-09-08 18:59:35 +00:00
Chris Lattner
9ed7aef651 Move code out of header files into .cpp files to make future changes easier
llvm-svn: 3605
2002-09-06 21:33:15 +00:00
Chris Lattner
6213ae0028 * Remove extraneous #includes
* Add extra argument to Function ctor to allow automatic insertion into module

llvm-svn: 3600
2002-09-06 20:46:32 +00:00
Chris Lattner
a82ee2df46 *** empty log message ***
llvm-svn: 3065
2002-07-24 22:08:53 +00:00
Chris Lattner
113f4f4609 MEGAPATCH checkin.
For details, See: docs/2002-06-25-MegaPatchInfo.txt

llvm-svn: 2779
2002-06-25 16:13:24 +00:00
Chris Lattner
d5a847057b Eliminate duplicate or unneccesary #include's
llvm-svn: 2397
2002-04-29 17:42:12 +00:00
Chris Lattner
2c8ff6345f * Incorporate the contents of SymTabValue into Function and Module
* Module no longer subclasses Value

llvm-svn: 2355
2002-04-28 04:51:51 +00:00
Chris Lattner
d255ae24db Move FunctionArgument out of iOther.h into Argument.h and rename class to
be 'Argument' instead of FunctionArgument.

Move Argument implementation to Function.cpp

llvm-svn: 2211
2002-04-09 19:39:35 +00:00
Chris Lattner
6e6f5be53d Move include/llvm/ValueHolderImpl.h to lib/VMCore/ValueHolderImpl.h
llvm-svn: 2156
2002-04-08 00:15:29 +00:00
Chris Lattner
91db58298a s/Method/Function
llvm-svn: 2034
2002-03-29 03:44:36 +00:00
Chris Lattner
57698e2c0b Change references from Method to Function
change references from MethodARgument to FunctionArgument

llvm-svn: 1991
2002-03-26 18:01:55 +00:00
Chris Lattner
4e8c4877aa Rename Method to Function
llvm-svn: 1957
2002-03-23 22:51:58 +00:00
Chris Lattner
7f74a56e24 Changes to build successfully with GCC 3.02
llvm-svn: 1503
2002-01-20 22:54:45 +00:00
Chris Lattner
2413b160ec Renamed inst_const_iterator -> const_inst_iterator
Renamed op_const_iterator   -> const_op_iterator
Renamed PointerType::getValueType() -> PointerType::getElementType()

llvm-svn: 1408
2001-12-04 00:03:30 +00:00
Chris Lattner
3462ae3ad7 Rename ConstPoolVal -> Constant
Rename ConstPool*   -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h

llvm-svn: 1407
2001-12-03 22:26:30 +00:00
Chris Lattner
7a787227d8 Implement internal
llvm-svn: 1385
2001-11-26 19:14:56 +00:00
Vikram S. Adve
b375b89e00 Removed MachineCodeForMethod object and made it an annotation.
llvm-svn: 1183
2001-11-08 04:38:58 +00:00
Vikram S. Adve
0009da41c6 Delete MachineCodeInfoForMethod object.
llvm-svn: 956
2001-10-22 22:32:11 +00:00
Vikram S. Adve
4e594bebba Added MachineCodeForMethod object in class Method.
llvm-svn: 949
2001-10-22 13:52:47 +00:00
Chris Lattner
f96ef663e0 It is valid to have unsigned arrays as constants... the linker may initialize them later
llvm-svn: 923
2001-10-20 06:43:05 +00:00
Chris Lattner
2503325027 Factor parentness out of Module & GlobalVariable into GlobalValue
Implement SymbolTable debug/dump utility

llvm-svn: 710
2001-10-03 19:28:15 +00:00
Chris Lattner
7fac070215 * Both Method & GlobalVariable now subclass GlobalValue
* ConstPoolPointerReference now represents a pointer to a GlobalValue
* Methods name references are now explicit pointers to methods
* Rename Value::GlobalVal to Value::GlobalVariableVal to avoid confusion

llvm-svn: 703
2001-10-03 14:53:21 +00:00
Chris Lattner
3856934386 Convert more code to use new style casts
Eliminate old style casts from value.h

llvm-svn: 696
2001-10-01 20:11:19 +00:00
Chris Lattner
e2c8d43e1d Remove the unsized array constraint
llvm-svn: 599
2001-09-18 04:38:32 +00:00
Chris Lattner
3779864fcf Add support for global constants, and for initializers for constants
llvm-svn: 598
2001-09-18 04:01:05 +00:00
Chris Lattner
fe7b461376 Use correct style casts
llvm-svn: 545
2001-09-10 20:11:44 +00:00
Chris Lattner
da9755002f Implement global variable support
llvm-svn: 530
2001-09-10 07:58:01 +00:00
Chris Lattner
5c764a5a9b Support new setName interface
llvm-svn: 462
2001-09-07 16:47:18 +00:00
Chris Lattner
f2a738cfe2 * ValueHolder now takes 3 arguments
* Added a few methods to ConstantPool
* ConstPoolVal no longer derives from Value
* Method & Module multiply inherit from SymTabValue & Value now
* Added a GetElementPtrInst::isStructSelector() method

llvm-svn: 184
2001-07-14 06:13:19 +00:00