RFR: 8229797: [JVMCI] Clean up no longer used JVMCI::dependencies_invalid value.

Doug Simon doug.simon at oracle.com
Wed Aug 28 12:11:24 UTC 2019

Hi Xiaohong,

Thanks for making this change.

For future reference, you only need to send the RFR email for a JVMCI change in OpenJDK to hotspot-compiler-dev at openjdk.java.net (which I see you’ve done as well).


> On 28 Aug 2019, at 03:54, Xiaohong Gong (Arm Technology China) <Xiaohong.Gong at arm.com> wrote:
> Hi,
>   Please help to review this jvmci patch:
>   Webrew: http://cr.openjdk.java.net/~pli/rfr/8229797/webrev.00/ <http://cr.openjdk.java.net/~pli/rfr/8229797/webrev.00/>
>   JBS: https://bugs.openjdk.java.net/browse/JDK-8229797 <https://bugs.openjdk.java.net/browse/JDK-8229797>
>   This patch fix issue: https://github.com/oracle/graal/issues/1587 <https://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_oracle_graal_issues_1587&d=DwMFAg&c=RoP1YumCXCgaWHvlZYR8PZh8Bv7qIrMUB65eapI_JnE&r=BmNY5KuefACTr_P43s8fXOXgNDkDiqlviyafeiVaP18&m=HAIG1kZmXe7rRLHnK-WpdTHsQYhGOrQAZ6JHosxFLfs&s=emh-SS67iRljJ66ByQ9i_9LhSMM5kwcvc3P2YcjymyI&e=>.
>   The loading of new classes can cause dependencies to become false, which requires the dependent
> nmethods to be discarded and deoptimized. So if validating dependencies fails, it should make the
> result to be JVMCI::dependencies_failed, which makes jvmci throw the BailoutException.
>   The invalid dependencies happen at the time of installation without any intervening modification of
> the system dictionary. So as the system dictionary modification optimization has been removed, the
> compiler can not know whether the failed dependencies are triggered by class reloading or not. It's
> better to use dependencies_failed to mark the result.
> Thanks,
> Xiaohong Gong

More information about the graal-dev mailing list