Skip to content

M2 spine: JitDebugBacktrace + JitStreamContextCreate lowering (#1056) - #1854

Merged
PurHur merged 1 commit into
masterfrom
agent/stdlib-jit-backtrace-stream-context
May 25, 2026
Merged

PurHur merged 1 commit into
masterfrom
agent/stdlib-jit-backtrace-stream-context

Conversation

@PurHur

@PurHur PurHur commented May 25, 2026

Copy link
Copy Markdown
Owner

Summary

North Star 2 / M2 spine growth toward full bin/vm.php inventory (#1056, #1419):

  • Add ext/standard/JitDebugBacktrace.php and JitStreamContextCreate.php to compiler_lib_spine_smoke (584 / 588 units, ~99%).
  • Harden LLVM lowering scaffolds: HashTableHelper::packVariables for frame rows, correct __value__writeHashtable operand (raw __hashtable__* like JitGetObjectVars).
  • Sync README / development-status.md / self-host-target.md / roadmap-wave3.md footnotes and regenerate docs/bootstrap-inventory.md (588 files).

JIT enablement (deferred)

Wiring call() to these lowerings was prototyped but not enabled on this PR:

Builtin Blocker
debug_backtrace MCJIT runtime segfault (exit 139) with nested frame hashtables (#1378, #1751)
stream_context_create JIT run completes with empty stdout (no crash in PHPUnit path); needs MCJIT return-box investigation (#1377)

Capability matrix still shows VM-only JIT for both; follow-up PR will flip rows once green.

Test plan

  • BootstrapSelfhostBundleTest (584 spine count + AOT lint)
  • SelfhostSpineCountSyncTest
  • DebugBacktraceBuiltinTest / StreamContextCreateBuiltinTest (VM)
  • ./script/ci-fast.sh --filter BootstrapSelfhostBundleTest|SelfhostSpineCountSyncTest|DebugBacktraceBuiltinTest|StreamContextCreateBuiltinTest in Docker (tar pipe)

Closes #1419 (batch: Jit* leaves for #1377/#1378).

Made with Cursor

…1419)

Harden LLVM lowering scaffolds for debug_backtrace() and stream_context_create()
(packVariables / __value__writeHashtable patterns). Grow compiler_lib_spine_smoke
to 584/588 inventory units and sync North Star 2 footnotes.

JIT call() enablement remains deferred: MCJIT still segfaults on nested frame
hashtables (#1378) and empty/no-op runs for stream_context_create (#1377) until
follow-up. Closes #1419 batch for these Jit* leaves.

Co-authored-by: Cursor <cursoragent@cursor.com>
@PurHur
PurHur merged commit 08bdaa2 into master May 25, 2026
@PurHur
PurHur deleted the agent/stdlib-jit-backtrace-stream-context branch June 2, 2026 03:31
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.

M2 spine growth: batch tracker (compiler_lib_spine_smoke → full inventory)

1 participant