RFR: 8000818: SA constant pool need to reference to reference map after permgen removal

yumin.qi at oracle.com yumin.qi at oracle.com
Thu Oct 18 14:44:16 PDT 2012


  Thanks

   I dumped all the classes then manually checked with javap on some,  
the result is OK. Also used BCEL to verify some of the classes, some 
warnings, not a big deal.  There is only one problem, but it is not 
important for SA usage, the StackMapTable is missed in class dump, 
anyway rt.jar file does not include that too.

   For jtreg, we need a Verifier, first dump java classes from SA, then 
run Verifier against the output.  For writing a verifier in java need 
much more time for me. So currently no plan to write a test case for this.

Thanks
Yumin

On 10/18/2012 2:17 PM, Coleen Phillimore wrote:
>
> Yumin,
> This looks okay.  Did you write a test for this?  Is there something 
> that can be added to the (currently internal) nsk.sajdi.testlist tests 
> that tests this functionality?   It's probably not possible to add it 
> to the jtreg tests.
> thanks,
> Coleen
>
> On 10/18/2012 4:27 PM, yumin.qi at oracle.com wrote:
>>  Hi, all
>>
>>   Add _invokehandle which is missed in SA.  Its java code is 
>> _invokevirtual which already processed in ClassWriter.
>>   Same links.
>>
>> Thanks
>> Yumin
>>
>> On 10/17/2012 5:25 PM, Yumin Qi wrote:
>>> Hi,
>>>
>>>   As suggested by David, I created a new  bug
>>>   8001055:  Bytes.swap should follow big endian
>>>   to address the issued caused by 6879063 push.
>>>
>>>   new webrevs:
>>>   http://cr.openjdk.java.net/~minqi/8000818
>>>   http://cr.openjdk.java.net/~minqi/8001055
>>>
>>> Thanks
>>> Yumin
>>>
>>> On 10/16/2012 9:51 PM, 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 serviceability-dev mailing list