RFR: 8239347: Refactor Symbol to make _length a standalone field again

Claes Redestad claes.redestad at oracle.com
Tue Feb 18 16:21:56 UTC 2020


Hi,

JDK-8207359 merged Symbol::_refcount and _length into a single field. We
could refactor this to instead pack _refcount and _identity_hash,
leaving _length as a standalone field.

_length is used in a lot more places, so not having to call a method to
extract the value using shifts results in a code size reduction and
potential speed-up. Except for a path only used when dumping CDS
archives, _identity_hash is only accessed in one place, and there in
conjunction with an access to length.

Bug:    https://bugs.openjdk.java.net/browse/JDK-8239347
Webrev: http://cr.openjdk.java.net/~redestad/8239347/open.00/

Testing: tier1-4, verified a small static footprint reduction (~4kb),
          verified accesses to _length reduced from a mov+shr to a
          movzwl

/Claes


More information about the hotspot-runtime-dev mailing list