Skip to content

Link task functions in destination runtime - #387

Draft
realFlowControl wants to merge 1 commit into
developfrom
florian/phase-2-link-functions
Draft

Link task functions in destination runtime#387
realFlowControl wants to merge 1 commit into
developfrom
florian/phase-2-link-functions

Conversation

@realFlowControl

@realFlowControl realFlowControl commented Jul 14, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Link direct task calls against the destination runtime's function table.
  • Execute destination-sensitive user-function calls through copied VM opcodes so function JIT cannot retain a submitter-runtime target.
  • Resolve unavailable functions when invoked, preserving task-local includes and catchable undefined-function errors.
  • Keep unaffected shared worker opcodes JIT-capable and verify this with a focused tracing-JIT test using opcache.protect_memory=0.
  • Document Runtime bootstrap as the preferred way to provide task dependencies.

Broad tracing-JIT CI remains separate in #394 pending the upstream OPcache fix in php/php-src#23081.

Testing

  • Full PHP 8.6 ZTS suite under vanilla, OPcache, and function JIT: zero failures.
  • Focused tracing-JIT tests with opcache.protect_memory=0: five passes.

@realFlowControl realFlowControl changed the title Link task functions in destination runtimes Validate task functions before execution Jul 14, 2026
@realFlowControl
realFlowControl force-pushed the florian/phase-2-link-functions branch 2 times, most recently from e9640f9 to a2d5e9d Compare July 15, 2026 08:22
@realFlowControl realFlowControl self-assigned this Jul 15, 2026
@realFlowControl
realFlowControl marked this pull request as ready for review July 15, 2026 09:48
@realFlowControl
realFlowControl force-pushed the florian/phase-2-link-functions branch from fa976b4 to fba61e3 Compare August 5, 2026 08:06
@realFlowControl realFlowControl changed the title Validate task functions before execution Link task functions in destination runtime Aug 5, 2026
@realFlowControl
realFlowControl marked this pull request as draft August 5, 2026 09:03
@realFlowControl
realFlowControl force-pushed the florian/phase-2-link-functions branch 3 times, most recently from 207b75d to cfa0180 Compare August 5, 2026 12:11
@realFlowControl
realFlowControl force-pushed the florian/phase-2-link-functions branch from 9c3305c to 768702f Compare August 6, 2026 15:50
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.

1 participant