Category
php-in-php / runtime-shrink · cold-build surface · peer #34320 / Trust #32122
Problem
Type::initialize() on the non-STANDALONE path still eagerly NestedJITs ProcessIdentity, gettimeofday, getrusage, net_get_interfaces, and list-unpack ABIs even when the script never calls those builtins. Call sites already ensureLinked before lookup (or invoke paths that do).
php-src reference
PHP implementation target
lib/JIT/Builtin/Type.php — remove eager ensureLinked for ProcessIdentityJit, StringGettimeofday, StringGetrusage, StringNetInterfacesJit, ListUnpackRuntime
- Unit shrink test peer
TypeDeadTypeInitializeLazyEnvSleepRuntimeShrinkTest
Repro
./script/aot-smoke.sh
./script/docker-exec.sh -- bash -lc './script/cold-build-check.sh'
Done when
Category
php-in-php/ runtime-shrink · cold-build surface · peer #34320 / Trust #32122Problem
Type::initialize()on the non-STANDALONE path still eagerly NestedJITs ProcessIdentity, gettimeofday, getrusage, net_get_interfaces, and list-unpack ABIs even when the script never calls those builtins. Call sites alreadyensureLinkedbefore lookup (or invoke paths that do).php-src reference
ext/standard/basic_functions.c— getmypid/getmyuid/getmygid/get_current_user, gettimeofday, getrusageext/standard/basic_functions.c— net_get_interfaces (where present)lib/JIT/ListUnpackHelper.php)PHP implementation target
lib/JIT/Builtin/Type.php— remove eager ensureLinked for ProcessIdentityJit, StringGettimeofday, StringGetrusage, StringNetInterfacesJit, ListUnpackRuntimeTypeDeadTypeInitializeLazyEnvSleepRuntimeShrinkTestRepro
./script/aot-smoke.sh ./script/docker-exec.sh -- bash -lc './script/cold-build-check.sh'Done when
./script/aot-smoke.shstays 8/8runtime/*.c