RFR: 8310929: Optimization for Integer.toString [v12]
Chen Liang
liach at openjdk.org
Tue Jul 18 01:42:14 UTC 2023
On Tue, 18 Jul 2023 01:26:55 GMT, 温绍锦 <duke at openjdk.org> wrote:
>> src/java.base/share/classes/java/lang/Integer.java line 528:
>>
>>> 526: i = q;
>>> 527: charPos -= 2;
>>> 528: UNSAFE.putShortUnaligned(buf, Unsafe.ARRAY_BYTE_BASE_OFFSET + charPos, PACKED_DIGITS[r], false);
>>
>> When switching to use Unsafe, `getChars` should do the array bounds check in the loop of the store index.
>
> The value range of the r variable is 0-99, and the length of PACKED_DIGITS is 100, There is no need to check the array boundary here.
I think he means to check the `charPos` to ensure it is not out of bounds.
-------------
PR Review Comment: https://git.openjdk.org/jdk/pull/14699#discussion_r1266080264
More information about the core-libs-dev
mailing list