Chris Lattner
49ad898e33
Implement the invoke instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@774 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 07:01:45 +00:00
Chris Lattner
56c5acbe96
* Fix a nefarious bugs: TypesEqual was wrong for varargs methods
...
* MethodType::get now takes a literal isVarArg method argument
* Use new style casts
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@773 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 07:01:33 +00:00
Chris Lattner
762a2418a1
Convert a runtime check into an assertion
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@772 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:58:56 +00:00
Chris Lattner
dd6dfbc8cc
* Add support for Module specific constants
...
* Add proper support for ConstPoolPointerReference's
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@771 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:58:40 +00:00
Chris Lattner
b1726accb2
Add new TerminatorInst ctor for invoke
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@770 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:57:47 +00:00
Chris Lattner
f5ec48d7b5
* Fix TODO
...
* Support ConstPoolPOinterReferences correctly
* New constPoolPointerNull subclass
* Add classof support for more classes
* Add proper support for ConstPoolPointerReference::getStrValue()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@769 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:57:33 +00:00
Chris Lattner
e369fcbe35
Fix broken #endif
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@768 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:54:54 +00:00
Chris Lattner
749655ff8e
* Add #include
...
* Fix #endif problems
* Change to getCalledValue instead of getCalledMethod
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@767 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:54:30 +00:00
Chris Lattner
d215fd1f56
Add StringList support
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@766 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:53:19 +00:00
Chris Lattner
93d39d23b4
Support the invoke instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@765 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:52:41 +00:00
Chris Lattner
5a0d4179df
Support indirect calls
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@764 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:52:31 +00:00
Chris Lattner
01bad7fbda
not is a keyword in ansi C++, avoid it
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@763 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:51:26 +00:00
Chris Lattner
80c685ff15
* Fix privacy issues on RegToRefVecMap
...
* Fix initialization order problems...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@762 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:51:01 +00:00
Chris Lattner
1b98c5c6c3
* Use new style casts more
...
* Add real support for global variable addresses initializing constants
* Fix encoding/decoding of VarArgs calls
* Support the Invoke instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@761 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:48:38 +00:00
Chris Lattner
05950c34a4
* Add real support for global variable addresses initializing constants
...
* Add minor optimization to BytecodeParser::refineAbstractType
* MethodType::get now take an explicit isVarArg parameter
* Fix encoding/decoding of VarArgs calls
* Support the Invoke instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@760 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:47:01 +00:00
Chris Lattner
e02fa8551d
* Support writing GlobalVariables with info comments by them
...
* Print out prototypes correctly in cases that we weren't before
* Use new style casts more
* Support printing new invoke instruction
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@759 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:42:36 +00:00
Chris Lattner
2079fde081
* Add support for forward references of global variable addresses
...
* Add support for numeric global variable addresses
* Clean up getVal function by refactoring it into several smaller functions
* MethodTypes are now specified with an explicit isVarArg parameter
* Break ValueRef into ConstValueRef & SymbolicValueRef components
* Add support for the new Invoke instruction
* Fix a few broken calls to Type::getName instead of Type::getDescription
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@758 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:41:08 +00:00
Chris Lattner
8c9c586768
Add operator< to ValID's so that they can be put in map's
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@757 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:37:47 +00:00
Chris Lattner
b4d22f9952
Remove exception specification
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@756 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:37:27 +00:00
Chris Lattner
5efbbc28f6
Support the new Invoke instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@755 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:37:14 +00:00
Chris Lattner
f1fef65157
Support pointers to globals happily
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@754 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:35:09 +00:00
Chris Lattner
8f486ddc76
Fix code to make GCC 2.96 happy
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@753 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:34:47 +00:00
Chris Lattner
9f9e2befd0
* Add support for Invoke instructions
...
* Add support for indirect calls
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@752 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:33:19 +00:00
Chris Lattner
2f004fdf18
Fix filename in comment
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@751 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:32:42 +00:00
Chris Lattner
432b0a7e3d
Better linux support. This file still sucks
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@750 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:31:55 +00:00
Chris Lattner
6fed025318
Fix broken #endif
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@749 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:31:00 +00:00
Chris Lattner
0b693fb125
not is a keyword in Ansi C++. Avoid it
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@748 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:30:39 +00:00
Chris Lattner
da47526737
Clean up initializers for GCC 2.96
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@747 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:30:10 +00:00
Chris Lattner
0f0dc4e47c
Remove exception specification. Only slows code down.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@746 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:25:30 +00:00
Chris Lattner
c5a22ce2b9
Changes to compile with GCC 2.96
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@745 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:25:03 +00:00
Chris Lattner
a0d7f9dbb7
Add comment indicating semantics of indirect calls
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@744 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:24:35 +00:00
Chris Lattner
742b1461db
New ctor for invoke inst
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@743 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:24:10 +00:00
Chris Lattner
11a6d82447
Add support for indirect calls
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@742 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:23:14 +00:00
Chris Lattner
d97f802453
Add some casts to make GCC 2.96 happy.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@741 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:20:07 +00:00
Chris Lattner
004adcafec
Add use_back() methods
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@740 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:18:19 +00:00
Chris Lattner
26e129e64f
Add classof implementations for User
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@739 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:18:05 +00:00
Chris Lattner
067238d5d9
Expose typedefs
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@738 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:17:50 +00:00
Chris Lattner
7502f635c6
Add support for module local constants
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@737 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:17:32 +00:00
Chris Lattner
72665af24d
Add new opcode for Invoke instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@736 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:15:20 +00:00
Chris Lattner
9686fd11c4
Minor changes, add new ctor for invoke instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@735 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:14:53 +00:00
Chris Lattner
16ddd02545
Add assertions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@734 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:12:38 +00:00
Chris Lattner
30bdaaa3fc
* Minor Formatting changes.
...
* MethodType now takes an explicit isVarArg arg instead of an implicit
voidTy on the argument list
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@733 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:12:30 +00:00
Chris Lattner
5ef35fdb72
* Add destroyConstant stuff to handle module local constants
...
* Add classof implementations for more ConstPoolVal subclasses
* Pull null pointer implementation stuff out of ConstPoolPointer into
a subclass ConstPoolPointerNull
* Implement ConstPoolPointerReference correctly and completely
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@732 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:11:10 +00:00
Chris Lattner
5168b27e79
Update todo's
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@731 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 06:09:34 +00:00
Chris Lattner
669bd7c2c2
Each tools should not make tags
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@730 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-13 05:10:29 +00:00
Ruchira Sasanka
d33238bb7b
--corrected coalescing test: coalsed only if two are of the same reg class
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@729 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-12 17:48:18 +00:00
Ruchira Sasanka
c1daae895d
added support for implict operands in machine instruction
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@728 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-12 17:47:23 +00:00
Ruchira Sasanka
598641b4ca
--added support for implicit operands in machine instructions
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@727 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-12 17:46:27 +00:00
Vikram S. Adve
c68059ebc1
Delete *.s on clean.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@726 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-11 04:24:10 +00:00
Vikram S. Adve
a995e6086d
Record implicitRefs for each machine instruction instead of
...
each VM instruction.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@725 91177308-0d34-0410-b5e6-96231b3b80d8
2001-10-11 04:23:19 +00:00