You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Gen-1+ #1492: Zend gen-0 compiler_minimal SIGSEGV after c:include M3EmitTuTrivialEchoAot.php (unblocked by #21888) #21925
After #21888 removes the NestedJIT SuperglobalRefreshJitHelper::buildGetTable(): HashTable, int returned TypeError, make bootstrap-selfhost-link Zend gen-0 fallback proceeds ~11–13 min then dies:
phpc: fatal signal (segfault) after c:include:/compiler/lib/JIT/M3EmitTuTrivialEchoAot.php
make: *** [Makefile:298: bootstrap-selfhost-link] Error 139
PHP_COMPILER_LLVM_ASSERT=1 does not convert this into a PHP exception (hard SEGV in host php bin/compile.php / LLVM FFI).
Classification (not introduced by kernel-only refresh)
Kernel-only __superglobals__refresh (JitSuperglobalRefreshKernel) → TypeError gone → same M3EmitTu SEGV
ClassReturnCheck-only (NestedJIT SuperglobalRefreshRuntime restored from master + HashTable ABI accept in ClassReturnCheck) → TypeError gone → same M3EmitTu SEGV
So the crash is latent once Zend gen-0 gets past the #21888 TypeError; unrelated to retiring the NestedJIT refresh bridge.
Activity
PurHur commentedon Jul 21, 2026
claim: Lane B implementer — starting this run
Pre-claim gates (host): docker info OK; bootstrap-selfhost-link in progress (expecting this SEGV at M3EmitTuTrivialEchoAot.php).
Will branch
agent/issue-21925-m3emit-tu-segvand debug Zend gen-0 AOT crash.PurHur commentedon Jul 21, 2026
claim: lane-B compile/link automation — starting this run
TRY_FIRST (this workspace):
BOOTSTRAP_GEN0_ZEND_ONLY=1 make bootstrap-selfhost-linkSEGV after M3EmitTuTrivialEchoAot.phpPurHur commentedon Jul 21, 2026
yield: earlier claim at 19:27:35 UTC beat this run by ~13s — stepping off #21925 to avoid duplicate work. Good luck on the M3EmitTu SEGV.
Fix Zend gen-0 selfhost link abort after successful AOT emit (#21925) (…
PurHur commentedon Jul 21, 2026
Merged #21936
Verification
BOOTSTRAP_GEN0_ZEND_ONLY=1 make bootstrap-selfhost-link→OK/LINK_EXIT:0(host no longer dies withfree(): invalid pointerafter emit)vendor/bin/phpunit --filter SelfhostAotFastExitTest→ OK (3 tests)Fix
bin/compile.php:_exit(0)after successfultest/selfhost/AOT emit (skip LLVM FFI teardown abort)Builder::disposepatchBOOTSTRAP_SELFHOST_RUN_TRIES, default 5) for residual ~15–25% binary teardown flakeResidual heap corruption in fresh Zend
build/selfhostteardown still worth a follow-up if it stays noisy.Foundation: fast-exit selfhost AOT before LLVM context teardown (#31726…