summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docs/instruction-formats.html9
-rw-r--r--opcode-gen/bytecode.txt10
2 files changed, 12 insertions, 7 deletions
diff --git a/docs/instruction-formats.html b/docs/instruction-formats.html
index 2a81e607d..af5b09c78 100644
--- a/docs/instruction-formats.html
+++ b/docs/instruction-formats.html
@@ -467,12 +467,9 @@ the correspondence.</p>
<td>&nbsp;</td>
</tr>
<tr>
- <td><i>exop</i> BBBB AAAA<sub>lo</sub> AAAA<sub>hi</sub></td></td>
- <td>40bc</td>
- <td><i><code>exop</code></i> BBBB, kind@AAAAAAAA
- <p><i>The unusual choice in lettering here reflects a desire to make
- the letters match their use in related format 20bc.</i></p>
- </td>
+ <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>
diff --git a/opcode-gen/bytecode.txt b/opcode-gen/bytecode.txt
index 007c41d6f..63bc6fde0 100644
--- a/opcode-gen/bytecode.txt
+++ b/opcode-gen/bytecode.txt
@@ -48,6 +48,7 @@ format 35mi
format 35ms
format 3rmi
format 3rms
+format 40sc
# One line per opcode. Columns are:
# hex for opcode
@@ -392,4 +393,11 @@ op 23ff invoke-super/jumbo 5rc n method-ref continue|throw|invoke
op 24ff invoke-direct/jumbo 5rc n method-ref continue|throw|invoke
op 25ff invoke-static/jumbo 5rc n method-ref continue|throw|invoke
op 26ff invoke-interface/jumbo 5rc n method-ref continue|throw|invoke
-# unused: op 27ff..ffff
+
+# unused: op 27ff..feff
+
+#
+# Optimized opcodes (not valid in an unoptimized dex file)
+#
+
+op ffff ^throw-verification-error/jumbo 40sc n varies optimized|throw