- 22 Feb, 2019 4 commits
-
-
Chris Forbes authored
Previously we had only supported simple integer constants, as that was enough to parse array declarations etc. Fully implement constants, including large null objects, and constant composites constructed out of other constants. Bug: b/124934655 Change-Id: Ia1087f62a2bd75a3ca2f784ea24b0b3f01984ad9 Reviewed-on: https://swiftshader-review.googlesource.com/c/25148Tested-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Ben Clayton <bclayton@google.com>
-
Ben Clayton authored
Disabled by default by the request of Nicolas. Bug: b/123933266 Change-Id: Ie1217dc6c96ec85c9daf8246de785c8729386634 Reviewed-on: https://swiftshader-review.googlesource.com/c/25015Tested-by:
Ben Clayton <bclayton@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
Hernan Liatis authored
The above function, while listed with the device functions, was using MAKE_VULKAN_INSTANCE_ENTRY() instead of MAKE_VULKAN_DEVICE_ENTRY() Bug: b/125417927 Change-Id: I66865468f50b2db3f6904fab40f79db3346431a2 Reviewed-on: https://swiftshader-review.googlesource.com/c/25209 Kokoro-Presubmit: Hernan Liatis <hliatis@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Hernan Liatis <hliatis@google.com>
-
Hernan Liatis authored
Needed to call VkCreateXXXSurfaceKHR() functions, where XXX is the platform name. Bug: b/125405086 Change-Id: Id0de2ee02bd3b7d5b37eda202fb26e4ad3265bf3 Reviewed-on: https://swiftshader-review.googlesource.com/c/25208 Kokoro-Presubmit: Hernan Liatis <hliatis@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Hernan Liatis <hliatis@google.com>
-
- 21 Feb, 2019 4 commits
-
-
Ben Clayton authored
The clipper and blitter were being destructed before the worker threads were stopped. Also nullify after deleting other fields - this would have been much harder to detect if the clipper and blitter were not already being nullified after destruction. Tested with: ./unittests --gtest_repeat=100 --gtest_filter=SwiftShaderTest.TransformFeedback_DrawArraysInstanced Bug: b/124288179 Change-Id: Iefea829dfb8556c877c0a086253c5924c54aa638 Reviewed-on: https://swiftshader-review.googlesource.com/c/24748Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Tested-by:
Ben Clayton <bclayton@google.com>
-
Ben Clayton authored
Addressing this one toolchain at a time, as not all warning names are the same across toolchains. Bug: b/123933266 Change-Id: I618ebafb5ff18a885c71a8e2fa1943befc6786b6 Reviewed-on: https://swiftshader-review.googlesource.com/c/25014 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Ben Clayton <bclayton@google.com>
-
Ben Clayton authored
This was being incorrectly sized by the number of functions, not the highest label in use. While investigating this, I've realized that the sanity checks to ensure there are no dead functions was never going to fire as the function list was built from the list of called functions. Instead I've changed the function scanning pass to look for labels starting a LABEL-RET pair. Bug: b/125183107 Change-Id: Ic921097ed42a96b52f1ab7c9590c02fb3552b565 Reviewed-on: https://swiftshader-review.googlesource.com/c/25168Tested-by:
Ben Clayton <bclayton@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Ben Clayton authored
Reproduces the issues reported by b/125183107. Bug: b/125183107 Change-Id: If0f2ab3fcc8c065409fdbbc6df670f78a78fa3f7 Reviewed-on: https://swiftshader-review.googlesource.com/c/25169Tested-by:
Ben Clayton <bclayton@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
- 20 Feb, 2019 13 commits
-
-
Chris Forbes authored
Bug: b/124177079 Change-Id: I0dbcd154c2a28c43d9895e264cc794fc2ed289f2 Reviewed-on: https://swiftshader-review.googlesource.com/c/25029Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Ben Clayton <bclayton@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com>
-
Chris Forbes authored
Bug: b/124177079 Change-Id: I1779ed78ccfdb6c77bcf55ba109ae93fc75171ff Reviewed-on: https://swiftshader-review.googlesource.com/c/24989Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
This was completely broken -- we weren't walking down the type tree at all. Bug: b/124388146 Change-Id: I359d121403c3413e74427fadf57fd4c3d52f7661 Reviewed-on: https://swiftshader-review.googlesource.com/c/25088Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
Bug: b/124534397 Change-Id: Icfe0d83b0e8df648c90ba7f250924ad28dd06b55 Reviewed-on: https://swiftshader-review.googlesource.com/c/25108Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
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>
-
Ben Clayton authored
Change-Id: Ifbcb30da30b912a1a60f5799717869c8d56cd90b Reviewed-on: https://swiftshader-review.googlesource.com/c/25018 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Ben Clayton <bclayton@google.com>
-
Ben Clayton authored
Bug: b/123933266 Change-Id: I3e5f028ab323f361840a6326a1b7834995e8b8e3 Reviewed-on: https://swiftshader-review.googlesource.com/c/25017 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Ben Clayton <bclayton@google.com>
-
Ben Clayton authored
This produces a non-silenceable warning about enum fields being too small to store all enum values. Nicolas agreed we can just drop the bitpacking for vulkan state. Bug: b/123933266 Change-Id: Idf09be3ef122fca70da8d877a211368b7fd8a995 Reviewed-on: https://swiftshader-review.googlesource.com/c/25013Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Tested-by:
Ben Clayton <bclayton@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Nico Weber authored
Bug: chromium:926235 Change-Id: I9d5a28e1dd2ee6619ee0fefcd9f3798ca22be45b Reviewed-on: https://swiftshader-review.googlesource.com/c/25048Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Ben Clayton <bclayton@google.com> Tested-by:
Nico Weber <thakis@chromium.org> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Ben Clayton authored
Bug: b/123933266 Change-Id: If8fa478aa65f5c0046ca635a8d133911f8a59977 Reviewed-on: https://swiftshader-review.googlesource.com/c/25010 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com> Tested-by:
Ben Clayton <bclayton@google.com>
-
Ben Clayton authored
Lost in the noise of other warnings Bug: b/123933266 Change-Id: I4c4eecb55a364c9afacf52b790f43f9d5c9640cb Reviewed-on: https://swiftshader-review.googlesource.com/c/25012Tested-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Ben Clayton authored
Fixes warnings about switch statements not handling all enum values. Bug: b/123933266 Change-Id: I0372ebf2412452622eb99ea7bba7ebc5cedd385c Reviewed-on: https://swiftshader-review.googlesource.com/c/25009Tested-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Ben Clayton authored
Compiles and links shaders that perform deep nesting of control blocks and calls. Bug: b/123587120 Change-Id: I8f19611cbe6d36990ad368a600d2d5be20b1ea07 Reviewed-on: https://swiftshader-review.googlesource.com/c/24728Tested-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Alexis Hétu <sugoi@google.com>
-
- 19 Feb, 2019 5 commits
-
-
Ben Clayton authored
Not longer needed after https://swiftshader-review.googlesource.com/c/SwiftShader/+/24668 Change-Id: Ib345e5f288123387d44d230438da899120be830a Reviewed-on: https://swiftshader-review.googlesource.com/c/25016Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Tested-by:
Ben Clayton <bclayton@google.com>
-
Ben Clayton authored
Perform whole-shader analysis to determine usage limits. Use these limits to allocate compile time and runtime arrays. Removes the constants: MAX_SHADER_NESTED_LOOPS MAX_SHADER_NESTED_IFS MAX_SHADER_CALL_STACK_SIZE Also switched to using dynamic containers to remove the MAX_SHADER_CALL_SITES limit, which I believe to have been buggy and broken. Bug: b/123587120 Change-Id: I89be80072183ac2aac28124df236888309e7207c Reviewed-on: https://swiftshader-review.googlesource.com/c/24668Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Tested-by:
Ben Clayton <bclayton@google.com>
-
Chris Forbes authored
This makes WalkAccessChain slightly easier on the backend -- there is less constant folding to do. Bug: b/124388146 Change-Id: I4e76c3e494278e1399b8a86134b652c2a6d96d8c Reviewed-on: https://swiftshader-review.googlesource.com/c/24988Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Ben Clayton authored
There was an optimization that skipped a [0, 1] clamp for a particular sampling mode as it assumed the input coordinates were always within these bounds. However, if the texture sample coordinates were inf or NaN, this assumption broke, causing the returned address to be outside the bounds of the image data. Bug: b/123731195 Bug: b/124368982 Change-Id: I0af34ee4c2792b19081d9270fd0b1e0d0559287e Reviewed-on: https://swiftshader-review.googlesource.com/c/24868Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Ben Clayton <bclayton@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Ben Clayton authored
Don't hold a pointer to the structure - there's no guarantees it'll still be vaild by command buffer execution time. Fixes flakiness of the dEQP-VK.memory.pipeline_barrier.transfer_dst_storage_image.* tests Bug: b/124729778 Change-Id: I747512b1a34c5d4d7dff227b15b08c69d07b298d Reviewed-on: https://swiftshader-review.googlesource.com/c/25008 Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Ben Clayton <bclayton@google.com>
-
- 15 Feb, 2019 14 commits
-
-
Alexis Hetu authored
There's no reason to have any limitation on granularity in SwiftShader, so the granularity is always 1 pixel. Passes all tests in: dEQP-VK.api.granularity Bug b/119620965 Change-Id: Ie2f09737c0054da1b6806b9572e515446a8b1263 Reviewed-on: https://swiftshader-review.googlesource.com/c/24890Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com>
-
Alexis Hetu authored
When constructing a Graphics pipeline, some structures may or may not exist, depending on what will be used by the render pass. These structures (viewportState, multisampleState, depthStencilState and colorBlendState) are now checked before being used, since it is allowed for these to be null. Bug b/118386749 Change-Id: If2759ae2554a98143b30e70624a0dc8d88c5bd43 Reviewed-on: https://swiftshader-review.googlesource.com/c/24911Tested-by:
Alexis Hétu <sugoi@google.com> Reviewed-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
Bug: b/124388146 Change-Id: I2c422dc2f85730f4c4bef45388e77028465ea9ba Reviewed-on: https://swiftshader-review.googlesource.com/c/24828Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
- Provides a point to complain if something is not yet defined. - Allows avoiding ugly syntax from use of unique_ptr Bug: b/124388146 Change-Id: Ib55023fff5c90b71a41c5f558544be65250bb67d Reviewed-on: https://swiftshader-review.googlesource.com/c/24791Tested-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Ben Clayton <bclayton@google.com>
-
Chris Forbes authored
Bug: b/124388146 Change-Id: I948ad5607c1e41be920006aaa4b7d18d210af4a3 Reviewed-on: https://swiftshader-review.googlesource.com/c/24790Tested-by:
Chris Forbes <chrisforbes@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Reviewed-by:
Ben Clayton <bclayton@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
Bug: b/124388146 Change-Id: Ia3c4e6c81432dcfbca5bdd21c857108ee14bda9b Reviewed-on: https://swiftshader-review.googlesource.com/c/24788Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
Bug: b/124388146 Change-Id: I79b4c3bc59631332f4748394a166612ad5d975de Reviewed-on: https://swiftshader-review.googlesource.com/c/24600Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
I need to also walk interface objects in shader prolog & epilog; will reuse this logic. Bug: b/124388146 Change-Id: Ida735f58aa1bc36d83e4a6ea3c16925a9c5656b0 Reviewed-on: https://swiftshader-review.googlesource.com/c/24808Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
Bug: b/124388146 Change-Id: I17531e47fc6fc4b296f893f94beb75f471847fd3 Reviewed-on: https://swiftshader-review.googlesource.com/c/24789Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com> Kokoro-Presubmit: kokoro <noreply+kokoro@google.com>
-
Chris Forbes authored
Bug: b/124388146 Change-Id: Id528368106eb0d09930ff4fccbe94704b585a531 Reviewed-on: https://swiftshader-review.googlesource.com/c/24599Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com>
-
Chris Forbes authored
These are our first instructions which yield ssavalues. For OpAccessChain, also track the base pointer (which we always know at compile time, until we do full variable pointers support). The value representation for OpAccessChain's result has two parts: - per-lane Int offset into whatever the thing is - shared (and statically known) base reference. Bug: b/124388146 Change-Id: I364375719b6e396b802de06093454c8f0e76adb6 Reviewed-on: https://swiftshader-review.googlesource.com/c/24598Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com>
-
Chris Forbes authored
Most of these are "we know we can just ignore this instruction", but also sanity check for the lowering passes applied before this -- if any of those instructions remain, then we're very likely to do the wrong thing. Bug: b/124388146 Change-Id: I3f8f66121f57f20cc93abdbd26c575baf03d9c94 Reviewed-on: https://swiftshader-review.googlesource.com/c/24597Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com>
-
Chris Forbes authored
Bug: b/124177079 Change-Id: Ibe657d802c38b84bf2017a8aeaf38f887910bc60 Reviewed-on: https://swiftshader-review.googlesource.com/c/24596Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com>
-
Chris Forbes authored
This can be queried directly from the shader Bug: b/124177079 Change-Id: I08aac7f77fb59f005295de3d417d24bf61fb3906 Reviewed-on: https://swiftshader-review.googlesource.com/c/24595Reviewed-by:
Ben Clayton <bclayton@google.com> Reviewed-by:
Nicolas Capens <nicolascapens@google.com> Tested-by:
Chris Forbes <chrisforbes@google.com>
-