This repository was archived by the owner on Feb 25, 2025. It is now read-only.
Refactor SPIR-V transpiler.#31430
Merged
fluttergithubbot merged 3 commits intoflutter:mainfrom Feb 13, 2022
Merged
Conversation
No tests are modified because this commit does not make a change to the API or behavior of the API. This change prepares the transpiler for the addition of control flow by adding an additonal layer of indirection between processing instructions from the SPIR-V byte code and writing the shader source string. The changes are the following: - Functions are written to _Function objects - Blocks are written to _Block objects - Instructions per block are collected into _Instruction objects - Instructions are written lazily when functions are written, allowing late-resolution of variable names, inlining of expressions that are only used once, and indenting at write time.
|
It looks like this pull request may not have tests. Please make sure to add tests before merging. If you need an exemption to this rule, contact Hixie on the #hackers channel in Chat (don't just cc him here, he won't see it! He's on Discord!). If you are not sure if you need tests, consider this rule of thumb: the purpose of a test is to make sure someone doesn't accidentally revert the fix. Ask yourself, is there anything in your PR that you feel it is important we not accidentally revert back to how it was before your fix? Reviewers: Read the Tree Hygiene page and make sure this patch meets those guidelines before LGTMing. |
Contributor
|
test-exempt: code refactor with no semantic change |
zanderso
reviewed
Feb 13, 2022
Member
zanderso
left a comment
There was a problem hiding this comment.
Just a couple minor comments.
zanderso
approved these changes
Feb 13, 2022
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Feb 14, 2022
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Feb 14, 2022
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Feb 14, 2022
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
No tests are modified because this commit does not make a change
to the API or behavior of the API.
This change prepares the transpiler for the addition of control flow by adding
an additonal layer of indirection between processing instructions from the
SPIR-V byte code and writing the shader source string.
The changes are the following:
allowing late-resolution of variable names, inlining of
expressions that are only used once, and indenting at
write time.
flutter/flutter#85261
Pre-launch Checklist
writing and running engine tests.
///).