-
Notifications
You must be signed in to change notification settings - Fork 564
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
spirv-opt: CCP pass changes module and returns SuccessWithoutChange (2) #3991
Comments
@dnovillo ping. |
Thanks. I'll take a look. |
dnovillo
added a commit
to dnovillo/SPIRV-Tools
that referenced
this issue
Oct 27, 2020
The previous attempts at fixing this issue relied on marking the IR changed only when CCP was able to fold an instruction during propagation (KhronosGroup#3799, KhronosGroup#3732). Those fixes missed the case described in KhronosGroup#3991. In this case, the folder never actually succeeds in folding the instruction, but it does create constants in the process. Fixed with this change.
dnovillo
added a commit
that referenced
this issue
Oct 28, 2020
Simplify logic to decide whether CCP modified the IR. The previous attempts at fixing this issue relied on marking the IR changed only when CCP was able to fold an instruction during propagation (#3799, #3732). Those fixes missed the case described in #3991. In this case, the folder never actually succeeds in folding the instruction, but it does create constants in the process. Fixed with this change.
@Vasniktel this should now be fixed. If it is, please close the issue. Thanks. |
@dnovillo, thanks for the fix! |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
data.zip
The following shader
produces an error
when executed with
spirv-opt --ccp --validate-after-all <attached file> -o out.spv
.Can be reproduced on 69f07da.
This appears to be some kind of corner case unhandled in #3738.
The text was updated successfully, but these errors were encountered: