From: lkcl Date: Thu, 26 May 2022 12:47:56 +0000 (+0100) Subject: (no commit message) X-Git-Tag: opf_rfc_ls005_v1~2075 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=97da246e1804f850e2a4e2e616b2a99f6383452a;p=libreriscv.git --- diff --git a/openpower/sv/int_fp_mv.mdwn b/openpower/sv/int_fp_mv.mdwn index 8ff2322e4..984c7b632 100644 --- a/openpower/sv/int_fp_mv.mdwn +++ b/openpower/sv/int_fp_mv.mdwn @@ -120,11 +120,11 @@ v3.1 Prefixed (`pfmvis` and `pfishmv`). If so it is recommended that ## Load BF16 Immediate -`fmvis FRS, FI` +`fmvis FRS, D` -Reinterprets `FI << 16` as a 32-bit float, which is then converted to a +Reinterprets `D << 16` as a 32-bit float, which is then converted to a 64-bit float and written to `FRS`. This is equivalent to reinterpreting -`FI` as a `BF16` and converting to 64-bit float. +`D` as a `BF16` and converting to 64-bit float. There is no need for an Rc=1 variant because this is an immediate loading instruction. @@ -167,7 +167,7 @@ Pseudocode: ## Float Immediate, Second Half -`fishmv FRS, FI` +`fishmv FRS, D` DX-Form: @@ -182,7 +182,7 @@ a full FP32. If a prior `fmvis` instruction had been used to set the upper 16-bits of an FP32 value, `fishmv` contains the lower 16-bits. -The key difference between using `li` and `oris` to construxt 32-bit +The key difference between using `li` and `oris` to construct 32-bit GPR Immediates and `fishmv` is that the `fmvis` will have converted the `BF16` to FP64 (Double) format. This is taken into consideration as can be seen in the pseudocode below