Skip to content

php-in-php: move StringVarExportUserScriptLlvm to JitVarExportKernel (#19430) - #19437

Merged
PurHur merged 1 commit into
masterfrom
agent/issue-19430-varexport-kernel
Jul 16, 2026
Merged

php-in-php: move StringVarExportUserScriptLlvm to JitVarExportKernel (#19430)#19437
PurHur merged 1 commit into
masterfrom
agent/issue-19430-varexport-kernel

Conversation

@PurHur

@PurHur PurHur commented Jul 16, 2026

Copy link
Copy Markdown
Owner

Summary

LOC: deleted lib/JIT/Builtin/StringVarExportUserScriptLlvm.php (~87 LOC); added ext/standard/JitVarExportKernel.php (net shrink of JIT-builtin surface).

Closes #19430

Test plan

  • ./script/phpunit.sh --filter VarExportRuntimeShrinkTest → OK (4 tests)
  • ./script/phpunit.sh test/compliance/VarExportVMTest.php → OK (5)
  • ./script/phpunit.sh test/compliance/VarExportJITTest.php → OK (2)
  • php script/bootstrap-inventory.php --check → OK 5051/5051
  • php script/check-selfhost-spine-coverage-sync.php → OK
  • make bootstrap-selfhost-vm-driver-execute-probe → OK

Note: standalone var_export AOT currently segfaults after c:main_before_php on master as well (embed + PHP_COMPILER_AOT_USER_SCRIPT); HelloWorld AOT OK. Not introduced by this quarantine.

Verification transcript

OK (4 tests, 19 assertions)  # VarExportRuntimeShrinkTest
OK (5 tests, 5 assertions)   # VarExportVMTest
OK (2 tests, 2 assertions)   # VarExportJITTest
OK 5051/5051
check-selfhost-spine-coverage-sync: OK
bootstrap-selfhost-vm-driver-execute-probe: OK

Made with Cursor

…19430)

User-script / deferred AOT still needs the thin VmActiveContext + VarExportJitHelper
bridge (#16075/#17316); house it in ext/standard so lib/JIT/Builtin shrinks (same
kernel-quarantine pattern as #19389/#19399). Embed path unchanged.

Co-authored-by: Cursor <cursoragent@cursor.com>
@PurHur
PurHur merged commit 59c03eb into master Jul 16, 2026
1 check failed
@PurHur
PurHur deleted the agent/issue-19430-varexport-kernel branch July 16, 2026 04:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

php-in-php: move StringVarExportUserScriptLlvm → JitVarExportKernel in ext/standard (#1492)

1 participant