simdutf ascii validation is about 20% faster on arm64 than our zig simd @Vector version

This commit is contained in:
Jarred Sumner
2022-12-03 08:24:33 -08:00
parent 00f428b627
commit bc028168a8

View File

@@ -2639,6 +2639,9 @@ pub const AsciiVectorU16U1 = std.meta.Vector(ascii_u16_vector_size, u1);
pub const AsciiU16Vector = std.meta.Vector(ascii_u16_vector_size, u16);
pub const max_4_ascii = @splat(4, @as(u8, 127));
pub fn isAllASCII(slice: []const u8) bool {
if (bun.FeatureFlags.use_simdutf)
return bun.simdutf.validate.ascii(slice);
var remaining = slice;
// The NEON SIMD unit is 128-bit wide and includes 16 128-bit registers that can be used as 32 64-bit registers