harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Pavel Ozhdikhin (JIRA)" <j...@apache.org>
Subject [jira] Commented: (HARMONY-1748) [drlvm][jit] IllegalAccessError is not thrown when running test on Jitrino.OPT
Date Wed, 02 May 2007 16:23:16 GMT

    [ https://issues.apache.org/jira/browse/HARMONY-1748?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12493134

Pavel Ozhdikhin commented on HARMONY-1748:

Pavel, thanks for reviewing the patch.

There are several optimizations in JIT where invokeinterface might be substituted with a virtual
or even direct call if the type of 'this' is known. All these optimizations use call to method_find_overridden_method()
to identify a proper accessible method in the actual class.

I can fix these several places in JIT (or the JIT part of the interface)  with the same check,
but changing one method in VM seems to me more elegant solution. I think the fix corresponds
to the description of the method:

"The function returns a method handle  for an accessible method overriding mh in ch or in
its closest superclass that overrides mh. Class ch must be a class not an interface."

If mh's class is interface than an overriding (actually implementing) method must be public,
otherwise IllegalAccessError occur during invocation of the method.

I agree that changing this method might be sensitive. I can run VTS tests over this patch.
Do you think this will be enough to ensure its correctness?

> [drlvm][jit] IllegalAccessError is not thrown when running test on Jitrino.OPT
> ------------------------------------------------------------------------------
>                 Key: HARMONY-1748
>                 URL: https://issues.apache.org/jira/browse/HARMONY-1748
>             Project: Harmony
>          Issue Type: Bug
>          Components: DRLVM
>         Environment: Windows XP, Pentium 4 3000 HT
>            Reporter: Alexander D Shipilov
>            Priority: Minor
>         Attachments: harmony-1748.patch, reproducecode.zip, reproducecodeJunit.zip
> Harmony crashes during attempt of call protected method from class, if this method declared
in parent interface as public.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message