RFR: 8000818: SA constant pool need to reference to reference map after permgen removal
Yumin Qi
yumin.qi at oracle.com
Wed Oct 17 14:15:48 PDT 2012
Coleen,
This is rewrite the byte code to its original form. SA read core(or
process) get the snap shot, which method code already rewrite in hospot.
This is the reverse process to dump java classes from SA.
_ldc and _ldc_w are got from hotspot byte code, ie, _fast_aldc and
_fast_aldc_w. Now we need to fix the constantpool index for them. The
index now is in reference map, they before are in constant pool cache.
for _invoke_dynamic, the code is there, I don't know how to verify
if it works the way it should be.
Thanks
Yumin
On 10/17/2012 10:16 AM, Coleen Phillimore wrote:
>
> Yumin,
>
> I'm confused what this file is supposed to do. Why is this rewriting
> bytecodes? Or is it reversing bytecode rewriting?
>
> Before rewriting _ldc points to a constant pool index. After, only
> ldc bytecodes that point to string or jsr 292 oops will be rewritten
> to point to the resolved_references array and the bytecode is changed
> to _fast_aldc, otherwise the ldc index is left alone. So if it's
> reversing rewriting, then changing lines 145 and 152 to _fast_aldc
> would make whatever this does work.
>
> It looks like jsr 292 code is not reflected in this file. More
> copying for another day unless this whole SA is rearchitected.
>
> thanks,
> Coleen
>
> On 10/17/2012 12:51 AM, Yumin Qi wrote:
>> Hi, all
>>
>> May I have your codereview on
>>
>> http://cr.openjdk.java.net/~minqi/8000818/
>> <http://cr.openjdk.java.net/%7Eminqi/8000818/>
>>
>> 8000818: SA constant pool need to reference to reference map after
>> permgen removal
>> Summary: After permgen removal, constant pool changed to put _ldc and
>> _ldc_w (fast_ldc and fast_ldcw) index to reference map, no longer
>> calculated via constant pool cache.
>> Also, there is a mistake in 6879063: SA should use hsdis. Bytes.swap
>> should only check if the underlying platform is big endian since
>> java code follows big endian. Revert it back to its orginal form,
>> else it will fail ClassDump.
>>
>> Reviewed-by:
>> Contributed-by: yumin.qi at oracle.com
>>
>>
>> Thanks
>> Yumin
More information about the hotspot-runtime-dev
mailing list