> The type of the Unsafe base offset constant is int, which may cause overflow > when adding int offsets, such as 8343925 (PR #22012). 8343984 (PR #22027) > fixes most of the offset overflows in JDK, but ArraysSupport and CRC32C are > still unfixed. > > @liach proposed the idea of changing the Unsafe base offset to long, which > is a complete solution to the Unsafe offset overflow. After discussing with > @liach, I submitted this PR to implement @liach's idea.
Shaojin Wen 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 eight additional commits since the last revision: - fix DecimalDigits - Merge remote-tracking branch 'upstream/master' into long_unsafe_offset_202411 - Typos - Fix type expectations - Make base offset method and invalid offset long - Merge remote-tracking branch 'upstream/master' into long_unsafe_offset_202411 - long BaseAndScale base, from @JornVernee - long Unsafe offset ------------- Changes: - all: https://git.openjdk.org/jdk/pull/22095/files - new: https://git.openjdk.org/jdk/pull/22095/files/6d4bb369..76f6f3fb Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=22095&range=04 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=22095&range=03-04 Stats: 287804 lines in 7071 files changed: 168735 ins; 95338 del; 23731 mod Patch: https://git.openjdk.org/jdk/pull/22095.diff Fetch: git fetch https://git.openjdk.org/jdk.git pull/22095/head:pull/22095 PR: https://git.openjdk.org/jdk/pull/22095