> Classfile API didn't handle transformations of class files version 50 and > below correctly. > > Proposed fix have two parts: > 1. Inflation of branch targets does not depend on StackMapTable attribute > presence for class file version 50 and below. Alternative fallback > implementation is provided. > 2. StackMapTable attribute is not generated for class file versions below 50. > > StackMapsTest is also extended to test this patch. > > Please review. > > Thanks, > Adam
Adam Sotona has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains 16 additional commits since the last revision: - fixed StackCounter - Merge branch 'master' into JDK-8305990-debug-info-strip-fail - implemented failover stackmap generation for class version 50 fixed StackMapGenerator error debug print + added clone constructor to SplitConstantPool adjusted and extended related tests - Apply suggestions from code review Thanks for review. Co-authored-by: liach <7806504+li...@users.noreply.github.com> - Merge branch 'master' into JDK-8305990-debug-info-strip-fail - Update StackCounter.java - added comments to StackCounter about maxStack upper bounds calculation for JSR/RET instructions - fixed stack counting of JSR instructions - implemented StackCounter - Making some BufWriter fields final - ... and 6 more: https://git.openjdk.org/jdk/compare/e6c0bde0...5db0ed01 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/13478/files - new: https://git.openjdk.org/jdk/pull/13478/files/795314a2..5db0ed01 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=13478&range=12 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=13478&range=11-12 Stats: 24213 lines in 591 files changed: 18405 ins; 2515 del; 3293 mod Patch: https://git.openjdk.org/jdk/pull/13478.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/13478/head:pull/13478 PR: https://git.openjdk.org/jdk/pull/13478