RFR: 8311971: SA's ConstantPool.java uses incorrect computation to read long value in the constant pool
Chris Plummer
cjplummer at openjdk.org
Wed Jul 12 23:20:13 UTC 2023
On Wed, 12 Jul 2023 19:48:52 GMT, Ashutosh Mehra <duke at openjdk.org> wrote:
> Please review this fix to correctly read a long value in the runtime constant pool. Details are mentioned in the issue [0].
> As an example, before this fix the long value generated by SA's dumpclass for java.lang.String.serialVersionUID was:
>
>
> private static final long serialVersionUID;
> descriptor: J
> flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
> ConstantValue: long 2050732866l
>
>
> After this fix value of java.lang.String.serialVersionUID is:
>
>
> private static final long serialVersionUID;
> descriptor: J
> flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
> ConstantValue: long -6849794470754667710l
>
>
> Correct value as obtained from original java.lang.String is `-6849794470754667710l`.
>
>
> [0] https://bugs.openjdk.org/browse/JDK-8311971
Please make sure all serviceability/sa and sun/tools/jhsdb tests are run.
-------------
Marked as reviewed by cjplummer (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/14855#pullrequestreview-1527359415
More information about the serviceability-dev
mailing list