1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-26 04:32:44 +01:00
Commit Graph

478 Commits

Author SHA1 Message Date
Chris Lattner
5c5ee6b8b4 Remove extra space
llvm-svn: 482
2001-09-07 21:03:14 +00:00
Chris Lattner
2db0f7a35f Remove ReversePostOrderTraversal declaration
llvm-svn: 481
2001-09-07 21:02:50 +00:00
Chris Lattner
a1f1e01665 * Don't predefine ReversePostOrderTraversal because it adds a dependence on vector
* static ctor/dtor is actually a REALLY good idea
* Remove explicit copy ctor and op=

llvm-svn: 480
2001-09-07 21:02:14 +00:00
Chris Lattner
71a712208e Check opaque, abstract, and recursive type handling
llvm-svn: 479
2001-09-07 20:59:20 +00:00
Chris Lattner
cd69a08c26 NEw file
llvm-svn: 478
2001-09-07 19:29:23 +00:00
Chris Lattner
9570fbc913 Moved functionality into the other constant pool stuff
llvm-svn: 477
2001-09-07 18:00:19 +00:00
Chris Lattner
4272da0927 Follow the golden rule of the coding standards guide: Make the code look
like the rest of the system.

llvm-svn: 476
2001-09-07 17:38:10 +00:00
Chris Lattner
e1acc842ba The header file for a translation unit should always be included first
System headers should be last

llvm-svn: 475
2001-09-07 17:18:30 +00:00
Chris Lattner
796e9f8118 A file should always include it's private header file *FIRST* see the
coding guidelines

llvm-svn: 474
2001-09-07 17:15:18 +00:00
Chris Lattner
fb273d331f Constant pool is eliminated
llvm-svn: 473
2001-09-07 17:08:28 +00:00
Chris Lattner
dafdd1ce54 Add support for iteration through type graphs
Static constructors destroy genericity

llvm-svn: 472
2001-09-07 17:04:29 +00:00
Chris Lattner
aaf1b240ff Remove support for const pool merging, which is obsolete now.
llvm-svn: 471
2001-09-07 16:59:35 +00:00
Chris Lattner
78c2f4ab17 Annotations are now const
llvm-svn: 470
2001-09-07 16:59:15 +00:00
Chris Lattner
79edfb1e82 Build lli first
llvm-svn: 469
2001-09-07 16:58:57 +00:00
Chris Lattner
d6a18a62fb Symboltables are sorted in the bytecode, so no problems here!
llvm-svn: 468
2001-09-07 16:58:39 +00:00
Chris Lattner
078b48a3f4 Cleanup
llvm-svn: 467
2001-09-07 16:57:29 +00:00
Chris Lattner
1dd250de63 Support abstract types
Remove constant pool support

llvm-svn: 466
2001-09-07 16:57:07 +00:00
Chris Lattner
873e0fdbf9 Support a abstract, opaque, and recursive types
Remove lockty, remove fillerty
Make type lookup more efficient
Support shared generic factory code

llvm-svn: 465
2001-09-07 16:56:42 +00:00
Chris Lattner
daf98ba299 Types and constnats are wierd objects in the symtabs
Support abstract types in symtab

llvm-svn: 464
2001-09-07 16:48:17 +00:00
Chris Lattner
e3a3aa89f3 Modules must have a valid, nonnull type. Make them void
llvm-svn: 463
2001-09-07 16:47:42 +00:00
Chris Lattner
aeaeab832b Support new setName interface
llvm-svn: 462
2001-09-07 16:47:18 +00:00
Chris Lattner
0e510b8267 * Support new setname interface
* Add assertion for sanity checking

llvm-svn: 461
2001-09-07 16:47:03 +00:00
Chris Lattner
9c4eb70eae * Cnstants are now global objects
* ConstantPools no longer exist
* Constants are global objects in the LLVM system
* Constants are structurally equilivant if they are pointer equilivant
* Support abstract & opaque types
* Support setName on constants even though they don't track names
* Constnats don't get copy ctors anymore
* ConstPoolVal::equals is no longer useful [use ptr equivalency]
* Support generic factory classes to create and maintain constants

llvm-svn: 460
2001-09-07 16:46:31 +00:00
Chris Lattner
d2c013e34c Support new setName itf
llvm-svn: 459
2001-09-07 16:44:17 +00:00
Chris Lattner
99e8b0589f Annotations are const objects now
llvm-svn: 458
2001-09-07 16:44:01 +00:00
Chris Lattner
e299925703 Types and constants are wierd things in symbol tables now
llvm-svn: 457
2001-09-07 16:43:50 +00:00
Chris Lattner
b82abeff92 * Eliminate reference to ConstantPool class
* Constants are global objects that are not allocated or freed

llvm-svn: 456
2001-09-07 16:43:22 +00:00
Chris Lattner
797730ca28 Constant pool is dead
llvm-svn: 455
2001-09-07 16:42:51 +00:00
Chris Lattner
4fc1bcadd9 Constants are now global unique objects
llvm-svn: 454
2001-09-07 16:42:26 +00:00
Chris Lattner
eaf4551d57 * Eliminate constant pool dependancies:
* Eliminate DoRemoveUnusedConstants

llvm-svn: 453
2001-09-07 16:42:08 +00:00
Chris Lattner
6a211421bf * Supoprt global constants
* Remove support for local constant pools
* Eliminate constant pool merging method, which is no longer neccesary
* Disable invalid optimization (todo: fix it)

llvm-svn: 452
2001-09-07 16:41:30 +00:00
Chris Lattner
652b08d465 * Support global constants
* Eliminate need for constant pool

llvm-svn: 451
2001-09-07 16:40:34 +00:00
Chris Lattner
caac8de99d annotations are now const
llvm-svn: 450
2001-09-07 16:40:04 +00:00
Chris Lattner
28154ea366 * Emit bytecode using a deque instead of a vector to be faster
* Internal rep no longer has a constant pool
* Support emission of recursive types
* Don't output a constant pool for an external method
* The bytecode writer is no longer a module analyzer

llvm-svn: 449
2001-09-07 16:39:41 +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
c189163d03 * Assembly writer is not a module analyzer anymore
* There is no constant pool anymore

llvm-svn: 447
2001-09-07 16:36:04 +00:00
Chris Lattner
b8f60e50f3 * Add support for forward referencing types
* Add support for upreferences for recursive types
* Remove support for ConstantPool.h
* Add support for globally unique Constants
* Add support for the opaque type

llvm-svn: 446
2001-09-07 16:35:17 +00:00
Chris Lattner
1a53e079fd Add support for forward referencing types
llvm-svn: 445
2001-09-07 16:33:01 +00:00
Chris Lattner
f590e0c914 Add support for an opaque type
llvm-svn: 444
2001-09-07 16:32:43 +00:00
Chris Lattner
fddd7fbc2c Remove #include of nonexistant header file
llvm-svn: 443
2001-09-07 16:32:10 +00:00
Chris Lattner
35ea5501a8 * Slot calc is now simpler and not based on module analyzer.
* Add new SC_DEBUG option to enable debugging of why stuff doesn't work

llvm-svn: 442
2001-09-07 16:31:52 +00:00
Chris Lattner
f1f36de564 Module analyzer no longer has to iterate over constant pool
llvm-svn: 441
2001-09-07 16:31:23 +00:00
Chris Lattner
8bd3097d81 Simplify code by eliminating need to hang onto constant pool references
llvm-svn: 440
2001-09-07 16:31:04 +00:00
Chris Lattner
e9a2b44041 * Fixed mapped_iterator to actually work with functors
* Implement mapto function that works like map in a functional programming language

llvm-svn: 439
2001-09-07 16:30:28 +00:00
Chris Lattner
477cbbd351 Constant pools no longer exist
llvm-svn: 438
2001-09-07 16:29:55 +00:00
Chris Lattner
8eeaca2118 Eliminate DoConstantPoolMerging. ConstantPools no longer exist
llvm-svn: 437
2001-09-07 16:29:40 +00:00
Chris Lattner
457dd333a4 You no longer have to delete constants! They are located in a global
constant pool instead of in local ones.

Change bool handling to prevent modification of bool values

llvm-svn: 436
2001-09-07 16:29:18 +00:00
Chris Lattner
9464de6a0f Annotations are now passed around as const objects
llvm-svn: 435
2001-09-07 16:28:25 +00:00
Chris Lattner
3160e29bae Use a deque instead of a vector for greater efficiency writing bytecode
llvm-svn: 434
2001-09-07 16:27:49 +00:00
Chris Lattner
25101c9f38 Clean stuff up.
Types are not named, they are described

llvm-svn: 433
2001-09-07 16:27:25 +00:00