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.
Fixes #2262.
This adds a backend compiler optimization that statically executes (kinda) the Switch node if the selected input is statically known (it currently always is). Static execution is a strong word. In actuality, it just removes the edges from inputs that aren't selected. However, the effect is the same: only the selected input will be executed.
Of course, this new optimization works together with the already present
removed_dead_nodes
optimization.Other changes:
Chain
. It now contains node input values instead of just edges. Since optimization may add, change, and remove nodes, they also need to be able to influence input values.