| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| Common | ||
| D3D8 | ||
| D3D9 | ||
| Device | ||
| Main | ||
| OpenGL | ||
| Pipeline | ||
| Reactor | ||
| Renderer | ||
| Shader | ||
| SwiftShader | ||
| System | ||
| Vulkan | ||
| WSI | ||
| Android.bp | ||
| Android.mk | ||
| SwiftShader.workspace | ||
| swiftshader.gni |
The vast majority of values in a SPIRV program are intermediates -- they are guaranteed written to exactly once, by the instruction which defines them. Initially we had treated these the same as mutable (stack) variables, but that produces wasteful code full of loads and stores. Instead, represent intermediate values as a bundle of RValue<Float4>, representing an rvalue float-sized value per SIMD lane. Introduce the new type Intermediate to hold these bundles to allow incremental construction of the individual RValue<Float4> objects within the bundle. Bug: b/124534397 Change-Id: Ibb663773100d017de117111705b530b092f87ea2 Reviewed-on: https://swiftshader-review.googlesource.com/c/24968Tested-by:Chris Forbes <chrisforbes@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| Common | Loading commit data... | |
| D3D8 | Loading commit data... | |
| D3D9 | Loading commit data... | |
| Device | Loading commit data... | |
| Main | Loading commit data... | |
| OpenGL | Loading commit data... | |
| Pipeline | Loading commit data... | |
| Reactor | Loading commit data... | |
| Renderer | Loading commit data... | |
| Shader | Loading commit data... | |
| SwiftShader | Loading commit data... | |
| System | Loading commit data... | |
| Vulkan | Loading commit data... | |
| WSI | Loading commit data... | |
| Android.bp | Loading commit data... | |
| Android.mk | Loading commit data... | |
| SwiftShader.workspace | Loading commit data... | |
| swiftshader.gni | Loading commit data... |