Parenthesized entries are not part of fptrans.
-| XO LSB half → <br/> XO MSB half ↓ | 01100 | 01101 | 01110 | 01111 |
-| ----- | ----- | ----- | ----- | ----- |
-| 10000 | <small>`10000 01100`</small><br/>(ffadds) (draft) | <small>`10000 01101`</small><br/>fsinpis (draft) | <small>`10000 01110`</small><br/>fatan2pis (draft) | <small>`10000 01111`</small><br/>fasinpis (draft) |
-| 10001 | <small>`10001 01100`</small><br/>fcospis (draft) | <small>`10001 01101`</small><br/>ftanpis (draft) | <small>`10001 01110`</small><br/>facospis (draft) | <small>`10001 01111`</small><br/>fatanpis (draft) |
-| 10010 | <small>`10010 01100`</small><br/>**TBD** (draft) | <small>`10010 01101`</small><br/>fsins (draft) | <small>`10010 01110`</small><br/>fatan2s (draft) | <small>`10010 01111`</small><br/>fasins (draft) |
-| 10011 | <small>`10011 01100`</small><br/>fcoss (draft) | <small>`10011 01101`</small><br/>ftans (draft) | <small>`10011 01110`</small><br/>facoss (draft) | <small>`10011 01111`</small><br/>fatans (draft) |
-| 10100 | <small>`10100 01100`</small><br/>**TBD** (draft) | <small>`10100 01101`</small><br/>fsinhs (draft) | <small>`10100 01110`</small><br/>fhypots (draft) | <small>`10100 01111`</small><br/>fasinhs (draft) |
-| 10101 | <small>`10101 01100`</small><br/>fcoshs (draft) | <small>`10101 01101`</small><br/>ftanhs (draft) | <small>`10101 01110`</small><br/>facoshs (draft) | <small>`10101 01111`</small><br/>fatanhs (draft) |
-| 10110 | <small>`10110 01100`</small><br/>**TBD** (draft) | <small>`10110 01101`</small><br/>**TBD** (draft) | <small>`10110 01110`</small><br/>**TBD** (draft) | <small>`10110 01111`</small><br/>**TBD** (draft) |
-| 10111 | <small>`10111 01100`</small><br/>**TBD** (draft) | <small>`10111 01101`</small><br/>**TBD** (draft) | <small>`10111 01110`</small><br/>**TBD** (draft) | <small>`10111 01111`</small><br/>**TBD** (draft) |
+| XO LSB half →<br> XO MSB half ↓ | 01100 | 01101 | 01110 | 01111 |
+|-----------------------------------------------|-------|-------|-------|-------|
+| 10000 | <small>`10000 01100`</small><br/> (ffadds) (draft) | <small>`10000 01101`</small><br/> fsinpis (draft) | <small>`10000 01110`</small><br/> fatan2pis (draft) | <small>`10000 01111`</small><br/> fasinpis (draft) |
+| 10001 | <small>`10001 01100`</small><br /> fcospis (draft) | <small>`10001 01101`</small><br /> ftanpis (draft) | <small>`10001 01110`</small><br /> facospis (draft) | <small>`10001 01111`</small><br /> fatanpis (draft) |
+| 10010 | <small>`10010 01100`</small><br /> **TBD** (draft) | <small>`10010 01101`</small><br /> fsins (draft) | <small>`10010 01110`</small><br /> fatan2s (draft) | <small>`10010 01111`</small><br /> fasins (draft) |
+| 10011 | <small>`10011 01100`</small><br /> fcoss (draft) | <small>`10011 01101`</small><br /> ftans (draft) | <small>`10011 01110`</small><br /> facoss (draft) | <small>`10011 01111`</small><br /> fatans (draft) |
+| 10100 | <small>`10100 01100`</small><br /> **TBD** (draft) | <small>`10100 01101`</small><br /> fsinhs (draft) | <small>`10100 01110`</small><br /> fhypots (draft) | <small>`10100 01111`</small><br /> fasinhs (draft) |
+| 10101 | <small>`10101 01100`</small><br /> fcoshs (draft) | <small>`10101 01101`</small><br /> ftanhs (draft) | <small>`10101 01110`</small><br /> facoshs (draft) | <small>`10101 01111`</small><br /> fatanhs (draft) |
+| 10110 | <small>`10110 01100`</small><br /> **TBD** (draft) | <small>`10110 01101`</small><br /> **TBD** (draft) | <small>`10110 01110`</small><br /> **TBD** (draft) | <small>`10110 01111`</small><br /> **TBD** (draft) |
+| 10111 | <small>`10111 01100`</small><br /> **TBD** (draft) | <small>`10111 01101`</small><br /> **TBD** (draft) | <small>`10111 01110`</small><br /> **TBD** (draft) | <small>`10111 01111`</small><br /> **TBD** (draft) |
## PO=63 XO=10--011--
Power ISA v3.1B opcodes extracted from Power ISA v3.1B Appendix D Table 25 sheet 2 of 4 page 1399
| XO LSB half → <br/> XO MSB half ↓ | 01100 | 01101 | 01110 | 01111 |
-| ----- | ----- | ----- | ----- | ----- |
+|-------------------------------------------------|-------|-------|-------|-------|
| 10000 | | | | |
| 10001 | | | | |
| 10010 | | | | |
set across full and half width.
| opcode | Description | Major 59 and 63 |
-| ------ | ---------------- | --------------- |
+|------------|-----------------------------------------|-----------------|
| fatan2(s) | atan2 arc tangent | 10010 01110 |
| fatan2pi(s)| atan2 arc tangent / π | 10000 01110 |
| fpow(s) | x<sup>y</sup> | |
Recommended 10-bit XO with the low 5 LSBs 01100:
| opcode | Description | Major 59 and 63 |
-| ------ | ---------------- | --------------- |
+|------------|--------------------------|-----------------|
| frsqrt(s) | 1 / √x | |
| fcbrt(s) | ∛x | |
| frecip(s) | 1 / x | |
Recommended 10-bit XO with the low 5 LSBs 01101 to 01111:
| opcode | Description | Major 59 and 63 |
-| ------ | ---------------- | ---------------- |
+|-------------|--------------------------|------------------|
| fsin(s) | sin (radians) | 10010 01101 |
| fcos(s) | cos (radians) | 10011 01100 |
| ftan(s) | tan (radians) | 10011 01101 |
\newcommand{\ErrorTok}[1]{\textcolor[rgb]{1.00,0.00,0.00}{\textbf{#1}}}
\newcommand{\NormalTok}[1]{#1}
+% these come from:
+% https://gist.github.com/bgeron/72ebbacf5930537022079d9953f15713
+\usepackage{newunicodechar}
+\newcommand\DeclareUnicodeInv[2]{\DeclareUnicodeCharacter{#2}{#1}}
+
+\DeclareUnicodeCharacter{03A0}{\ensuremath{\Pi}}
+\DeclareUnicodeCharacter{2208}{\ensuremath{\in}}
+\DeclareUnicodeCharacter{03C0}{\ensuremath{\pi}}
+\DeclareUnicodeCharacter{221A}{$\sqrt{}$}
+\DeclareUnicodeCharacter{221B}{$\sqrt[3]{}$}
+\DeclareUnicodeInv{\ensuremath{\mathbb{Z}}}{2124}
+
% indent all verbatim
\catcode`\@=11
\let \saveverbatime \@xverbatim