Don't emit duplicate decorations. (#3635)

It is invalid if the same decoration is applied to the same id multiple
times. This adds a check before adding a decoration that the decoration
is not already in the list. If it is, then the duplicate is not added.

Fixes #3627
This commit is contained in:
Steven Perron 2024-06-28 19:16:59 -04:00 committed by GitHub
parent 7c40de7aa2
commit 33c7e30860
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
575 changed files with 3482 additions and 3414 deletions

View file

@ -28,6 +28,7 @@ spv.expect_assume.expectEXT.comp
MemberName 18(roblock) 10 "uv3"
MemberName 18(roblock) 11 "uv4"
Name 20 "ro"
Decorate 18(roblock) BufferBlock
MemberDecorate 18(roblock) 0 NonWritable
MemberDecorate 18(roblock) 0 Offset 0
MemberDecorate 18(roblock) 1 NonWritable
@ -52,9 +53,8 @@ spv.expect_assume.expectEXT.comp
MemberDecorate 18(roblock) 10 Offset 112
MemberDecorate 18(roblock) 11 NonWritable
MemberDecorate 18(roblock) 11 Offset 128
Decorate 18(roblock) BufferBlock
Decorate 20(ro) DescriptorSet 0
Decorate 20(ro) Binding 0
Decorate 20(ro) DescriptorSet 0
Decorate 177 BuiltIn WorkgroupSize
2: TypeVoid
3: TypeFunction 2