diff options
author | Dan Bornstein <danfuzz@android.com> | 2010-10-20 16:36:08 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2010-10-20 16:36:08 -0700 |
commit | bab85777f09b375f5301f5dbb4884b3c8f215b59 (patch) | |
tree | 807142306e6146e8763f5d736067f69c8cdae19c /docs | |
parent | 7f43c038ec330bd8807ef26a0de8616869e74fa1 (diff) | |
parent | a7acbf10684eb69789c1120497650fa0a8312aa7 (diff) | |
download | android_dalvik-bab85777f09b375f5301f5dbb4884b3c8f215b59.tar.gz android_dalvik-bab85777f09b375f5301f5dbb4884b3c8f215b59.tar.bz2 android_dalvik-bab85777f09b375f5301f5dbb4884b3c8f215b59.zip |
Merge "New instruction formats for expansion beyond 256 opcodes." into dalvik-dev
Diffstat (limited to 'docs')
-rw-r--r-- | docs/instruction-formats.html | 70 |
1 files changed, 35 insertions, 35 deletions
diff --git a/docs/instruction-formats.html b/docs/instruction-formats.html index d7bf69057..af98dde76 100644 --- a/docs/instruction-formats.html +++ b/docs/instruction-formats.html @@ -27,10 +27,11 @@ represents four bits, read from high bits to low, with vertical bars ("<code>|</code>") interspersed to aid in reading. Uppercase letters in sequence from "<code>A</code>" are used to indicate fields within the format (which then get defined further by the syntax column). The term -"<code>op</code>" is used to indicate the position of the eight-bit -opcode within the format. A slashed zero ("<code>Ø</code>") is -used to indicate that all bits should be zero in the indicated -position.</p> +"<code>op</code>" is used to indicate the position of an eight-bit +opcode within the format, and similarly "<code>exop</code>" is used +to indicate an extended sixteen-bit opcode. A slashed zero +("<code>Ø</code>") is used to indicate that all bits must be +zero in the indicated position.</p> <p>For example, the format "<code>B|A|<i>op</i> CCCC</code>" indicates that the format consists of two 16-bit code units. The first word @@ -364,24 +365,6 @@ the correspondence.</p> </td> </tr> <tr> - <td>B|A|<i>op</i> DDCC H|G|F|E</td> - <td>35fs</td> - <td><i>[<code>B=5</code>] <code>op</code></i> {vE, vF, vG, vH, vA}, - vtaboff@CC, iface@DD<br/> - <i>[<code>B=4</code>] <code>op</code></i> {vE, vF, vG, vH}, - vtaboff@CC, iface@DD<br/> - <i>[<code>B=3</code>] <code>op</code></i> {vE, vF, vG}, - vtaboff@CC, iface@DD<br/> - <i>[<code>B=2</code>] <code>op</code></i> {vE, vF}, - vtaboff@CC, iface@DD<br/> - <i>[<code>B=1</code>] <code>op</code></i> {vE}, - vtaboff@CC, iface@DD<br/> - </td> - <td><i>(suggested format for statically linked <code>invoke-interface</code> - instructions of format 35c)</i> - </td> -</tr> -<tr> <td>AA|<i>op</i> BBBB CCCC</td> <td>3rc</td> <td><i><code>op</code></i> {vCCCC .. vNNNN}, meth@BBBB<br/> @@ -405,24 +388,41 @@ the correspondence.</p> </td> </tr> <tr> - <td>AA|<i>op</i> CCBB DDDD</td> - <td>3rfs</td> - <td><i><code>op</code></i> {vDDDD .. vNNNN}, vtaboff@BB, - iface@CC<br/> - <p><i>(where <code>NNNN = DDDD+AA-1</code>, that is <code>A</code> - determines the count <code>0..255</code>, and <code>D</code> - determines the first register)</i></p> - </td> - <td><i>(suggested format for statically linked <code>invoke-interface</code> - instructions of format <code>3rc</code>)</i> - </td> -</tr> -<tr> <td>AA|<i>op</i> BBBB<sub>lo</sub> BBBB BBBB BBBB<sub>hi</sub></td> <td>51l</td> <td><i><code>op</code></i> vAA, #+BBBBBBBBBBBBBBBB</td> <td>const-wide</td> </tr> +<tr> + <td rowspan="2"><i>exop</i> BB|AA CCCC</td> + <td>33x</td> + <td><i><code>exop</code></i> vAA, vBB, vCCCC</td> + <td> </td> +</tr> +<tr> + <td>32s</td> + <td><i><code>exop</code></i> vAA, vBB, #+CCCC</td> + <td> </td> +</tr> +<tr> + <td rowspan="2"><i>exop</i> AAAA<sub>lo</sub> AAAA<sub>hi</sub> + BBBB CCCC</td> + <td>52c</td> + <td><i><code>exop</code></i> vBBBB, vCCCC, field@AAAAAAAA<br/> + <i><code>exop</code></i> vBBBB, vCCCC, type@AAAAAAAA + </td> + <td> </td> +</tr> +<tr> + <td>5rc</td> + <td><i><code>exop</code></i> {vBBBB .. vNNNN}, meth@AAAAAAAA<br/> + <i><code>exop</code></i> {vBBBB .. vNNNN}, type@AAAAAAAA<br/> + <p><i>(where <code>NNNN = BBBB+CCCC-1</code>, that is + <code>B</code> determines the first register and <code>C</code> + determines the count <code>0..65535</code>)</i></p> + </td> + <td> </td> +</tr> </tbody> </table> |