RFR: 8338661: StackMapTable is invalid if frames appear in dead code
Chen Liang
liach at openjdk.org
Tue Aug 20 14:44:50 UTC 2024
On Tue, 20 Aug 2024 13:54:08 GMT, Adam Sotona <asotona at openjdk.org> wrote:
> ClassFile API allows to build a class with dead code and provide custom `StackMapTable` attribute with user-specified frames covering the dead code.
> `StackCounter` is responsible for calculation of `maxStack` and `maxLocals` in certain situations and it did not include the user-provided `StackMapTable` attribute. Dead code was skipped and `maxStack` or `maxLocals` might became underestimated.
>
> This patch includes frames from user-provided `StackMapTable` attribute into the `StackCounter` calculations.
>
> Please review.
>
> Thanks,
> Adam
Looks good to me.
-------------
Marked as reviewed by liach (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/20644#pullrequestreview-2248220830
More information about the core-libs-dev
mailing list