You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
New Features
WHATWG Forgiving Base64 Decoding (#43)
Added Forgiving() method on Encoding to support the WHATWG forgiving base64 decoding approach. In this mode, the decoder transparently ignores ASCII whitespace characters — space (' '), tab ('\t'), form feed ('\f'), line feed ('\n'), and carriage return ('\r') — in the input.
AMD64: AVX-512 VBMI encode/decode paths
Added dedicated AVX-512 VBMI encode and decode implementations. The encode path uses the multishift technique for maximum throughput on wide SIMD hardware. Falls back to AVX2 for tail bytes when input is not aligned to the AVX-512 block size.
LoongArch64: LASX (256-bit SIMD) encode/decode
Added full LASX encode/decode paths using xvpermi.q for Q-lane operations, processing 24 bytes → 32 bytes per encode iteration and 32 bytes → 24 bytes per decode iteration. Falls back to LSX for remaining tail bytes.
ARM64: Direct VTBX opcode usage
Switched to the VTBX opcode directly, eliminating unnecessary intermediate instructions.
PowerPC64x: SIMD optimizations
Refined and debugged the PPC64x assembly paths for better performance and correctness.
s390x: SIMD optimizations
Optimized the s390x vector implementation for improved throughput.
CI / Tooling
Added Intel SDE workflow for AVX-512 VBMI testing on GitHub Actions, with automated SDE download, ptrace configuration, and SHA256 verification.
Added base64 benchmark GitHub Action for automated performance regression tracking.