harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Cornwall (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HARMONY-5682) [classlib][pack200] Sped up hashCode and removed dead getCpAll()
Date Wed, 02 Apr 2008 16:57:27 GMT

     [ https://issues.apache.org/jira/browse/HARMONY-5682?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Andrew Cornwall updated HARMONY-5682:
-------------------------------------

    Attachment: main.patch

Code changes described above

> [classlib][pack200] Sped up hashCode and removed dead getCpAll()
> ----------------------------------------------------------------
>
>                 Key: HARMONY-5682
>                 URL: https://issues.apache.org/jira/browse/HARMONY-5682
>             Project: Harmony
>          Issue Type: Improvement
>          Components: Classlib
>         Environment: All Pack200
>            Reporter: Andrew Cornwall
>         Attachments: main.patch
>
>
> This patch does two things, one of which may be controversial.
> The uncontroversial code removes SegmentConstantPool.getCpAll(), since it is no longer
used.
> The other code changes hashCode in CPUTF8, CPClass and CPRef. Because hashCode is used
frequently, making it fast is a good idea. In the pack200 code as it exists, hashCode is never
called for CPUTF8, CPClass or CPRef unless all instance variables have been set. The changes
to hashCode make the assumption that this will always hold. As a consequence, hashCode will
throw a NullPointerException when sent to uninitialized instances of these classes.
> The changes to hashCode do improve runtime by about 10%.

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


Mime
View raw message