-
Notifications
You must be signed in to change notification settings - Fork 117
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
Reduction producing an inifinite loop #1139
Comments
Thanks for the report! Are you able to provide the working directory for the reduction? This should have loads and loads of JSON files and .frag files - one for each reduction step. With what you've provided I can see the end result of reduction, but not the log of what happened, and it's that log that would shed light on when the infinite loop arrived. |
This time I hit the same issue with the option that keeps the work dir. |
Ah, command.log, in the reduction working dir, says:
When moving on to a semantics-changing reduction (reduction 2), glsl-reduce tries to add global loop limiters. If this preserves interestingness of the shader (in your case, it still hits the coverage point) then after every simplification glsl-reduce makes it re-adds global loop limiters, so that the reducer can reduce aggressively and not worry about introducing infinite loops. But if adding global loop limiters in the first place doesn't work (e.g., adding them leads to the bug or coverage point disappearing) then it makes do without them. This doesn't mean that the bug/coverage point requires an infinite loop, as the original shader probably didn't have an infinite loop. It just means that adding the specific code shape associated with a loop limiter makes the bug/coverage point disappear. Perhaps we should get gfauto to look for this log message and use it to provide some indication that this happened, before deleting the reduction work dir - what do you think? |
I'm seeing the following reduced result even though infinite loops should not be produced by the reducer:
I've attached the folder I had under 'crashes' that shows this issue.
report.tar.gz
The text was updated successfully, but these errors were encountered: