diff options
author | Reid Spencer <rspencer@reidspencer.com> | 2004-08-16 19:24:36 +0000 |
---|---|---|
committer | Reid Spencer <rspencer@reidspencer.com> | 2004-08-16 19:24:36 +0000 |
commit | f57b8b9e70b25a6686c198982dd2809211bb7a94 (patch) | |
tree | 613b2658b0dd1ec6f342bd89c26b8dcff37c462e /llvm/docs/BytecodeFormat.html | |
parent | 30cee49933b1cbcfdd44cfe82c08bb0d8b54c224 (diff) | |
download | bcm5719-llvm-f57b8b9e70b25a6686c198982dd2809211bb7a94.tar.gz bcm5719-llvm-f57b8b9e70b25a6686c198982dd2809211bb7a94.zip |
Correct the documentation for the module block header which uses the long
format instead of the short format used in other blocks.
Discrepancy noted by Robert Mykland. Thanks Robert!
llvm-svn: 15826
Diffstat (limited to 'llvm/docs/BytecodeFormat.html')
-rw-r--r-- | llvm/docs/BytecodeFormat.html | 26 |
1 files changed, 22 insertions, 4 deletions
diff --git a/llvm/docs/BytecodeFormat.html b/llvm/docs/BytecodeFormat.html index 5bb5d537fb6..76365b4ea0d 100644 --- a/llvm/docs/BytecodeFormat.html +++ b/llvm/docs/BytecodeFormat.html @@ -614,10 +614,13 @@ sections.</p> <th class="td_left"><b>Field Description</b></th> </tr> <tr> - <td><a href="#block">block</a><br> - </td> - <td class="td_left">Module Block Identifier (0x01) and Size<br> - </td> + <td><a href="#unsigned">unsigned</a><br></td> + <td class="td_left"><a href="#mod_header">Module Block Identifier + (0x01)</a></td> + </tr> + <tr> + <td><a href="#unsigned">unsigned</a></td> + <td class="td_left"><a href="#mod_header">Module Block Size</a></td> </tr> <tr> <td><a href="#uint32_vbr">uint32_vbr</a></td> @@ -646,6 +649,21 @@ sections.</p> </tbody> </table> </div> + +<!-- _______________________________________________________________________ --> +<div class="doc_subsubsection"><a name="mod_header">Module Block Header</a></div> +<div class="doc_text"> + <p>The block header for the module block uses a longer format than the other + blocks in a bytecode file. Specifically, instead of encoding the type and size + of the block into a 32-bit integer with 5-bits for type and 27-bits for size, + the module block header uses two 32-bit unsigned values, one for type, and one + for size. While the 2<sup>27</sup> byte limit on block size is sufficient for the blocks + contained in the module, it isn't sufficient for the module block itself + because we want to ensure that bytecode files as large as 2<sup>32</sup> bytes + are possible. For this reason, the module block (and only the module block) + uses a long format header.</p> +</div> + <!-- _______________________________________________________________________ --> <div class="doc_subsubsection"><a name="format">Format Information</a></div> <div class="doc_text"> |