diff options
author | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:14 -0800 |
---|---|---|
committer | The Android Open Source Project <initial-contribution@android.com> | 2009-03-03 18:28:14 -0800 |
commit | f72d5de56a522ac3be03873bdde26f23a5eeeb3c (patch) | |
tree | 4b825dc642cb6eb9a060e54bf8d69288fbee4904 /docs/opcodes/opcode-0b-move-result-wide.html | |
parent | 31e30105703263782efd450d356cd67ea01af3b7 (diff) | |
download | android_dalvik-f72d5de56a522ac3be03873bdde26f23a5eeeb3c.tar.gz android_dalvik-f72d5de56a522ac3be03873bdde26f23a5eeeb3c.tar.bz2 android_dalvik-f72d5de56a522ac3be03873bdde26f23a5eeeb3c.zip |
auto import from //depot/cupcake/@135843
Diffstat (limited to 'docs/opcodes/opcode-0b-move-result-wide.html')
-rw-r--r-- | docs/opcodes/opcode-0b-move-result-wide.html | 101 |
1 files changed, 0 insertions, 101 deletions
diff --git a/docs/opcodes/opcode-0b-move-result-wide.html b/docs/opcodes/opcode-0b-move-result-wide.html deleted file mode 100644 index c3e57793e..000000000 --- a/docs/opcodes/opcode-0b-move-result-wide.html +++ /dev/null @@ -1,101 +0,0 @@ -<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> - -<html> - -<head> -<title>move-result-wide</title> -<link rel=stylesheet href="opcode.css"> -</head> - -<body> - -<h1>move-result-wide</h1> - -<h2>Purpose</h2> - -<p> -Move the double-word result of the most recent invoke-kind into the indicated -register pair. This must be done as the instruction immediately after an -invoke-kind whose (double-word) result is not to be ignored; anywhere else is -invalid. -</p> - -<h2>Details</h2> - -<table class="instruc"> -<thead> -<tr> - <th>Op & Format</th> - <th>Mnemonic / Syntax</th> - <th>Arguments</th> -</tr> -</thead> -<tbody> -<tr> - <td>0b 11x</td> - <td>move-result-wide vAA</td> - <td><code>A:</code> destination register pair (8 bits)</td> -</tr> -</tbody> -</table> - -<h2>Constraints</h2> - -<ul> - <li> - A+1 must be a valid register index in the current stack frame (which - includes A itself being valid). - </li> - <li> - The instruction must be immediately preceded (in the code array) by an - invoke-kind instruction. - </li> - <li> - The instruction must be immediately reached (in the actual control flow) - through returning from this invoke-kind instruction (it must not be jumped - to). - </li> - <li> - The result delivered by the invoke-kind instruction must be either a long - or a double value. - </li> -</ul> - -<h2>Behavior</h2> - -<ul> - <li> - The upper 32 bits of the result delivered by the invoke-kind instruction are - moved to register vA, that is, vA' = result >> 0x20. - </li> - <li> - The lower 32 bits of the result delivered by the invoke-kind instruction are - moved to register v(A+1), that is, v(A+1)' = result & 0xffffffff. - </li> - <li> - If register v(A-1) is the lower half of a register pair, register v(A-1)' - becomes undefined. - </li> - <li> - If register v(A+2) is the upper half of a register pair, register v(A+2)' - becomes undefined. - </li> -</ul> - -<h2>Exceptions</h2> - -<p> -None. -</p> - -<h2>Notes</h2> - -<p> -This instruction can also be thought of as reading the contents of a special -"result" register that is made valid and defined by executing a non-void return -instruction or a filled-new-array instruction. The execution of any other -instruction (including this one) renders this special register invalid. -</p> - -</body> -</html> |