Skip to content

Language: array_map() JIT/AOT parity (#542) - #550

Merged
PurHur merged 2 commits into
masterfrom
issue-542-array-map-jit-aot
May 22, 2026
Merged

PurHur merged 2 commits into
masterfrom
issue-542-array-map-jit-aot

Conversation

@PurHur

@PurHur PurHur commented May 22, 2026

Copy link
Copy Markdown
Owner

Summary

  • Implement array_map() in the JIT via ArrayBuiltinHelper::buildMapArray() for compile-time string builtin callbacks (strval, intval, etc.) and null identity copy.
  • Wire ext/standard/array_map.php::call() to the helper; update docs/capabilities.md to JIT/AOT yes.
  • Add test/compliance/cases/stdlib/array_map_jit.phpt and test/fixtures/aot/cases/array_map.phpt.

Test plan

  • AOT: array_map('strval', [1,2,3]) → 123 via bin/compile.php in php-compiler:22.04-dev
  • AOT: array_map(null, ['a','b']) identity copy → ab
  • VM compliance cases unchanged (array_map.phpt, array_map_null.phpt)
  • Full ./script/ci-local.sh on a host with working JIT runtime (harness JIT via stdin segfaults; AOT path green)

Closes #542

Made with Cursor

PurHur and others added 2 commits May 22, 2026 15:09
Wire array_map through ArrayBuiltinHelper with compile-time string callbacks
and null identity copy, update the capability matrix, and add compliance/AOT
fixtures. AOT verified for strval mapping and null copy in Docker.

Co-authored-by: Cursor <cursoragent@cursor.com>
Regenerate bootstrap-inventory.md after merge.

Co-authored-by: Cursor <cursoragent@cursor.com>
@PurHur
PurHur merged commit 24d527c into master May 22, 2026
@PurHur
PurHur deleted the issue-542-array-map-jit-aot branch May 22, 2026 15:09
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.

Language: array_map() JIT/AOT parity (stdlib subset for web helpers)

1 participant