> One of the goals of ClassFile API is to avoid updating the copy of ASM in the 
> JDK (now moved to the test library) to support future class file formats.
> 
> However, some tests in hotspot turn out to parse latest class files, usually 
> produced by the javac in the JDK under test, to transform them to inject 
> desired bytecode patterns. If we keep these tests, we must keep maintaining 
> the ASM library to accept all current class files, which will be costly with 
> the upcoming project Valhalla.
> 
> To avoid maintaining ASM down the road, we can either:
> 1. Migrate the transformation to ClassFile API
> 2. Set source and release version in javac flags to produce stable bytecode
> 
> I recommend migrating to ClassFile API; javac has a deprecation policy, that 
> in the future, old source and target versions will no longer be supported, 
> and we would still need another port at that time.

Chen Liang 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:

 - Merge branch 'master' of https://github.com/openjdk/jdk into 
fix/asm-test-upgrade
 - Ioi review
 - Merge branch 'master' of https://github.com/openjdk/jdk into 
fix/asm-test-upgrade
 - Merge branch 'master' of https://github.com/openjdk/jdk into 
fix/asm-test-upgrade
 - Merge branch 'master' of https://github.com/openjdk/jdk into 
fix/asm-test-upgrade
 - Merge branch 'master' of https://github.com/openjdk/jdk into 
fix/asm-test-upgrade
 - Merge branch 'fix/asm-test-upgrade' of github.com:liachmodded/jdk into 
fix/asm-test-upgrade
 - Update test/hotspot/jtreg/compiler/calls/common/InvokeDynamicPatcher.java
   
   Co-authored-by: Andrew Haley <[email protected]>
 - Variable name improvements
 - Merge branch 'master' of https://github.com/openjdk/jdk into 
fix/asm-test-upgrade
 - ... and 6 more: https://git.openjdk.org/jdk/compare/336f1cad...25972f2d

-------------

Changes:
  - all: https://git.openjdk.org/jdk/pull/25124/files
  - new: https://git.openjdk.org/jdk/pull/25124/files/a659f538..25972f2d

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=25124&range=06
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=25124&range=05-06

  Stats: 244224 lines in 3760 files changed: 182111 ins; 40283 del; 21830 mod
  Patch: https://git.openjdk.org/jdk/pull/25124.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/25124/head:pull/25124

PR: https://git.openjdk.org/jdk/pull/25124

Reply via email to