[prev in list] [next in list] [prev in thread] [next in thread]
List: openjdk-hotspot-runtime-dev
Subject: RE: [13] RFR (M): 8223213: Implement fast class initialization checks on x86-64
From: "Doerr, Martin" <martin.doerr () sap ! com>
Date: 2019-05-28 14:03:44
Message-ID: AM6PR02MB4788CF0DC11DD1A9123394589A1E0 () AM6PR02MB4788 ! eurprd02 ! prod ! outlook ! com
[Download RAW message or body]
Hi Vladimir,
thanks for the update. Looks good.
Best regards,
Martin
> -----Original Message-----
> From: Vladimir Ivanov <vladimir.x.ivanov@oracle.com>
> Sent: Dienstag, 28. Mai 2019 13:41
> To: Doerr, Martin <martin.doerr@sap.com>; hotspot compiler <hotspot-
> compiler-dev@openjdk.java.net>; hotspot-runtime-dev <hotspot-runtime-
> dev@openjdk.java.net>; hotspot-dev developers <hotspot-
> dev@openjdk.java.net>
> Subject: Re: [13] RFR (M): 8223213: Implement fast class initialization checks
> on x86-64
>
> Thanks, Martin.
>
> Updated webrev:
> http://cr.openjdk.java.net/~vlivanov/8223213/webrev.02/
>
> > Are these assertions safe?
> > + assert(method()->needs_clinit_barrier(), "barrier not needed");
> > + assert(method()->holder()->is_being_initialized(), "barrier not
> needed");
> > Can it happen that initialization concurrently completes before they are
> evaluated?
>
> Good point. Even though ciInstanceKlass caches initialization state of
> the corresponding InstanceKlass, it seems there's a possibility that the
> state is updated during the compilation (see
> ciInstanceKlass::update_if_shared). I enhanced the asserts to check that
> initialization has been stated.
>
> > A small suggestion for x86 TemplateTable::invokeinterface:
> > It'd be nice to replace load of interface klass by your new
> load_method_holder.
>
> Agree. Updated.
>
> Best regards,
> Vladimir Ivanov
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic