RFR (XXS) 8037295: Add size_t versions of Atomic::add, dec, and inc
david.simms at oracle.com
Wed Mar 26 09:55:04 UTC 2014
On 26/03/2014 10:23 a.m., David Holmes wrote:
> This looks okay to me. Is there any reason not to provide xchg and
> cmpxchg size_t variants too?
> David H.
There seems to be only one currently valid use (task queue), but it
still requires casting...then there's a requirement for some ugly macro
to check if "size_t == unsigned int"...in which case we already have
those variants, i.e.:
+#if (UINT_MAX == SIZE_MAX) // size_t is an "unsigned int"
+#ifndef ATOMIC_SIZE_T_IS_UINT // else we already have it
+ inline static size_t cmpxchg (size_t exchange_value, volatile size_t* dest, size_t compare_value);
I didn't find this appealing (tried to see if templates made it
better...but this was even worse), and therefore chickened out.
Thanks for the review.
More information about the hotspot-runtime-dev