SpirvShader: Refactor loads and stores. Consider limits.
This change moves all calls to rr::Load() and rr::Store() to two
new functions: SIMD::Load() and SIMD::Store(). This attempts to
consolodate the SIMD memory ops into reusable functions, while
also adding bounds checking on the accesses.
The additional branches hurts the JIT codegen performance.
This will be resolved with a future change.
Tests: dEQP-VK.robustness.*
Bug: b/131224163
Change-Id: I3a392a1f4f5366fa5134c081e0a2479575f92d80
Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/29334Reviewed-by:
Chris Forbes <chrisforbes@google.com>
Tested-by:
Ben Clayton <bclayton@google.com>
Presubmit-Ready: Ben Clayton <bclayton@google.com>
Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
Showing
This diff is collapsed.
Click to expand it.
Please
register
or
sign in
to comment