RFR (M) 8186903: Remove j-types from Atomic
David Holmes
david.holmes at oracle.com
Thu Dec 7 02:41:16 UTC 2017
Hi Coleen,
On 7/12/2017 7:59 AM, coleen.phillimore at oracle.com wrote:
> Summary: Change parameter types from jlong, jint, jbyte to int64_t,
> int32_t and int8_t respectively
That's fine. But you also made a bunch of changes to rename the "ptr"
variants to "long", and in the process changed intptr_t to int64_t. The
change ptr->long isn't really accurate. And intptr_t and int64_t are
different sizes on 32-bit! So this change seems problematic and out of
scope by your own description. That said I thought we had/were getting
rid of the "ptr" variants ??
> Leave renaming functions for later change.
>
> Ran JPRT which builds more Oracle platforms, mach5 tier1-5 on
> windows/linux x64 and tier1 on solaris-sparcv9. Also built Zero product
> mode (fails building fastdebug for some other reason).
>
> Other platforms: could you please test this patch?
>
> open webrev at http://cr.openjdk.java.net/~coleenp/8186903.01/webrev
> bug link https://bugs.openjdk.java.net/browse/JDK-8186903
>
> This change is for JDK 11.
src/hotspot/cpu/x86/stubGenerator_x86_32.cpp
Return type should be int32_t not int
src/hotspot/os_cpu/windows_x86/os_windows_x86.hpp
- static intptr_t (*atomic_xchg_long_func) (jlong, volatile
jlong*);
- static intptr_t atomic_xchg_long_bootstrap (jlong, volatile
jlong*);
Wow - that looks like a bug! Only returns 32-bits on 32-bit!
Everything else seems fine.
Thanks,
David
> Thanks,
> Coleen
More information about the hotspot-runtime-dev
mailing list