Extend Blitter::fastClear(), which is based on memset() instead of using Reactor routines, to also handle D32_SFLOAT and S8_UINT formats. Benchmark results: Run on (48 X 2594 MHz CPU s) CPU Caches: L1 Data 32 KiB (x24) L1 Instruction 32 KiB (x24) L2 Unified 256 KiB (x24) L3 Unified 30720 KiB (x2) -------------------------------------------------------------------------- Benchmark Time CPU Iterations -------------------------------------------------------------------------- (LLVM, before) ClearImage/VK_FORMAT_D32_SFLOAT 3.74 ms 0.016 ms 1000 (LLVM, after) ClearImage/VK_FORMAT_D32_SFLOAT 1.08 ms 0.044 ms 10000 (Subzero, before) ClearImage/VK_FORMAT_D32_SFLOAT 4.51 ms 0.063 ms 1000 (Subzero, after) ClearImage/VK_FORMAT_D32_SFLOAT 0.963 ms 0.040 ms 7467 This change re-implements https://swiftshader-review.googlesource.com/c/SwiftShader/+/45888 which was reading 'clearValue' out of bounds when accessing color[1] when it's only a single depth or stencil value. Bug: b/159455503 Bug: chromium:1097740 Change-Id: Id3e74b4fa28ee0422540a8480814f8c9988f402a Reviewed-on: https://swiftshader-review.googlesource.com/c/SwiftShader/+/45949 Kokoro-Result: kokoro <noreply+kokoro@google.com> Tested-by:Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Antonio Maiorano <amaiorano@google.com>
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| ASTC_Decoder.cpp | Loading commit data... | |
| ASTC_Decoder.hpp | Loading commit data... | |
| BC_Decoder.cpp | Loading commit data... | |
| BC_Decoder.hpp | Loading commit data... | |
| BUILD.gn | Loading commit data... | |
| Blitter.cpp | Loading commit data... | |
| Blitter.hpp | Loading commit data... | |
| CMakeLists.txt | Loading commit data... | |
| Clipper.cpp | Loading commit data... | |
| Clipper.hpp | Loading commit data... | |
| Config.hpp | Loading commit data... | |
| Context.cpp | Loading commit data... | |
| Context.hpp | Loading commit data... | |
| ETC_Decoder.cpp | Loading commit data... | |
| ETC_Decoder.hpp | Loading commit data... | |
| Memset.hpp | Loading commit data... | |
| PixelProcessor.cpp | Loading commit data... | |
| PixelProcessor.hpp | Loading commit data... | |
| Polygon.hpp | Loading commit data... | |
| Primitive.hpp | Loading commit data... | |
| QuadRasterizer.cpp | Loading commit data... | |
| QuadRasterizer.hpp | Loading commit data... | |
| Rasterizer.hpp | Loading commit data... | |
| Renderer.cpp | Loading commit data... | |
| Renderer.hpp | Loading commit data... | |
| RoutineCache.hpp | Loading commit data... | |
| Sampler.hpp | Loading commit data... | |
| SetupProcessor.cpp | Loading commit data... | |
| SetupProcessor.hpp | Loading commit data... | |
| Stream.hpp | Loading commit data... | |
| Triangle.hpp | Loading commit data... | |
| Vertex.hpp | Loading commit data... | |
| VertexProcessor.cpp | Loading commit data... | |
| VertexProcessor.hpp | Loading commit data... |