Commit Graph

19 Commits

Author SHA1 Message Date
Jeff Cohen fd73e54ef8 Keep header file free of 'possible loss of data' warnings.
llvm-svn: 36832
2007-05-06 03:23:14 +00:00
Chris Lattner df1233dfbb stop encoding type/value pairs when the type is implied by the value.
This shrinks the function block of kc++ from 1055K to 906K

llvm-svn: 36816
2007-05-06 00:00:00 +00:00
Chris Lattner fee5a3752a add support for reading the param attrs block
llvm-svn: 36731
2007-05-04 03:30:17 +00:00
Chris Lattner 5285b5ea2f add reader logic for terminator instrs.
llvm-svn: 36642
2007-05-02 05:46:45 +00:00
Chris Lattner 8393055447 handle function-level forward references, read binops.
llvm-svn: 36620
2007-05-01 07:01:57 +00:00
Chris Lattner 85b7b40621 implement materializeModule, force deallocation of vector memory when we
are done with them, start implementing ParseFunctionBody

llvm-svn: 36617
2007-05-01 05:52:21 +00:00
Chris Lattner 48a8de3f4d The stream to read from is now an ivar
llvm-svn: 36615
2007-05-01 05:01:34 +00:00
Chris Lattner 51ffe7ce15 implement scafolding for lazy deserialization of function bodies
llvm-svn: 36614
2007-05-01 04:59:48 +00:00
Chris Lattner 6694f60bec Switch the bitcode reader interface to take a MemoryBuffer instead of knowing
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.

llvm-svn: 36554
2007-04-29 07:54:31 +00:00
Chris Lattner 831d420256 move some code around, fix a bug in the reader reading globalinits (which
I just introduced), stub out function reading, purge aggregate values from
the value table before reading functions.

llvm-svn: 36463
2007-04-26 03:27:58 +00:00
Chris Lattner 44c1707207 add bitcode alias support
llvm-svn: 36461
2007-04-26 02:46:40 +00:00
Chris Lattner 890683d636 ensure that every error return sets a message (and goes through Error, for
easy breakpointing).

Fix bugs reading constantexpr geps.  We now can disassemble kc++ global
initializers.

llvm-svn: 36398
2007-04-24 18:15:21 +00:00
Chris Lattner 1663ccaf13 implement support for reading aggregate constants, including handling forward
constant references, etc.

llvm-svn: 36391
2007-04-24 05:48:56 +00:00
Chris Lattner fbc1d33b81 read basic constants: null, undef, integers <= 64bits
llvm-svn: 36389
2007-04-24 03:30:34 +00:00
Chris Lattner 47d131bd32 track global inits
llvm-svn: 36385
2007-04-24 00:18:21 +00:00
Chris Lattner ccaa448dcf Read global symtab
llvm-svn: 36378
2007-04-23 21:26:05 +00:00
Chris Lattner 362b4a1c92 promote LLVMBitCodes to be a public header
llvm-svn: 36358
2007-04-23 01:01:37 +00:00
Jeff Cohen 33be4c78ef Fix build problem with Gentoo 4.1.1-r3.
llvm-svn: 36348
2007-04-22 18:49:32 +00:00
Chris Lattner 1314b9996d Initial support for reading bitcode files. They currently only read types,
the type symtab, and global/function protos, and are missing the important
size optimization, but it is a place to start.

llvm-svn: 36330
2007-04-22 06:23:29 +00:00