From 224d3e8262ed6156ea3374fe91dfb5b66d6f0d3a Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 16 Aug 2026 16:24:38 +0900 Subject: perf(php-shim): scan the phar stub token with memchr The stub token search compared every 18-byte window of the file case insensitively. The token starts with a byte that ASCII case folding leaves alone, so memchr can pick out the candidate offsets and leave only those to the case-insensitive compare. Over the 35 MB executable, finding the token in the embedded bundle stub drops from 2.3 ms to 0.1 ms, and a scan that finds nothing drops from 24 ms to 3.6 ms. Co-Authored-By: Claude Opus 5 (1M context) --- crates/shirabe-php-shim/Cargo.toml | 1 + 1 file changed, 1 insertion(+) (limited to 'crates/shirabe-php-shim/Cargo.toml') diff --git a/crates/shirabe-php-shim/Cargo.toml b/crates/shirabe-php-shim/Cargo.toml index cad9ad47..48784716 100644 --- a/crates/shirabe-php-shim/Cargo.toml +++ b/crates/shirabe-php-shim/Cargo.toml @@ -16,6 +16,7 @@ fastrand.workspace = true flate2.workspace = true indexmap.workspace = true md5.workspace = true +memchr.workspace = true nix.workspace = true regex.workspace = true regex-macro.workspace = true -- cgit v1.3.1-4-g156e