You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Pavel Rebriy (JIRA)" <ji...@apache.org> on 2008/02/12 12:39:08 UTC

[jira] Commented: (HARMONY-5453) [drlvm][classloader] Create an execution mode to always resolve CP references

    [ https://issues.apache.org/jira/browse/HARMONY-5453?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12568059#action_12568059 ] 

Pavel Rebriy commented on HARMONY-5453:
---------------------------------------

Yes, Gregory, you are right. JNI AllocObject tries to alloc object with uninitilialized class.
I've created a simple test and it shows RI initialize object class in AllocObject funtion.
I've create a patch with class initiliazation. With the patch all acceptance test passed.

> [drlvm][classloader] Create an execution mode to always resolve CP references
> -----------------------------------------------------------------------------
>
>                 Key: HARMONY-5453
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5453
>             Project: Harmony
>          Issue Type: New Feature
>          Components: DRLVM
>         Environment: All
>            Reporter: Gregory Shimansky
>            Assignee: Gregory Shimansky
>            Priority: Minor
>         Attachments: HARMONY-5453.patch
>
>
> As was advised on the mail list by Mikhail Fursov http://harmony.markmail.org/message/3jw4h5u5fgqa3qcg I tried to create a mode where resolution is done all the times regardless whether some reference was resolved already or not. To make it work it is necessary to make some changes in the initialization because otherwise some classes are not initialized when they are already used for invokevirtual calls.
> The patch is not complete, it changes the code for class_is_cp_entry_resolved unconditionally, while I think it should depend on some property. Also kernel test fails on serialization because some Proxy class is not initialized. I think it happens because serialization code uses AllocObject JNI call to create objects without calling their constructor. In this way class for this object is not initialized.

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