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