Disable loop unrolling when encounting errors about invalid array indices.
Zero-sized loops or loops that might never be executed may be unrolled into
constant array accesses that are invalid, generating HLSL compiler errors.
This issue showed up with the passthrough command decoder because it only does
a single compilation step of WebGL shader -> HLSL instead of the validating
decoder which does WebGL shader -> ESSL -> HLSL and eliminates these zero-
sized loops in the process.
BUG=angleproject:3269
Change-Id: Iaa14149c542f23a6da58c90cf6de51f4df7e27d6
Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1524696Reviewed-by:
Jamie Madill <jmadill@chromium.org>
Reviewed-by:
Jonah Ryan-Davis <jonahr@google.com>
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Showing
Please
register
or
sign in
to comment