Skip to content

php-in-php: runtime shrink closeout guard (#5211) - #7799

Merged
PurHur merged 1 commit into
masterfrom
agent/runtime-php-closeout-5211
Jun 9, 2026
Merged

PurHur merged 1 commit into
masterfrom
agent/runtime-php-closeout-5211

Conversation

@PurHur

@PurHur PurHur commented Jun 9, 2026

Copy link
Copy Markdown
Owner

Summary

C runtime surface today: only lib/AOT/runtime/phpc_progress.c (~31 lines, frozen SIGSEGV ABI per #7360). All other migrated TUs are LLVM/PHP in ext/ + lib/JIT/Builtin/.

Closes #5200
Closes #5258
Closes #5278
Closes #5280
Closes #5290
Closes #5363
Closes #5302
Closes #5227
Closes #5234
Closes #5708

Verification

./script/docker-exec.sh -- bash -lc 'source script/php-env.sh && php vendor/bin/phpunit --filter RuntimeShrinkCloseoutTest'
# OK (3 tests, 60 assertions)

./script/docker-exec.sh -- bash -lc 'source script/php-env.sh && php vendor/bin/phpunit --filter AotRuntimeInventoryTest'
# OK — only phpc_progress.c under lib/AOT/runtime/

./script/docker-exec.sh -- bash -lc 'source script/php-env.sh && php test/repro/issue_enum_unserialize_roundtrip.php'
# E:3:"E:A";
# \E::A
# same

Lines removed (prior merges, inventory)

Deleted C TU ~lines PHP SSOT
phpc_settype.c ~400 ext/standard/JitSettype.php
phpc_dir.c ~171 lib/JIT/Builtin/StringDirJit.php
phpc_fs_dir.c ~525 lib/JIT/Builtin/StringFsDirJit.php
phpc_unserialize.c ~344 lib/JIT/Builtin/StringUnserializeJit.php + VmSerialize.php
phpc_string_cslashes.c ~349 ext/standard/VmString.php
phpc_class_methods.c ~201 ext/standard/get_class_methods_.php
phpc_ini_set.c ~230 lib/JIT/Builtin/IniRuntime.php
phpc_json_decode.c ~649 lib/JIT/Builtin/StringJsonDecodeJit.php
hash_crypto.c varies lib/JIT/Builtin/StringHashCryptoNativeJit.php
password_crypto.c ~362 lib/JIT/Builtin/StringPasswordCryptoJit.php

Made with Cursor

Consolidates deletion checks for migrated lib/AOT/runtime/*.c TUs into one
inventory test; adds enum unserialize roundtrip repro referenced by #5739.

Co-authored-by: Cursor <cursoragent@cursor.com>
@PurHur
PurHur merged commit 45f32b0 into master Jun 9, 2026
@PurHur
PurHur deleted the agent/runtime-php-closeout-5211 branch June 9, 2026 13:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment