From 857a41723e52129af4f0f5871b16adb2471f29c7 Mon Sep 17 00:00:00 2001 From: Jacob Lifshay Date: Wed, 22 Mar 2023 13:29:15 -0700 Subject: [PATCH] remove redundant text I can't read the commitdiff of d827d9e11ce635d52652f8936a454319fa2ebea9, so I'm reverting and reapplying it as a set of split-up commits. --- openpower/sv/rfc/ls006.mdwn | 41 ------------------------------------- 1 file changed, 41 deletions(-) diff --git a/openpower/sv/rfc/ls006.mdwn b/openpower/sv/rfc/ls006.mdwn index c11b36673..7a87cde1d 100644 --- a/openpower/sv/rfc/ls006.mdwn +++ b/openpower/sv/rfc/ls006.mdwn @@ -62,47 +62,6 @@ IEEE 754 doesn't specify what results are obtained when converting a NaN or out- of the different variants, listing the languages and hardware that implements each variant. -For convenience, we will give those different conversion semantics names based on which common ISA or programming language uses them, since there may not be an established name for them: - -* **Standard OpenPOWER-style conversion** - -This conversion, performs "saturation with NaN converted to minimum valid integer". This -is also exactly the same as the x86 ISA conversion semantics. -OpenPOWER has instructions for this conversion semantic for both: - -* rounding mode read from FPSCR -* rounding mode always set to truncate - -* **Java/Saturating conversion** - -For the sake of simplicity, the FP -> Integer conversion semantics generalized from those used by Java's semantics (and Rust's `as` operator) will be referred to as -[Java/Saturating conversion semantics](#fp-to-int-java-saturating-conversion-semantics). - -Those same semantics are used in some way by all of the following languages (not necessarily for the default conversion method): - -* Java's - [FP -> Integer conversion](https://docs.oracle.com/javase/specs/jls/se16/html/jls-5.html#jls-5.1.3) (only for long/int results) -* Rust's FP -> Integer conversion using the - [`as` operator](https://doc.rust-lang.org/reference/expressions/operator-expr.html#semantics) -* LLVM's - [`llvm.fptosi.sat`](https://llvm.org/docs/LangRef.html#llvm-fptosi-sat-intrinsic) and - [`llvm.fptoui.sat`](https://llvm.org/docs/LangRef.html#llvm-fptoui-sat-intrinsic) intrinsics -* SPIR-V's OpenCL dialect's - [`OpConvertFToU`](https://www.khronos.org/registry/spir-v/specs/unified1/SPIRV.html#OpConvertFToU) and - [`OpConvertFToS`](https://www.khronos.org/registry/spir-v/specs/unified1/SPIRV.html#OpConvertFToS) - instructions when decorated with - [the `SaturatedConversion` decorator](https://www.khronos.org/registry/spir-v/specs/unified1/SPIRV.html#_a_id_decoration_a_decoration). -* WebAssembly has also introduced - [trunc_sat_u](ttps://webassembly.github.io/spec/core/exec/numerics.html#op-trunc-sat-u) and - [trunc_sat_s](https://webassembly.github.io/spec/core/exec/numerics.html#op-trunc-sat-s) - -* **JavaScript conversion** - -For the sake of simplicity, the FP -> Integer conversion semantics generalized from those used by JavaScripts's `ToInt32` abstract operation will be referred to as [JavaScript conversion semantics](#fp-to-int-javascript-conversion-semantics). - -This instruction is present in ARM assembler as FJCVTZS - - **Notes and Observations**: * TODO -- 2.30.2