ClassFile API provides two sets of instructions implementations (bound and unbound). Unbound implementation of `IncrementInstruction::constant` returns invalid value. This bug discovered a hole in the ClassFile API test coverage.
This patch provides very simple fix of `IncrementInstruction` and more complex fix of the test framework to cover all unbound instruction with automated tests. The test framework fix includes correction of hash calculation of instructions in `ClassRecord` and two-pass transformation in `RebuildingTransformation`. Second pass has been added to discover bugs in unbound-to-unbound instruction conversions. Please review. Thanks, Adam ------------- Commit messages: - 8325485: IncrementInstructions.of(int, int) is not storing the args Changes: https://git.openjdk.org/jdk/pull/17770/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=17770&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8325485 Stats: 786 lines in 4 files changed: 391 ins; 379 del; 16 mod Patch: https://git.openjdk.org/jdk/pull/17770.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/17770/head:pull/17770 PR: https://git.openjdk.org/jdk/pull/17770