git: openjdk/jdk11u-dev: 8223363: Bad node estimate assertion failure
Martin Doerr
mdoerr at openjdk.java.net
Fri Mar 11 15:36:59 UTC 2022
Changeset: 5f40afc1
Author: Martin Doerr <mdoerr at openjdk.org>
Date: 2022-03-11 15:34:20 +0000
URL: https://git.openjdk.java.net/jdk11u-dev/commit/5f40afc10909061b5b4e17ec59856611e160e474
8223363: Bad node estimate assertion failure
8223502: Node estimate for loop unswitching is not correct: assert(delta <= 2 * required) failed: Bad node estimate
8224648: assert(!exceeding_node_budget()) failed: Too many NODES required! failure with ctw
Tighten the node estimates. New est_loop_clone_sz() implementation that will compute a "fan-out" complexity estimate as part of the size estimate (to better estimate complex loop body size after cloning). New est_loop_unroll_sz() function, used to estimate the size of a loop body att full/maximal unrolling. Correction to node budget final tests and asserts.
Reviewed-by: goetz
Backport-of: d222b01dee09f9963a3a0c7ae0088b64752b7809
! src/hotspot/share/opto/loopTransform.cpp
! src/hotspot/share/opto/loopUnswitch.cpp
! src/hotspot/share/opto/loopnode.cpp
! src/hotspot/share/opto/loopnode.hpp
! src/hotspot/share/opto/loopopts.cpp
+ test/hotspot/jtreg/compiler/loopopts/LoopUnswitchingBadNodeBudget.java
More information about the jdk-updates-changes
mailing list