Skip to content

Enable Phase C link for class const fetch and instanceof#545

Merged
PurHur merged 1 commit into
masterfrom
issue-bootstrap-jit-const-instanceof
May 22, 2026
Merged

Enable Phase C link for class const fetch and instanceof#545
PurHur merged 1 commit into
masterfrom
issue-bootstrap-jit-const-instanceof

Conversation

@PurHur
Copy link
Copy Markdown
Owner

@PurHur PurHur commented May 22, 2026

Summary

  • Implement JIT TYPE_CLASS_CONST_FETCH and TYPE_INSTANCEOF in Object_ (class constant table, class_id checks, __value__ object read/write).
  • Complete VM lowering for class constants and instanceof; support bool returns and boxed-to-native return unboxing in JIT.
  • Remove class_const_fetch.php and instanceof_check.php from bootstrap Phase C pending list and regenerate docs/bootstrap-profile.json.

Test plan

  • docker AOT compile + run test/bootstrap-aot/class_const_fetch.php and instanceof_check.php
  • ./script/bootstrap-aot-link.sh (9 targets OK)
  • vendor/bin/phpunit --group bootstrap,aot-link,llvm test/aot/BootstrapPhaseCTest.php

Made with Cursor

Implement Object_ JIT helpers for class constants and instanceof (including
__value__ object boxing), complete VM lowering, and promote the bootstrap
fixtures to aot_link_targets.

Co-authored-by: Cursor <cursoragent@cursor.com>
@PurHur PurHur merged commit 7364b46 into master May 22, 2026
@PurHur PurHur deleted the issue-bootstrap-jit-const-instanceof branch May 22, 2026 15:03
PurHur added a commit that referenced this pull request May 22, 2026
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