The message from this sender included one or more files
which could not be scanned for virus detection; do not
open these files unless you are certain of the sender's intent.

----------------------------------------------------------------------
> Implemented `Float.floatToFloat16` and `Float.float16ToFloat` intrinsics in 
> Interpreter and C1 compiler to produce the same results as C2 intrinsics on 
> x64, Aarch64 and RISC-V - all platforms where C2 intrinsics for these Java 
> methods were implemented originally.
> 
> Replaced `SharedRuntime::f2hf()` and `hf2f()` C runtime functions with calls 
> to runtime stubs which use the same HW instructions as C2 intrinsics. Only 
> for 64-bit x64 because 32-bit x86 stub does not work: result is passed 
> through FPU register and NaN values become different from C2 intrinsic. This 
> runtime stub is only used to calculate constant values during C2 compilation 
> and can be skipped.
> 
> I added new tests based on Tobias's `TestAll.java` And copied 
> `jdk/lang/Float/Binary16Conversion*.java` tests to run them with `-Xcomp` to 
> make sure code is compiled by C1 or C2. I modified 
> `Binary16ConversionNaN.java` to compare results from Interpreter, C1 and C2.
> 
> Tested tier1-5, Xcomp, stress

Vladimir Kozlov has updated the pull request incrementally with one additional 
commit since the last revision:

  Do not allow JIT compilation of Float.float16ToFloat and Float.floatToFloat16

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/12869/files
  - new: https://git.openjdk.org/jdk/pull/12869/files/9302d4bc..ed01863d

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=12869&range=02
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=12869&range=01-02

  Stats: 2 lines in 1 file changed: 2 ins; 0 del; 0 mod
  Patch: https://git.openjdk.org/jdk/pull/12869.diff
  Fetch: git fetch https://git.openjdk.org/jdk pull/12869/head:pull/12869

PR: https://git.openjdk.org/jdk/pull/12869

Reply via email to