Describe how arbitrary precision integers are written to the bytecode.
authorReid Spencer <rspencer@reidspencer.com>
Wed, 28 Feb 2007 02:33:06 +0000 (02:33 +0000)
committerReid Spencer <rspencer@reidspencer.com>
Wed, 28 Feb 2007 02:33:06 +0000 (02:33 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34719 91177308-0d34-0410-b5e6-96231b3b80d8

docs/BytecodeFormat.html

index b2370eecc4b0c65c4c71f5c94eb047a7b55bd199..06320a30b4f752d37bc476f41674d53301ce0df0 100644 (file)
@@ -1275,10 +1275,18 @@ field definitions, based on type:</p>
 <ul>
   <li><b>Bool</b>. This is written as an <a href="#uint32_vbr">uint32_vbr</a> of
   value 1U or 0U.</li>
-  <li><b>Signed Integers (sbyte,short,int,long)</b>. These are written as an 
-  <a href="#int64_vbr">int64_vbr</a> with the corresponding value.</li>
-  <li><b>Unsigned Integers (ubyte,ushort,uint,ulong)</b>. These are written as 
-  an <a href="#uint64_vbr">uint64_vbr</a> with the corresponding value. </li>
+  <li><b>Signed Integers (sbyte,short,int,long) &le; 64 bits</b>. These are 
+  written as an <a href="#int64_vbr">int64_vbr</a> with the corresponding 
+  value.</li>
+  <li><b>Unsigned Integers (ubyte,ushort,uint,ulong) &le; 64 bits</b>. These 
+  are written as an <a href="#uint64_vbr">uint64_vbr</a> with the corresponding
+  value. </li>
+  <li><b>Integers &gt; 64 bits</b>. These are written as a length followed by a
+  series of 64-bit words. The length specifies the number of words that follow.
+  Any zero-valued high order words are elided. Words with the least significant
+  bits are written to the lowest file offsets (little endian). The length is 
+  written as an <a href="#uint32_vbr">uint32_vbr</a>. Each word of the value
+  is written as an <a href="#uint64_vbr">uint64_vbr</a>.</li>
   <li><b>Floating Point</b>. Both the float and double types are written 
   literally in binary format.</li>
   <li><b>Arrays</b>. Arrays are written simply as a list of