[15] RFR (L): 7175279: Don't use x87 FPU on x86-64
Jesper Wilhelmsson
jesper.wilhelmsson at oracle.com
Tue Dec 17 14:26:29 UTC 2019
Hi,
This is a fairly large (wide spread) change. Is there any risk for conflicts with remaining work in JDK 14?
In the interest of keeping forwardports as conflict free as possible, would it make sense to hold this change until the number of changes in 14 has dropped?
Thanks,
/Jesper
> On 17 Dec 2019, at 13:50, Vladimir Ivanov <vladimir.x.ivanov at oracle.com> wrote:
>
> http://cr.openjdk.java.net/~vlivanov/7175279/webrev.00/
> https://bugs.openjdk.java.net/browse/JDK-7175279
>
> There was a major rewrite of math intrinsics which in 9 time frame which almost completely eliminated x87 code in x86-64 code base.
>
> Proposed patch removes the rest and makes x86-64 code x87-free.
>
> The main motivation for the patch is to completely eliminate non-strictfp behaving code in order to prepare the JVM for JEP 306 [1] and related enhancements [2].
>
> Most of the changes are in C1, but there is one case in template interpreter (java_lang_math_abs) which now uses StubRoutines::x86::double_sign_mask(). It forces its initialization to be moved to StubRoutines::initialize1().
>
> x87 instructions are made available only on x86-32.
>
> C1 changes involve removing FPU support on x86-64 and effectively make x86-specific support in linear scan allocator [2] x86-32-only.
>
> Testing: tier1-6, build on x86-23, linux-aarch64, linux-arm32.
>
> Best regards,
> Vladimir Ivanov
>
> [1] https://bugs.openjdk.java.net/browse/JDK-8175916
>
> [2] https://bugs.openjdk.java.net/browse/JDK-8136414
>
> [3] http://hg.openjdk.java.net/jdk/jdk/file/ff7cd49f2aef/src/hotspot/cpu/x86/c1_LinearScan_x86.cpp
More information about the hotspot-compiler-dev
mailing list