RFR: 8311932: Suboptimal compiled code of nested loop over memory segment [v2]
Roland Westrelin
roland at openjdk.org
Tue Nov 14 12:38:41 UTC 2023
> To enable the elimination of long range checks, the loop that contains
> the range checks is transformed into a loop nest and the range checks
> are changed to operate on int values computed before the loop is
> entered. This causes extra overhead out of loop and once, the range
> checks are eliminated, can only pay off if the loop is executed for
> long enough. This change disable the transformation if the trip count
> computed from profile data is too low. This came up with a
> MemorySegment API micro benchmarks and improves performance
> significantly.
Roland Westrelin has updated the pull request incrementally with one additional commit since the last revision:
-XX:+TieredCompilation
-------------
Changes:
- all: https://git.openjdk.org/jdk/pull/16650/files
- new: https://git.openjdk.org/jdk/pull/16650/files/f355e6c6..8a0dd862
Webrevs:
- full: https://webrevs.openjdk.org/?repo=jdk&pr=16650&range=01
- incr: https://webrevs.openjdk.org/?repo=jdk&pr=16650&range=00-01
Stats: 3 lines in 1 file changed: 0 ins; 0 del; 3 mod
Patch: https://git.openjdk.org/jdk/pull/16650.diff
Fetch: git fetch https://git.openjdk.org/jdk.git pull/16650/head:pull/16650
PR: https://git.openjdk.org/jdk/pull/16650
More information about the hotspot-compiler-dev
mailing list