Skip to content

Self-host M5: native emit bin/vm.php and src/cli_driver.php blocked (driver sidecar path) #2699

Closed

Description

@PurHur

Milestone

M5 — compiled CLI driver spine (#1521 / #1467 / #1492)

Problem

After M4 loop slice green, production CLI entrypoints fail the same native emit probe as bin/compile.php:

./script/docker-exec.sh -- bash -lc '
  ./script/bootstrap-selfhost-helloworld-compile-bin.sh >/dev/null
  for src in bin/vm.php src/cli_driver.php; do
    export PHP_COMPILER_M3_SOURCE="/compiler/$src"
    export PHP_COMPILER_M3_OUT="/compiler/build/aot-$(basename $src)"
    ./build/selfhost-helloworld-compile 2>&1 | head -2
  done
'
# helloworld_compile_smoke: parseAndCompile returned null (parser/CFG spine)

Zend lint passes; lib/Compiler.php native emit via same helper is green (sidecar fast path).

Scope

Path Work
bin/vm.php VM CLI entry — inventory SSOT driver
src/cli_driver.php Spine shim toward bin/compile.php (#1467)
lib/JIT/M3EmitTuTrivialEchoAot.php Register driver sidecars or real compileEmitSmoke
lib/JIT.php Sidecar host-compile subprocess policy
test/selfhost/compiler_lib_spine_smoke/main.php Closure over vm.php path

Repro

./script/docker-exec.sh -- bash -lc '
  export PHP_COMPILER_M3_SOURCE=/compiler/bin/vm.php
  export PHP_COMPILER_M3_OUT=/compiler/build/vm-aot
  ./script/bootstrap-selfhost-helloworld-compile-bin.sh
'

Depends on #2690-class fix for bin/compile.php sidecar / real lowering (file new issue number after create).

Done when

Labels

self-host, bootstrap, IMPORTANT

Links

#2600 · #1467 · #1521 · #1492

Activity

  1. PurHur commented on May 27, 2026

    @PurHur
    OwnerAuthor

    Depends on #2697 (bin/compile.php sidecar segfault / missing .m3_bin_compile_aot_blob) — not #2690.

  2. added 2 commits that reference this issue on May 27, 2026
  3. PurHur commented on May 27, 2026

    @PurHur
    OwnerAuthor

    Still blocked on #2826 → #2697 driver emit. Re-probe after vendor patch fix.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions