RFR: 8264941: Remove CodeCache::mark_for_evol_deoptimization() method

Coleen Phillimore coleenp at openjdk.java.net
Wed Jun 16 13:01:46 UTC 2021


This change removes the mark_for_evol_deoptimization method and removes the flag that all dependencies are recorded.  Before the change to walk the entire nmethod looking for "old" (redefined) methods with metadata_do(), we used to find methods in the code cache to deoptimize based on evol_method dependencies.  If the dependencies weren't yet recorded, we had to deoptimize all of the methods.  A long time ago, we had a customer who was unhappy with the pause for this when they had late attach.  Now we don't have this problem.
The evol_method dependencies are still used by the compiler to check for old methods during compilation.  I didn't change this but it might be something someone who knows the compiler better can do differently and remove these dependencies too.
Tested with tier1-6.

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

Commit messages:
 - 8264941: Remove CodeCache::mark_for_evol_deoptimization() method

Changes: https://git.openjdk.java.net/jdk/pull/4509/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=4509&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8264941
  Stats: 78 lines in 7 files changed: 0 ins; 73 del; 5 mod
  Patch: https://git.openjdk.java.net/jdk/pull/4509.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/4509/head:pull/4509

PR: https://git.openjdk.java.net/jdk/pull/4509


More information about the serviceability-dev mailing list