remove switch statement in vector8_shift_{left,right}

Nathan Bossart <nathandbossart@gmail.com>

From: Nathan Bossart <nathandbossart@gmail.com>
To: pgsql-hackers@postgresql.org
Cc: johncnaylorls@gmail.com
Date: 2026-07-02T00:32:16Z
Lists: pgsql-hackers

Attachments

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

Commits

  1. Optimize hex_encode() and hex_decode() using SIMD.