RFR 8251989: Hex encoder and decoder utility
Corey Ashford
cjashfor at linux.ibm.com
Mon Aug 24 21:11:44 UTC 2020
Just as a general comment, an SIMD-based encode() intrinsic would be an
easy performance upgrade for this Hex class. I'd guess you'd get a
5x-10x improvement, depending on the specific CPU/arch being used. That
said, the intrinsic would do better on larger buffers, and I don't know
what the average length is for the use cases you have in mind.
- Corey
On 8/19/20 2:14 PM, Roger Riggs wrote:
> Please review a java.util.Hex API to encode and decode hexadecimal
> strings to and from byte arrays.
>
> Within the JDK and JDK tests there are multiple implementations to
> encode and decode
> hexadecimal strings to byte arrays. Hex encoders and decoders support
> upper or lower case hexadecimal characters, delimiters, prefix, and suffix.
> The API is modeled after the java.util.Base64 API providing static
> factories,
> immutable threadsafe instances with methods to encode to and decode from
> string and StringBuilder.
>
> JavaDoc:
> http://cr.openjdk.java.net/~rriggs/hex-javadoc/java.base/java/util/Hex.html
>
> Webrev for Hex encoder and decoder:
> http://cr.openjdk.java.net/~rriggs/webrev-hex-encoder-8251989
>
> Webrev for applying to java.security:
> http://cr.openjdk.java.net/~rriggs/webrev-hex-security-8252055
>
> CSR:
> https://bugs.openjdk.java.net/browse/JDK-8251991
>
> Issue for API and a few uses:
> https://bugs.openjdk.java.net/browse/JDK-8251989
>
> Issue for Use in java.security and tests:
> https://bugs.openjdk.java.net/browse/JDK-8252055
More information about the core-libs-dev
mailing list