RFR 8209138: Symbol constructor uses u1 as the element type of its name argument

coleen.phillimore at oracle.com coleen.phillimore at oracle.com
Mon Aug 20 18:58:44 UTC 2018

This change looks really good!


+ char ch = (char) type->char_at(0);

There are still a lot of (char*) casts to the return of chars() function 
calls.  Can you remove all of the casts?


+ const char* raw_bytes() { return _signature->chars() + _begin; }
    int          raw_length() { return _end - _begin; }

Nit, can you line up the '{'.


Since there were changes to the vmStructs, were there necessary changes 
to SA.   I don't know which tier the SA tests run in.

make run-test TEST=open/test/hotspot/jtreg/serviceability/sa
would do the trick.

Thank you for fixing this!

On 8/20/18 10:43 AM, Harold David Seigel wrote:
> Hi,
> Please review this change for bug JDK-8209138.  The fix changes class 
> Symbol in symbol.hpp to use type char instead of types u1 and jbyte 
> and renames relevant functions by replacing 'byte' with 'char'.  For 
> example, 'Symbol::byte_at_put()' is now 'Symbol::char_at_put()'.
> Open Webrev: 
> http://cr.openjdk.java.net/~hseigel/bug_8209138/webrev/index.html
> JBS Bug:  https://bugs.openjdk.java.net/browse/JDK-8209138
> The change was tested by running Mach5 tiers 1 and 2 tests and builds 
> on Linux-x64, Windows, and Mac OS X, running tiers 3-5 tests on 
> Linux-x64, and by running JCK-11 API, Lang and VM tests on Linux-x64.
> Thanks, Harold

More information about the hotspot-runtime-dev mailing list