Category
Foundation · php-in-php · runtime-shrink · cold-build / #32122 class
Problem
Context::ensureMinimalUserStandaloneBodies() still eagerly NestedJIT/links StringTriggerError on every thin AOT user-script init (hello-world / aot-smoke path), even when the script never calls trigger_error / undefined-array-key / related warning ABIs:
StringTriggerError::ensureStandaloneBodies → StringTriggerErrorJit::implement (NestedJIT / bridge)
Same always-on NestedJIT vs Runtime ABI drift / cold-build surface class as closed #34631 / #34621 / #34612 / #34605. Leftover Context NestedJIT vs Runtime ABI drift mints *.1 (#31894 / #32122).
Call sites already StringTriggerError::ensureLinked before lookup (ext/standard/trigger_error_.php, JitBuiltinWarning, JitIncDec, HashTableResourceKeyLlvm, …). Peer #33234 dropped Type always-on shells for the same reason.
php-src reference
PHP implementation target
lib/JIT/Context.php ensureMinimalUserStandaloneBodies — remove StringTriggerError::ensureStandaloneBodies
- Keep full standalone
ensureFullStandaloneBodies linking (after AssertFail peers)
- Update
ContextMinimalStandaloneLazyLastErrorRuntimeShrinkTest keep-list
- Unit shrink test +
./script/aot-smoke.sh 8/8
Done when
Category
Foundation· php-in-php · runtime-shrink · cold-build / #32122 classProblem
Context::ensureMinimalUserStandaloneBodies()still eagerly NestedJIT/linksStringTriggerErroron every thin AOT user-script init (hello-world / aot-smoke path), even when the script never callstrigger_error/ undefined-array-key / related warning ABIs:StringTriggerError::ensureStandaloneBodies→StringTriggerErrorJit::implement(NestedJIT / bridge)Same always-on NestedJIT vs Runtime ABI drift / cold-build surface class as closed
#34631/#34621/#34612/#34605. Leftover Context NestedJIT vs Runtime ABI drift mints*.1(#31894 / #32122).Call sites already
StringTriggerError::ensureLinkedbefore lookup (ext/standard/trigger_error_.php,JitBuiltinWarning,JitIncDec,HashTableResourceKeyLlvm, …). Peer#33234dropped Type always-on shells for the same reason.php-src reference
Zend/zend_error.c—php_error_docref/ trigger_error path#33234Type always-on drop;#34631LastError lazy from ensureMinimalPHP implementation target
lib/JIT/Context.phpensureMinimalUserStandaloneBodies— removeStringTriggerError::ensureStandaloneBodiesensureFullStandaloneBodieslinking (after AssertFail peers)ContextMinimalStandaloneLazyLastErrorRuntimeShrinkTestkeep-list./script/aot-smoke.sh8/8Done when
ensureMinimalUserStandaloneBodiesdoes not callStringTriggerError::ensureStandaloneBodiesensureLinkedcoverage remains for trigger_error / undef-key paths./script/aot-smoke.shstays 8/8