From: Jacob Lifshay Date: Mon, 17 Jul 2023 22:38:01 +0000 (-0700) Subject: remove fminmaxs since it's redundant with fminmax X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f5a9262f1ac052d08c4beb511eb15396cd87b94a;p=libreriscv.git remove fminmaxs since it's redundant with fminmax --- diff --git a/openpower/power_trans_ops.mdwn b/openpower/power_trans_ops.mdwn index e6f1dcb33..9178ed5f8 100644 --- a/openpower/power_trans_ops.mdwn +++ b/openpower/power_trans_ops.mdwn @@ -33,10 +33,10 @@ Parenthesized entries are not part of fptrans. | 11110 | `11110 01100`
fexp10(s) (draft) | `11110 01101`
flog10(s) (draft) | `11110 01110`
(fcfidu(s)) | `11110 01111`
fremainder(s) (draft) | | 11111 | `11111 01100`
fpowr(s) (draft) | `11111 01101`
fpow(s) (draft) | `11111 01110`
  | `11111 01111`
  | -| XO LSB half →
XO MSB half ↓ | 10000 | 10001 | 10010 | 10011 | -|-----------------------------------------------|----------------------------------------------------|----------------------------------------|-------------------------------------------|----------------------------------------| -| ////0 | `....0 10000`
fminmax(s) (draft) | `////0 10001`
  | `////0 10010`
(fdiv(s)) | `////0 10011`
  | -| ////1 | `////1 10000`
  | `////1 10001`
  | `////1 10010`
(fdiv(s)) | `////1 10011`
  | +| XO LSB half →
XO MSB half ↓ | 10000 | 10001 | 10010 | 10011 | +|-----------------------------------------------|-------------------------------------------------|----------------------------------------|-------------------------------------------|----------------------------------------| +| ////0 | `....0 10000`
fminmax (draft) | `////0 10001`
  | `////0 10010`
(fdiv(s)) | `////0 10011`
  | +| ////1 | `////1 10000`
  | `////1 10001`
  | `////1 10010`
(fdiv(s)) | `////1 10011`
  | # DRAFT List of 2-arg opcodes @@ -60,7 +60,7 @@ Recommended 10-bit XO assignments: | fpowr(s) | xy (x >= 0) | 11111 01100 | FRB | | frootn(s) | n√x (n ∈ ℤ) | 11011 01101 | RB | | fhypot(s) | √(x2 + y2) | 10100 01110 | FRB | -| fminmax(s) | min/max | ....0 10000 | FRB | +| fminmax | min/max | ....0 10000 | FRB | | fmod(s) | modulus | 11010 01111 | FRB | | fremainder(s) | IEEE 754 remainder | 11110 01111 | FRB | diff --git a/openpower/sv/rfc/ls013.mdwn b/openpower/sv/rfc/ls013.mdwn index d15c6876b..f741dd6ac 100644 --- a/openpower/sv/rfc/ls013.mdwn +++ b/openpower/sv/rfc/ls013.mdwn @@ -231,34 +231,6 @@ see [`FMM` -- Floating Min/Max Mode](#fmm-floating-min-max-mode) ---------- -## Floating Minimum/Maximum Single MM-form - -* fminmaxs FRT, FRA, FRB, FMM -* fminmaxs. FRT, FRA, FRB, FMM - -``` - |0 |6 |11 |16 |21 |25 |31 | - | PO | FRT | FRA | FRB | FMM | XO | Rc | -``` - -Compute the minimum/maximum of FRA and FRB, according to FMM, and store the -result in FRT. - -Special Registers altered: - -``` - FX VXSNAN - CR1 (if Rc=1) -``` - -Extended Mnemonics: - -see [`FMM` -- Floating Min/Max Mode](#fmm-floating-min-max-mode) - ----------- - -\newpage{} - # Fixed-Point Instructions These are signed and unsigned, min or max. SVP64 Prefixing defines Saturation @@ -359,7 +331,7 @@ Add the following new fields to Book I 1.6.2 Word Instruction Fields: ``` FMM (21:24) - Field used to specify minimum/maximum mode for fminmax[s]. + Field used to specify minimum/maximum mode for fminmax. Formats: MM @@ -386,7 +358,6 @@ Add `MM` to the `Formats:` list for all of `FRT`, `FRA`, `FRB`, `XO (25:30)`, | Form | Book | Page | Version | Mnemonic | Description | |------|------|------|---------|----------|-------------| | MM | I | # | 3.2B | fminmax | Floating Minimum/Maximum | -| MM | I | # | 3.2B | fminmaxs | Floating Minimum/Maximum Single | | MM | I | # | 3.2B | minmax | Minimum/Maximum | ## fmax instruction count