Category
php-in-php · stdlib
Problem
Output-buffer introspection JIT still uses ObStatusRuntime (~396 lines LLVM) building hashtables from ObStorageGlobals in LLVM. VM implements ob_get_status() / ob_list_handlers() in PHP (ext/standard/, VmOutput).
Stdlib lowering tracked in #4877; this issue is the LLVM → PHP migration for JIT/AOT.
php-src reference
Repro
./script/docker-exec.sh -- bash -lc 'source script/php-env.sh
wc -l lib/JIT/Builtin/ObStatusRuntime.php
php bin/vm.php -r "var_export(ob_get_status(false));"
php bin/jit.php -r "var_export(ob_get_status(false));" 2>&1 | head -5
'
Scope
| Path |
Role |
lib/JIT/Builtin/ObStatusRuntime.php |
LLVM to shrink |
lib/JIT/Builtin/ObOutputRuntime.php |
related output stack |
ext/standard/VmOutput.php (or sibling) |
PHP SSOT |
| Stdlib parity |
#4877 |
Done when
Links
Category
php-in-php·stdlibProblem
Output-buffer introspection JIT still uses
ObStatusRuntime(~396 lines LLVM) building hashtables fromObStorageGlobalsin LLVM. VM implementsob_get_status()/ob_list_handlers()in PHP (ext/standard/,VmOutput).Stdlib lowering tracked in #4877; this issue is the LLVM → PHP migration for JIT/AOT.
php-src reference
ext/standard/output.c—PHP_FUNCTION(ob_get_status),ob_list_handlersRepro
Scope
lib/JIT/Builtin/ObStatusRuntime.phplib/JIT/Builtin/ObOutputRuntime.phpext/standard/VmOutput.php(or sibling)Done when
ob_get_status()/ob_list_handlers()delegate to VmOutput PHPObStatusRuntime.phpreduced to thin link stub or deletedLinks