Fix bootstrap JIT assignOperand and Runtime MODE_* for AOT compile (#1074)#1129
Merged
Conversation
…1074) Materialize native arrays into value boxes via __value__writeHashtable and seed PHPCompiler\Runtime MODE_* constants for external class const fetch so stdlib_numeric and compile_driver_smoke fixtures reach LLVM AOT compile. Co-authored-by: Cursor <cursoragent@cursor.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
__value__writeHashtableinassignOperand, fixingSource type: 196onstdlib_numericandvaluePtrFromVariable requires TYPE_VALUEon nested native-array value copies.PHPCompiler\Runtimeclass constants (MODE_NORMAL,MODE_AOT) for JIT class-const fetch socompile_driver_smokeand self-host driver paths compile.BootstrapAotJitCompileTestLLVM AOT compile gates for both patterns.Progress toward North Star 2 self-host (#1056).
Closes #1074
Test plan
vendor/bin/phpunit test/unit/BootstrapAotJitCompileTest.php --group llvm(Docker)stdlib_numeric.phpandcompile_driver_smoke.phpno longer hit LogicException on master baseline./script/ci-fast.sh(Docker; no new failures from this change)Made with Cursor