aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Bitcode
Commit message (Collapse)AuthorAgeFilesLines
...
* stub out creation of BLOCKINFO_BLOCKChris Lattner2007-05-041-0/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36749 91177308-0d34-0410-b5e6-96231b3b80d8
* optimize constant layout. This fixes encoding of 181.mcf (by ensuringChris Lattner2007-05-042-5/+48
| | | | | | | | integer structure idx's are emitted before constant expr geps) and shrinks files slightly. For example kc++ shrinks from 4326188 to 4240128 bytes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36742 91177308-0d34-0410-b5e6-96231b3b80d8
* simple optimization for the type tableChris Lattner2007-05-041-5/+29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36741 91177308-0d34-0410-b5e6-96231b3b80d8
* storeinst ctor takes isvolatile before alignment. With this, 176.gcc roundtripsChris Lattner2007-05-041-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36738 91177308-0d34-0410-b5e6-96231b3b80d8
* fix encoding of invoke instructions. kc++ now round tripsChris Lattner2007-05-041-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36737 91177308-0d34-0410-b5e6-96231b3b80d8
* fix a misplaced errorChris Lattner2007-05-041-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36736 91177308-0d34-0410-b5e6-96231b3b80d8
* encode and read param attrs along with function type. WE can now roundtrip ↵Chris Lattner2007-05-042-9/+8
| | | | | | Olden/voronoi loslessly git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36735 91177308-0d34-0410-b5e6-96231b3b80d8
* add support for reading the param attrs blockChris Lattner2007-05-042-0/+82
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36731 91177308-0d34-0410-b5e6-96231b3b80d8
* fix a bug encoding param attrsChris Lattner2007-05-041-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36730 91177308-0d34-0410-b5e6-96231b3b80d8
* remove dead codeChris Lattner2007-05-041-6/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36728 91177308-0d34-0410-b5e6-96231b3b80d8
* add writer support for param attrsChris Lattner2007-05-041-1/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36724 91177308-0d34-0410-b5e6-96231b3b80d8
* Allow this to compile with gcc 4.0.XReid Spencer2007-05-041-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36723 91177308-0d34-0410-b5e6-96231b3b80d8
* pass by reference, not by valueChris Lattner2007-05-041-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36721 91177308-0d34-0410-b5e6-96231b3b80d8
* trivial scaffolding for param attrsChris Lattner2007-05-041-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36720 91177308-0d34-0410-b5e6-96231b3b80d8
* enumerate parameter attr lists.Chris Lattner2007-05-032-0/+33
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36709 91177308-0d34-0410-b5e6-96231b3b80d8
* Encoding calling conv info in call/invoke instrs, tree add now round trips ↵Chris Lattner2007-05-032-18/+24
| | | | | | completely git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36707 91177308-0d34-0410-b5e6-96231b3b80d8
* the type field for a store is the type of the pointer, not the value.Chris Lattner2007-05-031-3/+4
| | | | | | | With this fix I can round trip treeaadd, only losing calling conv info. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36706 91177308-0d34-0410-b5e6-96231b3b80d8
* don't bother encoding # varargsChris Lattner2007-05-031-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36705 91177308-0d34-0410-b5e6-96231b3b80d8
* fix encoding of BB names in the symtabChris Lattner2007-05-033-5/+21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36704 91177308-0d34-0410-b5e6-96231b3b80d8
* bug fixesChris Lattner2007-05-031-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36701 91177308-0d34-0410-b5e6-96231b3b80d8
* implement the rest of the instructionsChris Lattner2007-05-031-10/+68
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36699 91177308-0d34-0410-b5e6-96231b3b80d8
* add a few more instructions, getting closeChris Lattner2007-05-031-10/+53
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36688 91177308-0d34-0410-b5e6-96231b3b80d8
* add reader logic for terminator instrs.Chris Lattner2007-05-023-10/+93
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36642 91177308-0d34-0410-b5e6-96231b3b80d8
* add reader support for a bunch of new instructionsChris Lattner2007-05-021-14/+90
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36641 91177308-0d34-0410-b5e6-96231b3b80d8
* read a few instructions, fix some bugs. This is enough to be able to roundChris Lattner2007-05-021-15/+38
| | | | | | | | | | | | | | | trip function bodies like this: define <2 x i64> @foo(<2 x i64> %x, <2 x i64> %y) { %tmp4 = bitcast <2 x i64> %y to <8 x i16> ; <<8 x i16>> [#uses=1] %tmp5 = bitcast <2 x i64> %x to <8 x i16> ; <<8 x i16>> [#uses=1] %tmp = add <8 x i16> %tmp5, %tmp4 ; <<8 x i16>> [#uses=1] %tmp6 = bitcast <8 x i16> %tmp to <2 x i64> ; <<2 x i64>> [#uses=1] ret <2 x i64> %tmp6 } git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36640 91177308-0d34-0410-b5e6-96231b3b80d8
* use the correct code for binop instrsChris Lattner2007-05-021-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36639 91177308-0d34-0410-b5e6-96231b3b80d8
* fix build with non-buggy compilersChris Lattner2007-05-011-10/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36621 91177308-0d34-0410-b5e6-96231b3b80d8
* handle function-level forward references, read binops.Chris Lattner2007-05-012-20/+145
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36620 91177308-0d34-0410-b5e6-96231b3b80d8
* implement materializeModule, force deallocation of vector memory when weChris Lattner2007-05-012-15/+107
| | | | | | | are done with them, start implementing ParseFunctionBody git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36617 91177308-0d34-0410-b5e6-96231b3b80d8
* The stream to read from is now an ivarChris Lattner2007-05-012-20/+18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36615 91177308-0d34-0410-b5e6-96231b3b80d8
* implement scafolding for lazy deserialization of function bodiesChris Lattner2007-05-012-7/+85
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36614 91177308-0d34-0410-b5e6-96231b3b80d8
* write the symbol table for function bodiesChris Lattner2007-05-011-30/+33
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36610 91177308-0d34-0410-b5e6-96231b3b80d8
* encode all of the instructions.Chris Lattner2007-05-011-3/+166
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36609 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement visibility checking during linking. Also implement protectedAnton Korobeynikov2007-04-292-2/+4
| | | | | | | visibility support for bitcode. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36577 91177308-0d34-0410-b5e6-96231b3b80d8
* Switch the bitcode reader interface to take a MemoryBuffer instead of knowingChris Lattner2007-04-293-108/+62
| | | | | | | | | | | | | | | anything about disk I/O itself. This greatly simplifies its interface - eliminating the need for the ReaderWrappers.cpp file. This adds a new option to llvm-dis (-bitcode) which instructs it to read the input file as bitcode. Until/unless the bytecode reader is taught to read from MemoryBuffer, there is no way to handle stdin reading without it. I don't plan to switch the bytecode reader over, I'd rather delete it :), so the option will stay around temporarily. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36554 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix this to use the right block IDChris Lattner2007-04-291-3/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36550 91177308-0d34-0410-b5e6-96231b3b80d8
* moved Writer.cpp -> BitcodeWriter.cpp to make it more unique in the tree.Chris Lattner2007-04-291-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36549 91177308-0d34-0410-b5e6-96231b3b80d8
* This is not "FIXME" anymoreAnton Korobeynikov2007-04-281-3/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36541 91177308-0d34-0410-b5e6-96231b3b80d8
* start code for writing out instructions. Separate BB#s from normal valueChris Lattner2007-04-263-5/+83
| | | | | | | #'s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36472 91177308-0d34-0410-b5e6-96231b3b80d8
* enumerate BB's separately from other function values.Chris Lattner2007-04-262-4/+16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36467 91177308-0d34-0410-b5e6-96231b3b80d8
* add support for incorporating and purging functions to the value enumeratorChris Lattner2007-04-263-98/+38
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36465 91177308-0d34-0410-b5e6-96231b3b80d8
* improve a commentChris Lattner2007-04-261-3/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36464 91177308-0d34-0410-b5e6-96231b3b80d8
* move some code around, fix a bug in the reader reading globalinits (whichChris Lattner2007-04-265-69/+123
| | | | | | | | I just introduced), stub out function reading, purge aggregate values from the value table before reading functions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36463 91177308-0d34-0410-b5e6-96231b3b80d8
* add bitcode alias supportChris Lattner2007-04-264-17/+81
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36461 91177308-0d34-0410-b5e6-96231b3b80d8
* ensure that every error return sets a message (and goes through Error, forChris Lattner2007-04-243-19/+37
| | | | | | | | | | easy breakpointing). Fix bugs reading constantexpr geps. We now can disassemble kc++ global initializers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36398 91177308-0d34-0410-b5e6-96231b3b80d8
* fix memory leakChris Lattner2007-04-241-3/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36397 91177308-0d34-0410-b5e6-96231b3b80d8
* implement reading and writing of constant exprs.Chris Lattner2007-04-242-15/+230
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36394 91177308-0d34-0410-b5e6-96231b3b80d8
* implement support for reading aggregate constants, including handling forwardChris Lattner2007-04-242-5/+108
| | | | | | | constant references, etc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36391 91177308-0d34-0410-b5e6-96231b3b80d8
* add supprot for FP constants, wide integers, and fix the encoding of MININTChris Lattner2007-04-241-8/+40
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36390 91177308-0d34-0410-b5e6-96231b3b80d8
* read basic constants: null, undef, integers <= 64bitsChris Lattner2007-04-242-2/+80
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36389 91177308-0d34-0410-b5e6-96231b3b80d8