Commit 96a387f8ff93e70ff57c176ee67a8d41ff987159

Geoff Lang 2019-03-15T11:38:18

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/+/1524696 Reviewed-by: Jamie Madill <jmadill@chromium.org> Reviewed-by: Jonah Ryan-Davis <jonahr@google.com> Commit-Queue: Geoff Lang <geofflang@chromium.org>