<entry>4</entry>
<entry>4</entry>
<entry>high bits of signed multiply</entry>
-<entry>(a * b) >> 8</entry>
+<entry>(a * b) >> 16</entry>
</row>
<row>
<entry>mulhul</entry>
<entry>4</entry>
<entry>4</entry>
<entry>high bits of unsigned multiply</entry>
-<entry>(a * b) >> 8</entry>
+<entry>(a * b) >> 16</entry>
</row>
<row>
<entry>orl</entry>
<entry>special</entry>
</row>
<row>
+<entry>copyq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>cmpeqq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>cmpgtsq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>andq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>andnq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>orq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>xorq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>addq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>subq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>shlq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8S</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>shrsq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8S</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>shruq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8S</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
<entry>convsbw</entry>
<entry>2</entry>
<entry>1</entry>
<entry>2</entry>
<entry>4</entry>
<entry></entry>
-<entry>convert signed to unsigned with saturation</entry>
+<entry>convert signed to signed with saturation</entry>
<entry>clamp(a)</entry>
</row>
<row>
<entry>2</entry>
<entry>4</entry>
<entry></entry>
-<entry>convert signed to signed with saturation</entry>
+<entry>convert signed to unsigned with saturation</entry>
<entry>clamp(a)</entry>
</row>
<row>
<entry>2</entry>
<entry>4</entry>
<entry></entry>
-<entry>convert unsigned to unsigned with saturation</entry>
+<entry>convert unsigned to signed with saturation</entry>
<entry>clamp(a)</entry>
</row>
<row>
<entry>2</entry>
<entry>4</entry>
<entry></entry>
-<entry>convert unsigned to signed with saturation</entry>
+<entry>convert unsigned to unsigned with saturation</entry>
<entry>clamp(a)</entry>
</row>
<row>
<entry>4</entry>
<entry>8</entry>
<entry></entry>
-<entry></entry>
-<entry></entry>
+<entry>convert</entry>
+<entry>a</entry>
</row>
<row>
<entry>convsssql</entry>
<entry>4</entry>
<entry>8</entry>
<entry></entry>
-<entry>convert signed to unsigned with saturation</entry>
+<entry>convert signed to signed with saturation</entry>
<entry>clamp(a)</entry>
</row>
<row>
<entry>4</entry>
<entry>8</entry>
<entry></entry>
-<entry>convert signed to signed with saturation</entry>
+<entry>convert signed to unsigned with saturation</entry>
<entry>clamp(a)</entry>
</row>
<row>
<entry>4</entry>
<entry>8</entry>
<entry></entry>
-<entry>convert unsigned to unsigned with saturation</entry>
+<entry>convert unsigned to signed with saturation</entry>
<entry>clamp(a)</entry>
</row>
<row>
<entry>4</entry>
<entry>8</entry>
<entry></entry>
-<entry>convert unsigned to signed with saturation</entry>
+<entry>convert unsigned to unsigned with saturation</entry>
<entry>clamp(a)</entry>
</row>
<row>
<entry>special</entry>
</row>
<row>
+<entry>swapwl</entry>
+<entry>4</entry>
+<entry>4</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>swapq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>swaplq</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
<entry>select0wb</entry>
<entry>1</entry>
<entry>2</entry>
<entry>special</entry>
</row>
<row>
+<entry>splitql</entry>
+<entry>4</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
<entry>splitlw</entry>
<entry>2</entry>
<entry>4</entry>
<entry>convert integer to floating point</entry>
<entry>a</entry>
</row>
+<row>
+<entry>addd</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>subd</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>muld</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>divd</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>sqrtd</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>maxd</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>mind</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>cmpeqd</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>cmpltd</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>cmpled</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>convdl</entry>
+<entry>4</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>convld</entry>
+<entry>8</entry>
+<entry>4</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>convfd</entry>
+<entry>8</entry>
+<entry>4</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
+<row>
+<entry>convdf</entry>
+<entry>4</entry>
+<entry>8</entry>
+<entry></entry>
+<entry></entry>
+<entry></entry>
+</row>
</tbody>
</tgroup>
</table>
{ "minsl", "(a < b) ? a : b", "signed minimum" },
{ "minul", "(a < b) ? a : b", "unsigned minimum" },
{ "mulll", "a * b", "low bits of multiply" },
- { "mulhsl", "(a * b) >> 8", "high bits of signed multiply" },
- { "mulhul", "(a * b) >> 8", "high bits of unsigned multiply" },
+ { "mulhsl", "(a * b) >> 16", "high bits of signed multiply" },
+ { "mulhul", "(a * b) >> 16", "high bits of unsigned multiply" },
{ "orl", "a | b", "bitwise or" },
{ "shll", "a << b", "shift left" },
{ "shrsl", "a >> b", "signed shift right" },
{ "convusswb", "clamp(a)", "convert unsigned to signed with saturation" },
{ "convuuswb", "clamp(a)", "convert unsigned to unsigned with saturation" },
{ "convlw", "a", "convert" },
- { "convssslw", "clamp(a)", "convert signed to unsigned with saturation" },
- { "convsuslw", "clamp(a)", "convert signed to signed with saturation" },
- { "convusslw", "clamp(a)", "convert unsigned to unsigned with saturation" },
- { "convuuslw", "clamp(a)", "convert unsigned to signed with saturation" },
+ { "convssslw", "clamp(a)", "convert signed to signed with saturation" },
+ { "convsuslw", "clamp(a)", "convert signed to unsigned with saturation" },
+ { "convusslw", "clamp(a)", "convert unsigned to signed with saturation" },
+ { "convuuslw", "clamp(a)", "convert unsigned to unsigned with saturation" },
{ "mulsbw", "a * b", "multiply signed" },
{ "mulubw", "a * b", "multiply unsigned" },
{ "mulswl", "a * b", "multiply signed" },
{ "convulq", "a", "unsigned convert" },
{ "convhwb", "a>>8", "shift and convert" },
{ "convhlw", "a>>16", "shift and convert" },
- { "convsssql", "clamp(a)", "convert signed to unsigned with saturation" },
- { "convsusql", "clamp(a)", "convert signed to signed with saturation" },
- { "convussql", "clamp(a)", "convert unsigned to unsigned with saturation" },
- { "convuusql", "clamp(a)", "convert unsigned to signed with saturation" },
+ { "convsssql", "clamp(a)", "convert signed to signed with saturation" },
+ { "convsusql", "clamp(a)", "convert signed to unsigned with saturation" },
+ { "convussql", "clamp(a)", "convert unsigned to signed with saturation" },
+ { "convuusql", "clamp(a)", "convert unsigned to unsigned with saturation" },
};