RFR JDK-8193325: StackFrameInfo::getByteCodeIndex returns wrong value if bci > 32767
Mandy Chung
mandy.chung at oracle.com
Tue Aug 13 01:33:34 UTC 2019
On 8/12/19 5:13 PM, Frederic Parain wrote:
> This looks good to me, with two comments:
>
> I don’t like the static final RETAIN_CLASS_REF for the same
> reasons as Aleksey, but I can live with that.
I didn't see Aleksey's comment about RETAIN_CLASS_REF (what is it?).
Now that it draws my attention. Since there is no other flag at the
moment, we can simplify it and rename the flags field to a boolean
retainClassRef field.
> The protocol between the JVM and the Java class is well explained
> on the JVM side (javaClasses.cpp:4227). I think it would be valuable
> to provide the same description on the Java side, the comment in
> StackFrameInfo.java:42 describes only part of the protocol.
Good suggestion. Added:
96 // VM adds 1 to the code index to StackFrameInfo::bci field such that
97 // zero (and negative values) indicates invalid BCI. So substract 1.
http://cr.openjdk.java.net/~mchung/jdk14/8193325/webrev.04/
Mandy
> No need for another review from me.
>
> Regards,
>
> Fred
>
>
>> On Aug 12, 2019, at 16:24, Mandy Chung <mandy.chung at oracle.com> wrote:
>>
>> Having a second thought, I'm keeping @Stable bci field while zero indicates an invalid BCI that makes it obvious that this field will be updated. VM will set StackFrameInfo::bci to value+1.
>>
>> http://cr.openjdk.java.net/~mchung/jdk14/8193325/webrev.03/
>>
>> Mandy
More information about the core-libs-dev
mailing list