RFR (S) 8250589: Move Universe::_reference_pending_list into OopHandle

coleen.phillimore at oracle.com coleen.phillimore at oracle.com
Mon Jul 27 14:10:43 UTC 2020



On 7/27/20 9:21 AM, Aleksey Shipilev wrote:
> On 7/27/20 3:05 PM, coleen.phillimore at oracle.com wrote:
>> Summary: Use synchronization to reference the _reference_pending_list
>> with OopHandle
>>
>> Tested with tier1-6 with 100% passed (no other existing test failures!)
>>
>> open webrev at http://cr.openjdk.java.net/~coleenp/2020/8250589.01/webrev
> Looks okay, modulo these:
>
> *) I don't see a reason to put a comment to the otherwise generic method like this:
>
>    67   inline oop xchg(oop new_value); // needed for reference_pending_list

Ok, yes, I agree.  I'll remove it.
>
> *) The change below implicitly tests for NULL now? Seems like _reference_pending_list.peek() would
> be more efficient here, as it would not ask GC to keep the oop alive (especially when it is
> guaranteed to be already alive, right?).
>
>   bool Universe::has_reference_pending_list() {
>     assert_pll_ownership();
> -  return _reference_pending_list != NULL;
> +  return _reference_pending_list.resolve();
>   }
>
This can be peek().  I'll change it.

Thank you for reviewing this!
Coleen


More information about the hotspot-dev mailing list