Request for reviews (M): 6873116: Modify reexecute implementation to use pcDesc to record the reexecute bit

Tom Rodriguez Thomas.Rodriguez at Sun.COM
Wed Aug 19 13:26:32 PDT 2009


This looks good.  The SA fixes look right as well.  The only  
suggestion I might make is to pass the PcDesc into the ScopeDesc  
constructor instead of passing in each of the arguments.  It's ok the  
way it is but the arguments are just a mirror of PcDesc.

By the way, does anyone know why the objects for EA are decoded  
eagerly instead of being decoded lazily like all the other debug  
info?  That seems like unneeded overhead for most uses of ScopeDesc  
for stack walking.

tom

On Aug 19, 2009, at 10:55 AM, changpeng fang - Sun Microsystems -  
Santa Clara United States wrote:

> http://cr.openjdk.java.net/~cfang/6873116/webrev.00/
>
> Fixed 6873116:  Modify reexecute implementation to use pcDesc to  
> record the reexecute bit
>
> The implementation in this work is mostly from Christian's work on  
> reexecute/mh bit changes.
>
> Problem:
> Current implementation of reexecute bit uses DebugInfoStreams to  
> record the reexecute bit by compressing the reexecute bit
> into bci field. This makes the code look ugly  
> (e.g.read_bci_and_reexecute(bool& reexecute). It also makes the  
> future addition
> of debuginfo difficult.
>
> Solution:
> In this work, we use pcDesc to record the reexecute bit obtained  
> from describe_scope, and then store the reexecute bit to
> scopeDesc when a scopeDesc object is created.
>
> Tests:
> JPRT, CompileTheWord, refworkload
>
> Thanks,
>
> Changpeng
>



More information about the hotspot-compiler-dev mailing list