Disallow stores to UBOs#2651
Merged
alan-baker merged 3 commits intoKhronosGroup:masterfrom Jun 17, 2019
Merged
Conversation
dneto0
requested changes
Jun 7, 2019
Collaborator
dneto0
left a comment
There was a problem hiding this comment.
Requesting fix for extra pointer-tracing cases. (In fact, it seems this tracing is a good candidate for a common function)
Other instructions can also store: many kinds of atomics, GLSL frexp and GLSL modf. I'm fine with filing an issue for those as future work.
source/val/validate_memory.cpp
Outdated
| if (spvIsVulkanEnv(_.context()->target_env) && | ||
| storage_class == SpvStorageClassUniform) { | ||
| auto base_ptr = pointer; | ||
| while (base_ptr->opcode() == SpvOpAccessChain) { |
Collaborator
There was a problem hiding this comment.
Also need to trace through OpInBoundsAccessChain and OpCopyObject.
c899ce6 to
c487309
Compare
dneto0
approved these changes
Jun 15, 2019
Collaborator
dneto0
left a comment
There was a problem hiding this comment.
Thanks. Please rebase to resolve the conflict.
c487309 to
71a07c0
Compare
Fixes KhronosGroup#2638 * Adds a check that errors out if there is a store to a UBO in the Vulkan environment * tests
* trace more instructions * refactor tracer into separate function
71a07c0 to
aa75ce2
Compare
dneto0
pushed a commit
to dneto0/SPIRV-Tools
that referenced
this pull request
Sep 14, 2024
Roll third_party/glslang/ 9db7278..f9d08a2 (6 commits) KhronosGroup/glslang@9db7278...f9d08a2 $ git log 9db7278..f9d08a2 --date=short --no-merges --format='%ad %ae %s' 2019-06-18 cepheus Bump revision. 2019-06-17 cepheus AST/SPV: Fix KhronosGroup#930: translate uvec4 <-> uint64 for SubgroupGeMask et. al. 2019-06-18 cepheus Bump revision. 2019-06-17 cepheus SPV: Add a switch for favoring non-NaN operands in min, max, and clamp. 2019-06-17 cepheus Bump revision. 2019-02-17 jbolz Add Float16/Int8/Int16 capabilities for private variables and function parameters Roll third_party/googletest/ 176eccfb8..ee32b72e1 (12 commits) google/googletest@176eccf...ee32b72 $ git log 176eccfb8..ee32b72e1 --date=short --no-merges --format='%ad %ae %s' 2019-06-18 misterg Googletest export 2019-06-17 misterg Googletest export 2019-06-17 misterg Fixing CI break by going to bazel 0.26.1 2019-06-17 misterg Revert "testing, explicitly specify compiler" 2019-06-17 absl-team Googletest export 2019-06-17 misterg Googletest export 2019-06-17 misterg revert travis.yml, irrelevant 2019-06-17 misterg bazel 0.26.1 2019-06-17 misterg bazel 0.26.1 2019-06-17 misterg testing with bazel 0.26.1 2019-06-17 misterg testing with bazel 0.26.1 2019-06-17 misterg testing, explicitly specify compiler Roll third_party/spirv-cross/ 146dc453b..05ea05509 (2 commits) KhronosGroup/SPIRV-Cross@146dc45...05ea055 $ git log 146dc453b..05ea05509 --date=short --no-merges --format='%ad %ae %s' 2019-06-18 post Make sure args.msl22 is set in test_shaders.py. 2019-06-18 post MSL: Fix path check in test_shaders.py. Roll third_party/spirv-tools/ 59983a6..001e823 (5 commits) KhronosGroup/SPIRV-Tools@59983a6...001e823 $ git log 59983a6..001e823 --date=short --no-merges --format='%ad %ae %s' 2019-06-18 afdx Add fuzzer pass to obfuscate constants. (KhronosGroup#2671) 2019-06-17 33432579+alan-baker Handle volatile memory semantics in upgrade (KhronosGroup#2674) 2019-06-17 33432579+alan-baker Validate Volatile memory semantics bit (KhronosGroup#2672) 2019-06-17 33432579+alan-baker Disallow stores to UBOs (KhronosGroup#2651) 2019-06-17 dneto Another fix uint -> uint32_t (KhronosGroup#2676) Created with: roll-dep third_party/effcee third_party/glslang third_party/googletest third_party/re2 third_party/spirv-cross third_party/spirv-headers third_party/spirv-tools
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #2638
Vulkan environment