You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Alexey Varlamov (JIRA)" <ji...@apache.org> on 2007/05/22 09:21:16 UTC
[jira] Commented: (HARMONY-3845) [drlvm][exception] Class unloading
support in lazy stack creation.
[ https://issues.apache.org/jira/browse/HARMONY-3845?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12497739 ]
Alexey Varlamov commented on HARMONY-3845:
------------------------------------------
Pavel,
Sorry for the delayed reply.
Regarding the 1st alternative, I'm reading in j.l.Throwable.getStackTrace() javadoc:
"Some virtual machines may, under some circumstances, omit one or more stack frames from the stack trace. In the extreme case, a virtual machine that has no stack trace information concerning this throwable is permitted to return a zero-length array from this method. Generally speaking, the array returned by this method will contain one element for every frame that would be printed by printStackTrace. "
So probably yes, formally we should omit a frame rather than keep it with "???".
In the second alternative, I meant saving pointers to C-structs named "String" (defined in String_Pool.h) which are readily available during stack creation. Looking deeper, Method_Handle is still needed for mapping IP to bc; so I was wrong saying "instead", but "in addition"...
I don't think we should refuse lazy stacks creation, obtaining line numbers is quite costly and should be avoided until really needed.
> [drlvm][exception] Class unloading support in lazy stack creation.
> ------------------------------------------------------------------
>
> Key: HARMONY-3845
> URL: https://issues.apache.org/jira/browse/HARMONY-3845
> Project: Harmony
> Issue Type: New Feature
> Components: DRLVM
> Reporter: Pavel Afremov
> Attachments: 0001-First-version-of-class-unloading-support-implementat.patch, 0002-Tune-class-unloading-support-in-lazy-stack-creation.patch, ExceptionsBenchmark.java
>
>
> Class unloading support in lazy stack creation.
> When classes are unloaded, stack traces for all exception should be created, because required information can be unreachable late. Static method "Throwable.createAllStackTraces() "should be called for it.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.