Added code for Base64 acceleration (encode and decode) which will accelerate ~4x for AVX2 platforms.
Encode performance: **Old:** Benchmark (maxNumBytes) Mode Cnt Score Error Units Base64Encode.testBase64Encode 1024 thrpt 3 4309.439 ± 2.632 ops/ms **New:** Benchmark (maxNumBytes) Mode Cnt Score Error Units Base64Encode.testBase64Encode 1024 thrpt 3 24211.397 ± 102.026 ops/ms Decode performance: **Old:** Benchmark (errorIndex) (lineSize) (maxNumBytes) Mode Cnt Score Error Units Base64Decode.testBase64Decode 144 4 1024 thrpt 3 3961.768 ± 93.409 ops/ms **New:** Benchmark (errorIndex) (lineSize) (maxNumBytes) Mode Cnt Score Error Units Base64Decode.testBase64Decode 144 4 1024 thrpt 3 14738.051 ± 24.383 ops/ms ------------- Commit messages: - Remove whitespace - Fix wrong register usage - Working version of Base64 decode with AVX2 (4x perf improvement). No URL support - Merge branch 'Base64-AVX2' of https://github.com/asgibbons/jdk into Base64-AVX2 - Merge branch 'openjdk:master' into Base64-AVX2 - Intermediate AVX2 for decode - Fix various AVX support function invocations to get Base64 generated for AVX2 Changes: https://git.openjdk.org/jdk/pull/12126/files Webrev: https://webrevs.openjdk.org/?repo=jdk&pr=12126&range=00 Issue: https://bugs.openjdk.org/browse/JDK-8300808 Stats: 150 lines in 7 files changed: 134 ins; 3 del; 13 mod Patch: https://git.openjdk.org/jdk/pull/12126.diff Fetch: git fetch https://git.openjdk.org/jdk pull/12126/head:pull/12126 PR: https://git.openjdk.org/jdk/pull/12126