RFR: 8253970: Build error: address argument to atomic builtin must be a pointer to integer or pointer ('volatile narrowOop *' invalid)
Kim Barrett
kbarrett at openjdk.java.net
Sat Oct 3 16:08:36 UTC 2020
On Sat, 3 Oct 2020 13:29:03 GMT, Jie Fu <jiefu at openjdk.org> wrote:
> __sync_val_compare_and_swap shouldn't call with narrowOop* for clang after JDK-8247912.
> Before passing type T to __sync_val_compare_and_swap, the fix converts T to uint32_t* if sizeof(T) == 4.
>
> Testing:
> - Zero VM build on Linux and MacOS with clang
> - Zero VM build on Linux with gcc
No, don't make this change. Something else is going wrong here. The Platform layer shouldn't be called with enum
types; the higher level platform-independent layer should have canonicalized such to the associated underlying integral
types.
-------------
PR: https://git.openjdk.java.net/jdk/pull/496
More information about the hotspot-runtime-dev
mailing list