> This PR builds on a concept John Rose told me about some time ago. Instead of 
> combining memory operations of various sizes, a single large and skewed 
> memory operation can be made to clean up the tail of remaining bytes.
> 
> This has the effect of simplifying and shortening the code. The number of 
> branches to evaluate is reduced.
> 
> It should be noted that the performance of the fill operation affects the 
> allocation of new segments (as they are zeroed out before being returned to 
> the client code).
> 
> This PR passes tier1, tier2, and tier3 on multiple platforms.

Per Minborg has updated the pull request with a new target base due to a merge 
or a rebase. The incremental webrev excludes the unrelated changes brought in 
by the merge/rebase. The pull request contains nine additional commits since 
the last revision:

 - Fix benchmark
 - Merge branch 'master' into fill-overlap
 - Merge branch 'master' into fill-overlap
 - Update test/micro/org/openjdk/bench/java/lang/foreign/SegmentBulkFill.java
   
   Co-authored-by: Andrey Turbanov <turban...@gmail.com>
 - Update benchmark to reflect new fill method
 - Simplify
 - Add case for long operations and break out methods
 - Correct typo in comment
 - Simplify the fill method

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/25383/files
  - new: https://git.openjdk.org/jdk/pull/25383/files/d0cd7bbb..e9e8d15e

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=25383&range=06
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=25383&range=05-06

  Stats: 63091 lines in 997 files changed: 37316 ins; 15895 del; 9880 mod
  Patch: https://git.openjdk.org/jdk/pull/25383.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/25383/head:pull/25383

PR: https://git.openjdk.org/jdk/pull/25383

Reply via email to