RFR: 8289069: Very slow C1 arraycopy jcstress tests after JDK-8279886Size bitmaps appropriately

Igor Veresov iveresov at openjdk.org
Sat Jun 25 04:43:26 UTC 2022


I used BlockBegin::number_of_blocks() to size the bitmaps, however that is a total number of blocks. Since mark_loops() is called after every inlining (for every inlinee - no need to reanalyze the whole method), the bitmaps get progressively larger, and have to be zeroed. That makes the complexity quadratic. The solution is to appropriately size the bitmaps and keep the whole thing linear. Tests look good.

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

Commit messages:
 - Size bitmaps appropriately

Changes: https://git.openjdk.org/jdk19/pull/72/files
 Webrev: https://webrevs.openjdk.org/?repo=jdk19&pr=72&range=00
  Issue: https://bugs.openjdk.org/browse/JDK-8289069
  Stats: 31 lines in 1 file changed: 10 ins; 0 del; 21 mod
  Patch: https://git.openjdk.org/jdk19/pull/72.diff
  Fetch: git fetch https://git.openjdk.org/jdk19 pull/72/head:pull/72

PR: https://git.openjdk.org/jdk19/pull/72


More information about the hotspot-compiler-dev mailing list