On Mon, 7 Jun 2021 22:34:33 GMT, Corey Ashford <cashf...@openjdk.org> wrote:
>> Scott Gibbons has updated the pull request incrementally with one additional >> commit since the last revision: >> >> Update full name > > src/java.base/share/classes/java/util/Base64.java line 813: > >> 811: while (sp < sl) { >> 812: if (shiftto == 18 && sp < sl - 4) { // fast path >> 813: int dl = decodeBlock(src, sp, sl, dst, dp, isURL, >> isMIME); > > This new param is passed all the way down to the intrinsic. I think existing > intrinsics can safely ignore this parameter if it doesn't help the > implementation (for example PPC64-LE has 16-byte vector registers, so isn't > quite as seriously impacted by MIME). However, in the code for the PPC64-LE > intrinsic, this new parameter isn't mentioned. I think if you're going to > add a new parameter, it should be mentioned in the existing intrinsics as > being present, but unused. Are you suggesting that I change *all* intrinsic implementations (aarch64, ppc, etc.)? I have no problem doing that - just checking if this is what's desired. > src/java.base/share/classes/java/util/Base64.java line 818: > >> 816: * bytes of data were returned. >> 817: */ >> 818: int chars_decoded = ((dl + 2) / 3) * 4; > > In the PR comments, you say, "A change was also made here removing the > restriction that the intrinsic must return an even multiple of 3 bytes > decoded.", however there's still a comment in the code above that says: > > * If the intrinsic function does not process all of the bytes in > * src, it must process a multiple of four of them, making the > * returned destination length a multiple of three. > > So this comment needs to be changed or removed to reflect your commit. I will change the comment, and add verbage regarding the new parameter. Thank you. ------------- PR: https://git.openjdk.java.net/jdk/pull/4368