summaryrefslogtreecommitdiffstats
path: root/docs/opcodes/opcode-2d-cmp-kind.html
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2009-03-03 18:28:14 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2009-03-03 18:28:14 -0800
commitf72d5de56a522ac3be03873bdde26f23a5eeeb3c (patch)
tree4b825dc642cb6eb9a060e54bf8d69288fbee4904 /docs/opcodes/opcode-2d-cmp-kind.html
parent31e30105703263782efd450d356cd67ea01af3b7 (diff)
downloadandroid_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-2d-cmp-kind.html')
-rw-r--r--docs/opcodes/opcode-2d-cmp-kind.html121
1 files changed, 0 insertions, 121 deletions
diff --git a/docs/opcodes/opcode-2d-cmp-kind.html b/docs/opcodes/opcode-2d-cmp-kind.html
deleted file mode 100644
index 431ccd40d..000000000
--- a/docs/opcodes/opcode-2d-cmp-kind.html
+++ /dev/null
@@ -1,121 +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>cmp&lt;kind&gt;</title>
-<link rel=stylesheet href="opcode.css">
-</head>
-
-<body>
-
-<h1>cmp&lt;kind&gt;</h1>
-
-<h2>Purpose</h2>
-
-<p>
-Perform the indicated floating point or long comparison, storing 0 if the two
-arguments are equal, 1 if the second argument is larger, or -1 if the first
-argument is larger. The "bias" listed for the floating point operations
-indicates how NaN comparisons are treated: "Gt bias" instructions return 1 for
-NaN comparisons, and "lt bias" instructions return -1.
-</p>
-<p>
-For example, to check to see if floating point a < b, then it is advisable to
-use cmpg-float; a result of -1 indicates that the test was true, and the other
-values indicate it was false either due to a valid comparison or because one
-or the other values was NaN.
-</p>
-
-<h2>Details</h2>
-
-<table class="instruc">
-<thead>
-<tr>
- <th>Op &amp; Format</th>
- <th>Mnemonic / Syntax</th>
- <th>Arguments</th>
-</tr>
-</thead>
-<tbody>
-<tr>
- <td>2d..31 23x</td>
- <td>cmp<i>kind</i> vAA, vBB, vCC<br/>
- 2d: cmpl-float <i>(lt bias)</i><br/>
- 2e: cmpg-float <i>(gt bias)</i><br/>
- 2f: cmpl-double <i>(lt bias)</i><br/>
- 30: cmpg-double <i>(gt bias)</i><br/>
- 31: cmp-long
- </td>
- <td><code>A:</code> destination register (8 bits)<br/>
- <code>B:</code> first source register or pair<br/>
- <code>C:</code> second source register or pair</td>
-</tr>
-</tbody>
-</table>
-
-<h2>Constraints</h2>
-
-<ul>
- <li>
- A, B and C must be valid register indices in the current stack frame.
- </li>
- <li>
- For the two -float variants, both vB and vC must be of type float.
- </li>
- <li>
- For the two -double variants, both vB and vC must be the lower part of a
- register pair holding a double value.
- </li>
- <li>
- For the -long variant, both both vB and vC must be the lower part of a
- register pair holding a long value.
- </li>
-</ul>
-
-<h2>Behavior</h2>
-
-<ul>
- <li>
- The values of registers vB and vC are compared. The result, which is stored
- in vA, is one of the following three:
- <ul>
- <li>
- If vB < vC, then vA'=-1.
- </li>
- <li>
- If vB == vC, then vA'=0.
- </li>
- <li>
- If vC > vC, then vA'=1.
- </li>
- </ul>
- </li>
- <li>
- For the -float and -double variants, an addition "bias" specifies what
- happens if one or both of the arguments are NaN:
- <ul>
- <li>
- A "lt bias" results in vA'=-1.
- </li>
- <li>
- A "gt bias" results in vA'=1.
- </li>
- </ul>
- </li>
- <li>
- If v(A-1) is the lower half of a register pair, v(A-1)' becomes undefined.
- </li>
- <li>
- If v(A+1) is the upper half of a register pair, v(A+1)' becomes undefined.
- </li>
-</ul>
-
-<h2>Exceptions</h2>
-
-<p>
-None.
-</p>
-
-</body>
-</html>