Request for review (xs) 8006040: NPG: on_stack processing wastes space in ConstantPool

David Holmes david.holmes at
Sun Jan 20 18:29:46 PST 2013

Hi Coleen,


    // all fields are initialized; needed for GC
-   set_on_stack(false);

Isn't the comment tied to the now deleted line?

!   if (has_pseudo_string() || has_invokedynamic() || has_preresolution()) {
       if (has_pseudo_string()) st->print(" has_pseudo_string");
       if (has_invokedynamic()) st->print(" has_invokedynamic");
       if (has_preresolution()) st->print(" has_preresolution");

The double-checking of the conditions here is not nice.

Otherwise flag changes look good, as do moving MetadataMarkOnStack 


On 19/01/2013 2:41 AM, Coleen Phillimore wrote:
> This is relatively easy, anyone? Also, it doesn't affect the SA. I checked.
> Thanks,
> Coleen
> On 1/16/2013 4:23 PM, Coleen Phillimore wrote:
>> Summary: Added on_stack bit to _flags. Also MetadataMarkOnStack is
>> used for more than JVMTI so had to be moved.
>> Confirmed with John and Chris that setting invokedynamic bits doesn't
>> require atomic operations so I can add on_stack to the flags.
>> open webrev at
>> bug link at
>> Tested NSK quick.testlist and runThese.
>> Thanks,
>> Coleen

More information about the hotspot-runtime-dev mailing list