VkPipeline: Add basic optimization passes.
A lot of the Regres timeouts we are seeing are in LLVM code generation.
These appear to happen for shaders with a pathological number of loads and stores - most likely created by glslang.
Each of these loads and stores produce a bunch of branches in the LLVM IR (due to lane masking), which then choke LLVM.
Tests: dEQP-VK.ssbo.layout.*
Change-Id: I0bb654d9001d0d6bdd02244844bed8e73ce8d9d4
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/28348
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Reviewed-by:
Chris Forbes <chrisforbes@google.com>
Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
Tested-by:
Ben Clayton <bclayton@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Showing
Please
register
or
sign in
to comment