RFR: 8227168: Cleanup usage of NEW_C_HEAP_ARRAY

Kim Barrett kim.barrett at oracle.com
Mon Sep 2 23:46:29 UTC 2019

> On Sep 2, 2019, at 5:59 PM, David Holmes <david.holmes at oracle.com> wrote:
> On 2/09/2019 10:23 pm, Leo Korinth wrote:
>> Hi!
>> After I got caught doing an unnecessary check on the return value of NEW_C_HEAP_ARRAY (a mistake that I copied) I thought it would be good to do a cleanup in the sources so that others would not fall into this trap. This is the result.
>> I have removed some places where the VM will be shut down after NEW_C_HEAP_ARRAY returns NULL (it never does return NULL, it does instead exit). I have also removed lots of unnecessary casts, that might hide bugs.
> Those changes all seem fine, as are the perfMemory changes.
> My only issue is with the places where you can changed allocation of a NEW_C_HEAP_ARRAY of size 1 to a NEW_C_HEAP_OBJ. They are still freed with FREE_C_HEAP_ARRAY which looks odd even though correct (in that it's all os::free under the covers anyway). I'm not sure this change is worth the potential confusion it may cause.

I noticed that too, and then forgot about it.  I agree that’s not right.  I think those places
should be changed to use FREE_C_HEAP_OBJ for the deallocation.

More information about the hotspot-dev mailing list