Thread
Commits
-
Optimize hex_encode() and hex_decode() using SIMD.
- ec8719ccbfcd 19 (unreleased) cited
-
remove switch statement in vector8_shift_{left,right}
Nathan Bossart <nathandbossart@gmail.com> — 2026-07-02T00:32:16Z
In commit ec8719ccbf, I added a switch statement with all expected shift counts for vector8_shift_{left,right} because AArch64's vshlq_n_u32 and vshrq_n_u32 require an integer literal. I discovered that we can use vshlq_u32 instead for both cases, which avoids the need for the switch statement and compiles to the same machine code on recent gcc/clang. -- nathan -
Re: remove switch statement in vector8_shift_{left,right}
John Naylor <johncnaylorls@gmail.com> — 2026-07-02T05:28:36Z
On Thu, Jul 2, 2026 at 7:32 AM Nathan Bossart <nathandbossart@gmail.com> wrote: > In commit ec8719ccbf, I added a switch statement with all expected shift > counts for vector8_shift_{left,right} because AArch64's vshlq_n_u32 and > vshrq_n_u32 require an integer literal. I discovered that we can use > vshlq_u32 instead for both cases, which avoids the need for the switch > statement and compiles to the same machine code on recent gcc/clang. Hmm! +1 -- John Naylor Amazon Web Services -
Re: remove switch statement in vector8_shift_{left,right}
Nathan Bossart <nathandbossart@gmail.com> — 2026-07-06T16:40:56Z
Committed. -- nathan