Ted Kremenek
2a2a496aac
Fixed potential bug where CurWord is not zeroed out in JumpToBit.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@44469 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-30 22:39:46 +00:00
Ted Kremenek
13faf5c13c
Made Deserializer a friend class of BitstreamReader.
...
Moved some of the logic in BitstreamReader::ExitBlock into a utility function
BitstreamReader::PopBlockScope. The latter is a private method. It will also
be called by Deserializer to manipulate the current "block scope."
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43972 91177308-0d34-0410-b5e6-96231b3b80d8
2007-11-10 02:00:38 +00:00
Hartmut Kaiser
4d40b50743
Silenced a VC++ warning.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43276 91177308-0d34-0410-b5e6-96231b3b80d8
2007-10-24 00:06:31 +00:00
Chris Lattner
9850b57587
we aren't at the end of stream until we've consumed all the bytes AND all
...
the bits in those bytes.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36861 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 08:12:09 +00:00
Jeff Cohen
85a57910bd
Make code more 64-bit aware.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36833 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 03:24:19 +00:00
Jeff Cohen
332376bc60
Unbreak VC++.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36831 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 03:12:47 +00:00
Chris Lattner
048d0bd4c0
Fix a subtle bug that prevented round-tripping 470.lbm
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36825 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-06 01:43:38 +00:00
Chris Lattner
02a13b5c50
minor bugfix
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36777 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 07:20:34 +00:00
Chris Lattner
28e4c4c9b3
add a 6-bit encoding type for strings.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36770 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 01:15:42 +00:00
Chris Lattner
e17b658c79
Implement support for globally associating abbrevs with block IDs, which
...
relieves us from having to emit the abbrevs into each instance of the block.
This shrinks kc.bit from 3368K to 3333K, but will be a more significant win
once instructions are abbreviated.
The VST went from:
Block ID #14 (VALUE_SYMTAB):
Num Instances: 2345
Total Size: 1.29508e+07b/1.61885e+06B/404713W
Average Size: 5522.73b/690.342B/172.585W
% of file: 48.0645
Tot/Avg SubBlocks: 0/0
Tot/Avg Abbrevs: 7035/3
Tot/Avg Records: 120924/51.5667
% Abbrev Recs: 100
to:
Block ID #14 (VALUE_SYMTAB):
Num Instances: 2345
Total Size: 1.26713e+07b/1.58391e+06B/395978W
Average Size: 5403.53b/675.442B/168.86W
% of file: 47.5198
Tot/Avg SubBlocks: 0/0
Tot/Avg Abbrevs: 0/0
Tot/Avg Records: 120924/51.5667
% Abbrev Recs: 100
because we didn't emit the same 3 abbrevs 2345 times :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36767 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-05 00:17:00 +00:00
Chris Lattner
3c074f61ed
add support for array abbreviations.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36754 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-04 20:33:47 +00:00
Chris Lattner
a727d5502c
minor cleanups. Add provisions for a new standard BLOCKINFO_BLOCK
...
block type.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36748 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-04 18:25:49 +00:00
Chris Lattner
299b2d2070
refcount BitCodeAbbrev objects
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36747 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-04 17:35:19 +00:00
Chris Lattner
2bbb703e4f
several bitfixes to JumpToBit
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36616 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-01 05:51:32 +00:00
Chris Lattner
90a5c7dbc1
add JumpToBit, an explicit init method, and a default ctor.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36613 91177308-0d34-0410-b5e6-96231b3b80d8
2007-05-01 04:59:06 +00:00
Chris Lattner
8d89f1fbb6
add some helpers
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36580 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 21:49:05 +00:00
Chris Lattner
a2d0ad4fe2
compute this value correctly
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36575 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 19:49:58 +00:00
Chris Lattner
bd40a6d3ee
add a method
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36571 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 19:17:32 +00:00
Chris Lattner
107d80956d
make this file self-contained
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36555 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-29 08:05:07 +00:00
Chris Lattner
aea2012433
implement reading of abbrevs
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36366 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-23 18:57:58 +00:00
Chris Lattner
36d5e7d31b
first part of implementation of abbrevs. The writer isn't fully there yet and the
...
reader doesn't handle them at all yet.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36363 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-23 16:04:05 +00:00
Reid Spencer
7aaa4a5c09
Terminate with newline.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36345 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-22 16:31:22 +00:00
Jeff Cohen
a0c96a068c
Teach Visual Studio about Bitcode.
...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36341 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-22 15:00:52 +00:00
Chris Lattner
b35ca9db9c
Define the content-independent interfaces to read/write bitcode files and
...
the high-level interface to read/write LLVM IR bitcode files.
This is a work in progress.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36329 91177308-0d34-0410-b5e6-96231b3b80d8
2007-04-22 06:22:05 +00:00