Skip to content

Perf: echo overflowable native-long via local stack box (#36386) - #37064

Merged
PurHur merged 1 commit into
masterfrom
agent/issue-36386-echo-overflowable-native-long
Sep 6, 2026
Merged

Perf: echo overflowable native-long via local stack box (#36386)#37064
PurHur merged 1 commit into
masterfrom
agent/issue-36386-echo-overflowable-native-long

Conversation

@PurHur

@PurHur PurHur commented Sep 6, 2026

Copy link
Copy Markdown
Owner

Summary

php-src: Zend/zend_vm_def.h ZEND_ECHO.

Part of #36386.

Test plan

  • ./script/phpunit.sh --filter EchoOverflowableNativeLongAotTest3/3
  • ./script/aot-smoke.sh9/9 + size gate OK
  • make north-star5-verify-fast → OK (spine 8348/8348)
  • script/differential-sweep.sh --aot --repeat 3 --dir /tmp/diff-echo-ov3/3

Made with Cursor

{main} echo preferred an empty script-global sidecar after lazy ±/×
materialize left a TYPE_VALUE stack box; prefer the named binding like

Co-authored-by: Cursor <cursoragent@cursor.com>
#36408/#36366 so echo matches print/var_dump/Zend.
@PurHur
PurHur merged commit d4bbf5d into master Sep 6, 2026
1 check failed
@PurHur
PurHur deleted the agent/issue-36386-echo-overflowable-native-long branch September 6, 2026 20:35
PurHur added a commit that referenced this pull request Sep 6, 2026
) (#37068)

extractAsCString fell through TYPE_VALUE to a constant empty C string after
lazy ±/×/`/` materialize; type-switch boxed args and overflow flag+f64 slots
instead (peer of #37064 echo). Free only the selected arm buffer via phi.

Co-authored-by: PurHur <PurHur@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
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