1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 19:52:54 +01:00
Commit Graph

53 Commits

Author SHA1 Message Date
Chris Lattner
b0a2c5546b Method.h no longer includes BasicBlock.h
Method::inst_* is now in llvm/Support/InstIterator.h
GraphTraits specializations for BasicBlock and Methods are now in llvm/Support/CFG.h

llvm-svn: 1746
2002-02-12 21:07:25 +00:00
Chris Lattner
071f08916e Chuck fixed the GCC problems so this hack is now unneccesary
llvm-svn: 1519
2002-01-21 23:17:07 +00:00
Chris Lattner
3dc9a2a61f Changes to build successfully with GCC 3.02
llvm-svn: 1503
2002-01-20 22:54:45 +00:00
Chris Lattner
43c92f9dbd Remove unsized array support
llvm-svn: 1461
2001-12-14 16:30:51 +00:00
Chris Lattner
8ab6f31913 Add pointer indexing support
llvm-svn: 1460
2001-12-14 16:30:09 +00:00
Chris Lattner
c4a5815033 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
f6b7da2bb5 Rename ConstPoolVal -> Constant
Rename ConstPool*   -> Constant*
Rename ConstPoolVals.h -> ConstantVals.h

llvm-svn: 1407
2001-12-03 22:26:30 +00:00
Chris Lattner
bcf2df7058 Split the PHINode class out from the iOther.h file into the iPHINode.h file
llvm-svn: 1405
2001-12-03 18:02:31 +00:00
Chris Lattner
e577171af8 Implement internal method support
llvm-svn: 1374
2001-11-26 18:56:10 +00:00
Chris Lattner
47661d9be5 Implement array indexing
llvm-svn: 1337
2001-11-26 16:54:55 +00:00
Chris Lattner
7d0854c71e Remove debug info :(
llvm-svn: 1280
2001-11-12 21:52:57 +00:00
Chris Lattner
a6ada3716c Fix bug in new assertion
llvm-svn: 1279
2001-11-12 21:48:38 +00:00
Chris Lattner
3dc54c19b3 Add an assertion check
llvm-svn: 1276
2001-11-12 20:30:32 +00:00
Chris Lattner
2dce653a78 I don't know what I was thinking
llvm-svn: 1275
2001-11-12 20:30:12 +00:00
Chris Lattner
d61e4631f5 Fix major bugs in type resolution
llvm-svn: 1092
2001-11-03 03:27:53 +00:00
Chris Lattner
b0b7551e5f Frivolous cleanups
llvm-svn: 973
2001-10-24 06:21:22 +00:00
Chris Lattner
668806b733 Dang it, do NOT check in code that enables debugging. Bad chris
llvm-svn: 972
2001-10-24 05:14:35 +00:00
Chris Lattner
7ec504f5dc Changes to get some meaningful feedback from the bytecode reader. At some point this stuff should all be exception driven, but for now it is not.
llvm-svn: 970
2001-10-24 01:15:12 +00:00
Chris Lattner
1e04123949 Oops, didn't mean to check in enabled debugging support. :(
llvm-svn: 962
2001-10-23 03:21:42 +00:00
Chris Lattner
bc4f868dd8 Fixed a LONG standing, SCARY problem with bytecode encoding. It turns out to be an endian problem that only shows up with type 0 instructions in LARGE programs.
llvm-svn: 961
2001-10-23 03:21:10 +00:00
Chris Lattner
e8b0d4522f Fix another annoying bug that took forever to track down. This one involves abstract type resolution at a bad time that broke symbol tables.
llvm-svn: 958
2001-10-23 01:53:01 +00:00
Chris Lattner
9c5e9e028e Fix problem with a cast instruction that must be expanded to type 0
llvm-svn: 929
2001-10-21 00:14:44 +00:00
Chris Lattner
fd1ab08cba Rename ConstPoolPointerReference to ConstPoolPointerRef - My fingers get tired typing that much
llvm-svn: 822
2001-10-15 13:21:42 +00:00
Chris Lattner
9acb843577 External methods shouldn't have argument lists
llvm-svn: 807
2001-10-14 23:28:41 +00:00
Chris Lattner
601ab4b0ff * 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

llvm-svn: 760
2001-10-13 06:47:01 +00:00
Chris Lattner
5eb7388b84 Rename getNullPointer to getNull
llvm-svn: 708
2001-10-03 15:39:24 +00:00
Chris Lattner
a01eda3091 * 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
08b1dde37e Commit more code over to new cast style
llvm-svn: 697
2001-10-02 03:41:24 +00:00
Chris Lattner
ad1b0a1a83 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
4c684cde80 Add more support for new style casts
Convert more code to use them

llvm-svn: 695
2001-10-01 18:26:53 +00:00
Chris Lattner
b77eae1b27 Implement constant pointers, and null specifically in the parser, bytecode writer, and
bytecode reader.

llvm-svn: 668
2001-09-30 22:46:54 +00:00
Chris Lattner
9b45b18404 Pull iterators out of CFG.h and CFGdecls and put them in Support directory
llvm-svn: 664
2001-09-28 22:56:31 +00:00
Chris Lattner
ac91b150a7 Add support for global constants, and for initializers for constants
llvm-svn: 598
2001-09-18 04:01:05 +00:00
Chris Lattner
fb161a3063 Fix a bug with not removing method level types after compilation
llvm-svn: 582
2001-09-14 22:03:42 +00:00
Chris Lattner
ee86b5f051 getMethodType is now just getType
llvm-svn: 538
2001-09-10 20:08:52 +00:00
Chris Lattner
9d1629d688 Implement global variable support
llvm-svn: 530
2001-09-10 07:58:01 +00:00
Chris Lattner
0d073caf6c * Remove support for internal constant pool
* Support globally unique constants
* Support recursive and forward referenced types
* Support abstract types
* Add new BCR_TRACE macro to enable debugging of why the bytecode reader
  occasionally refuses to read something

llvm-svn: 448
2001-09-07 16:37:43 +00:00
Chris Lattner
29c977bd03 * Add calls to failure template so that it is actually possible to debug
why bytecode parsing is failing.  Just put a breakpoint in the failure
  templates.

llvm-svn: 323
2001-07-28 17:50:18 +00:00
Chris Lattner
fc1d7dd221 Add support for extern varargs methods & varargs method calls
llvm-svn: 297
2001-07-25 22:47:55 +00:00
Chris Lattner
2b73dd7866 Doh! Wrong accessor. Caused 'can not read bytecode' errors. :(
llvm-svn: 282
2001-07-23 18:51:23 +00:00
Chris Lattner
856ac86318 Add support to the bytecode reader to recognize floating point constants
llvm-svn: 189
2001-07-15 00:17:18 +00:00
Chris Lattner
6065e61656 Implementation of Store & GetElementPtr
llvm-svn: 164
2001-07-08 23:22:50 +00:00
Chris Lattner
dccda26cd8 Implemented shl, shl, & load instructions
llvm-svn: 161
2001-07-08 21:10:27 +00:00
Chris Lattner
3473967aeb Moved Cast from being a Unary instruction to being an "Other" instruction
llvm-svn: 160
2001-07-08 19:03:27 +00:00
Chris Lattner
7a7ddef47e Neg instruction removed. Cast instruction implemented.
llvm-svn: 156
2001-07-08 04:57:15 +00:00
Chris Lattner
1619a709b4 Convert BinaryOperand and UnaryOperator to only take instruction types of
the appropriate enum

llvm-svn: 153
2001-07-07 20:17:23 +00:00
Chris Lattner
c00392210d Broad superficial changes:
* Renamed getOpcode to getOpcodeName
* Changed getOpcodeName to return a const char * instead of string
* Added a getOpcode method to replace getInstType
* Changed code to use getOpcode instead of getInstType

llvm-svn: 152
2001-07-07 19:24:15 +00:00
Chris Lattner
6f7587e4d3 Changed the fundemental architecture of Operands for Instructions. Now
Operands are maintained as a vector<Use> in the User class, and operator
iterators are provided as before.  Getting an operand no longer requires
a virtual function call.

WARNING: getOperand(x) where x >= getNumOperands() will now assert instead
of returning null!

llvm-svn: 149
2001-07-07 08:36:50 +00:00
Chris Lattner
d616582a7a Miscellaneous cleanups:
* Convert post to pre-increment for for loops
  * Use generic programming more
  * Use new Value::cast* instructions
  * Use new Module, Method, & BasicBlock forwarding methods
  * Use new facilities in STLExtras.h
  * Use new Instruction::isPHINode() method

llvm-svn: 96
2001-06-27 23:41:11 +00:00
Chris Lattner
287398c2a9 Renamed get.*Operator to create seeing that it would have to be qualified
with the classname anyways.

llvm-svn: 74
2001-06-25 07:31:31 +00:00