On Wed, 5 Feb 2025 23:41:19 GMT, Chen Liang <li...@openjdk.org> wrote:
> `MethodHandles.byteArrayViewVarHandle` exposes checked multi-byte access to > byte arrays via VarHandle. This larger access speeds up many operations, yet > it cannot be used in early bootstrap, and as a result, people tend to use > `Unsafe` which can threaten memory safety of the Java Platform. > > To promote the safe use of multi-byte access, I propose to move the checked > implementations from VarHandle to ByteArray to allow earlier use and reduce > maintenance costs. In addition, ByteArrayLittleEndian is consolidated, and > now the access methods are distinguished by BO (byte order) / BE (big endian) > / LE (little endian) suffixes to indicate their access features. I think I should withdraw this patch: the multi-byte access is used for 2 purposes: to read actual larger data or just to read multiple bytes for performance, and ByteArray is for the former. We should probably look at vectors for the multiple byte access purpose. ------------- PR Comment: https://git.openjdk.org/jdk/pull/23478#issuecomment-2689141951