diff options
author | Elliott Hughes <enh@google.com> | 2012-01-04 15:38:58 -0800 |
---|---|---|
committer | Elliott Hughes <enh@google.com> | 2012-01-05 10:47:28 -0800 |
commit | ab35b50311951feea3782151dd5422ee944685c2 (patch) | |
tree | 5f4743612c5c3d1ac48a90e90e39361d40acf7f1 /docs | |
parent | d04ce3821fb7db99685c653b25397e3ca51e5cfd (diff) | |
download | android_dalvik-ab35b50311951feea3782151dd5422ee944685c2.tar.gz android_dalvik-ab35b50311951feea3782151dd5422ee944685c2.tar.bz2 android_dalvik-ab35b50311951feea3782151dd5422ee944685c2.zip |
Remove unsupported experimental opcodes.
External developers were starting to try to get themselves into trouble with
this stuff...
Change-Id: I2b03bfeaa8c98b6a994bc7924fc8dcf4e4d4f6cb
Diffstat (limited to 'docs')
-rw-r--r-- | docs/dalvik-bytecode.html | 166 | ||||
-rw-r--r-- | docs/instruction-formats.html | 56 |
2 files changed, 2 insertions, 220 deletions
diff --git a/docs/dalvik-bytecode.html b/docs/dalvik-bytecode.html index d4c0a775d..66c9c4881 100644 --- a/docs/dalvik-bytecode.html +++ b/docs/dalvik-bytecode.html @@ -975,175 +975,11 @@ </td> </tr> <tr> - <td>e3..fe 10x</td> + <td>e3..ff 10x</td> <td><i>(unused)</i></td> <td> </td> <td><i>(unused)</i></td> </tr> -<tr> - <td>ff -</td> - <td><i>(expanded opcode)</i></td> - <td> </td> - <td>An <code>ff</code> in the primary opcode position indicates that there - is a secondary opcode in the high-order byte of the opcode code unit, - as opposed to an argument value. These expanded opcodes are detailed - immediately below. - </td> -</tr> -<tr> - <td>00ff 41c</td> - <td>const-class/jumbo vAAAA, type@BBBBBBBB</td> - <td> - <code>A:</code> destination register (16 bits)<br/> - <code>B:</code> type index (32 bits) - </td> - <td>Move a reference to the class specified by the given index into the - specified register. See <code>const-class</code> description above - for details, caveats, and suggestions. - </td> -</tr> -<tr> - <td>01ff 41c</td> - <td>check-cast/jumbo vAAAA, type@BBBBBBBB</td> - <td> - <code>A:</code> reference-bearing register (16 bits)<br/> - <code>B:</code> type index (32 bits) - </td> - <td>Throw a <code>ClassCastException</code> if the reference in the - given register cannot be cast to the indicated type. See - <code>check-cast</code> description above for details, - caveats, and suggestions. - </td> -</tr> -<tr> - <td>02ff 52c</td> - <td>instance-of/jumbo vAAAA, vBBBB, type@CCCCCCCC</td> - <td> - <code>A:</code> destination register (16 bits)<br/> - <code>B:</code> reference-bearing register (16 bits)<br/> - <code>C:</code> type index (32 bits) - </td> - <td>Store in the given destination register <code>1</code> - if the indicated reference is an instance of the given type, - or <code>0</code> if not. See - <code>instance-of</code> description above for details, - caveats, and suggestions. - </td> -</tr> -<tr> - <td>03ff 41c</td> - <td>new-instance/jumbo vAAAA, type@BBBBBBBB</td> - <td> - <code>A:</code> destination register (16 bits)<br/> - <code>B:</code> type index (32 bits) - </td> - <td>Construct a new instance of the indicated type. See - <code>new-instance</code> description above for details, - caveats, and suggestions. - </td> -</tr> -<tr> - <td>04ff 52c</td> - <td>new-array/jumbo vAAAA, vBBBB, type@CCCCCCCC</td> - <td> - <code>A:</code> destination register (16 bits)<br/> - <code>B:</code> size register (16 bits)<br/> - <code>C:</code> type index (32 bits) - </td> - <td>Construct a new array of the indicated type and size. See - <code>new-array</code> description above for details, - caveats, and suggestions. - </td> -</tr> -<tr> - <td>05ff 5rc</td> - <td>filled-new-array/jumbo {vCCCC .. vNNNN}, type@BBBBBBBB</td> - <td> - <code>A:</code> array size and argument word count (16 bits)<br/> - <code>B:</code> type index (32 bits)<br/> - <code>C:</code> first argument register (16 bits)<br/> - <code>N = A + C - 1</code> - </td> - <td>Construct an array of the given type and size, filling it with the - supplied contents. See first - <code>filled-new-array</code> description above for details, - caveats, and suggestions. - </td> -</tr> -<tr> - <td>06ff..13ff 52c</td> - <td>i<i>instanceop</i>/jumbo vAAAA, vBBBB, field@CCCCCCCC<br/> - 06ff: iget/jumbo<br/> - 07ff: iget-wide/jumbo<br/> - 08ff: iget-object/jumbo<br/> - 09ff: iget-boolean/jumbo<br/> - 0aff: iget-byte/jumbo<br/> - 0bff: iget-char/jumbo<br/> - 0cff: iget-short/jumbo<br/> - 0dff: iput/jumbo<br/> - 0eff: iput-wide/jumbo<br/> - 0fff: iput-object/jumbo<br/> - 10ff: iput-boolean/jumbo<br/> - 11ff: iput-byte/jumbo<br/> - 12ff: iput-char/jumbo<br/> - 13ff: iput-short/jumbo - </td> - <td> - <code>A:</code> value register or pair; may be source or dest (16 bits)<br/> - <code>B:</code> object register (16 bits)<br/> - <code>C:</code> instance field reference index (32 bits) - </td> - <td>Perform the identified object instance field operation. See - <code>i<i>instanceop</i></code> description above for details, - caveats, and suggestions. - </td> -</tr> -<tr> - <td>14ff..21ff 41c</td> - <td>s<i>staticop</i>/jumbo vAAAA, field@BBBBBBBB<br/> - 14ff: sget/jumbo<br/> - 15ff: sget-wide/jumbo<br/> - 16ff: sget-object/jumbo<br/> - 17ff: sget-boolean/jumbo<br/> - 18ff: sget-byte/jumbo<br/> - 19ff: sget-char/jumbo<br/> - 1aff: sget-short/jumbo<br/> - 1bff: sput/jumbo<br/> - 1cff: sput-wide/jumbo<br/> - 1dff: sput-object/jumbo<br/> - 1eff: sput-boolean/jumbo<br/> - 1fff: sput-byte/jumbo<br/> - 20ff: sput-char/jumbo<br/> - 21ff: sput-short/jumbo - </td> - <td> - <code>A:</code> value register or pair; may be source or dest (16 bits)<br/> - <code>B:</code> instance field reference index (32 bits) - </td> - <td>Perform the identified object static field operation. See - <code>s<i>staticop</i></code> description above for details, - caveats, and suggestions. - </td> -</tr> -<tr> - <td>22ff..26ff 5rc</td> - <td>invoke-<i>kind</i>/jumbo {vCCCC .. vNNNN}, meth@BBBBBBBB<br/> - 22ff: invoke-virtual/jumbo<br/> - 23ff: invoke-super/jumbo<br/> - 24ff: invoke-direct/jumbo<br/> - 25ff: invoke-static/jumbo<br/> - 26ff: invoke-interface/jumbo - </td> - <td> - <code>A:</code> argument word count (16 bits)<br/> - <code>B:</code> method reference index (32 bits)<br/> - <code>C:</code> first argument register (16 bits)<br/> - <code>N = A + C - 1</code> - </td> - <td>Call the indicated method. See first <code>invoke-<i>kind</i></code> - description above for details, caveats, and suggestions. - </td> -</tr> </tbody> </table> diff --git a/docs/instruction-formats.html b/docs/instruction-formats.html index ada1bb26c..f320a2d13 100644 --- a/docs/instruction-formats.html +++ b/docs/instruction-formats.html @@ -28,8 +28,7 @@ represents four bits, read from high bits to low, with vertical bars 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 an eight-bit -opcode within the format, and similarly "<code>exop</code>" is used -to indicate an extended sixteen-bit opcode. A slashed zero +opcode within the format. A slashed zero ("<code>Ø</code>") is used to indicate that all bits must be zero in the indicated position.</p> @@ -455,59 +454,6 @@ the correspondence.</p> <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><i>exop</i> BBBB<sub>lo</sub> BBBB<sub>hi</sub> AAAA</td></td> - <td>40sc</td> - <td><i><code>exop</code></i> AAAA, kind@BBBBBBBB</td> - <td><i>suggested format for statically determined verification errors; - see <code>20bc</code>, above</i></td> -</tr> -<tr> - <td><i>exop</i> BBBB<sub>lo</sub> BBBB<sub>hi</sub> AAAA - <td>41c</td> - <td><i><code>exop</code></i> vAAAA, field@BBBBBBBB<br/> - <i><code>exop</code></i> vAAAA, type@BBBBBBBB - <p><i>The unusual choice in lettering here reflects a desire to make - the letters match their use in related formats 21c and 31c.</i></p> - </td> - <td> </td> -</tr> -<tr> - <td><i>exop</i> CCCC<sub>lo</sub> CCCC<sub>hi</sub> - AAAA BBBB</td> - <td>52c</td> - <td><i><code>exop</code></i> vAAAA, vBBBB, field@CCCCCCCC<br/> - <i><code>exop</code></i> vAAAA, vBBBB, type@CCCCCCCC - <p><i>The unusual choice in lettering here reflects a desire to make - the letters match their use in related formats 22c and 22cs.</i></p> - </td> - <td> </td> -</tr> -<tr> - <td><i>exop</i> BBBB<sub>lo</sub> BBBB<sub>hi</sub> - AAAA CCCC</td> - <td>5rc</td> - <td><i><code>exop</code></i> {vCCCC .. vNNNN}, meth@BBBBBBBB<br/> - <i><code>exop</code></i> {vCCCC .. vNNNN}, type@BBBBBBBB<br/> - <p><i>where <code>NNNN = CCCC+AAAA-1</code>, that is <code>A</code> - determines the count <code>0..65535</code>, and <code>C</code> - determines the first register</i></p> - <p><i>The unusual choice in lettering here reflects a desire to make - the letters match their use in related formats 3rc, 3rms, and 3rmi.</i></p> - </td> - <td> </td> -</tr> </tbody> </table> |