From: lkcl Date: Wed, 25 May 2022 18:44:20 +0000 (+0100) Subject: (no commit message) X-Git-Tag: opf_rfc_ls005_v1~2088 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7481bcb1f0037a7859d5a3bfeaac5dedc5ec4b97;p=libreriscv.git --- diff --git a/openpower/sv/int_fp_mv.mdwn b/openpower/sv/int_fp_mv.mdwn index ed017bd28..b09bbd1f3 100644 --- a/openpower/sv/int_fp_mv.mdwn +++ b/openpower/sv/int_fp_mv.mdwn @@ -41,11 +41,12 @@ for data-transfer/conversion between FPRs and GPRs multiplies the savings. In addition, the vast majority of GPR <-> FPR data-transfers are as part of a FP <-> Integer conversion sequence, therefore reducing the number -of instructions required to the minimum seems necessary. +of instructions required is a priority. Therefore, we are proposing adding: -* FPR load-immediate equivalent partially to `BF16` +* FPR load-immediate instructions, one equivalent to `BF16`, the + other increasing accuracy to `FP32` * FPR <-> GPR data-transfer instructions that just copy bits without conversion * FPR <-> GPR combined data-transfer/conversion instructions that do Integer <-> FP conversions @@ -61,8 +62,8 @@ well-suited for common/important conversion sequences: * **JavaScript** - modulo wrapping with Inf/NaN converted to 0 The assembly listings in the [[int_fp_mv/appendix]] show how costly -some of these language-specific conversions are: Javascript is 32 -scalar instructions, including seven branch instructions. +some of these language-specific conversions are: Javascript, the +worst case, is 32 scalar instructions including seven branch instructions. # Proposed New Scalar Instructions