Fix #2005. Allow multiple compilation units to declare identical push_constant blocks...
authorMalcolm Bechard <mbechard@users.noreply.github.com>
Mon, 16 Mar 2020 14:51:15 +0000 (10:51 -0400)
committerGitHub <noreply@github.com>
Mon, 16 Mar 2020 14:51:15 +0000 (08:51 -0600)
commit4b2483ee88ab2ce904f6bac27c7796823c45564c
tree0a234e26aa82b83a07fce83b122a54656c5ba914
parent9b620aa0c12d12dd7ec7ced43ce9e58f275d47c1
Fix #2005. Allow multiple compilation units to declare identical push_constant blocks (#2123)

* Fixes #2005

Allow multiple units in a stage to have push_constants as long
as the blocks match.
Requires #2006 to be fixed to be functional.

* tweaks to #2005 fix after some testing

* add unit tests for push constants across multiple compilation units

For #2005

* update reference output for tests that fail validation

* fix uninitialized result.validationResult
14 files changed:
Test/baseResults/link.vk.differentPC.0.0.frag.out [new file with mode: 0755]
Test/baseResults/link.vk.differentPC.1.0.frag.out [new file with mode: 0755]
Test/baseResults/link.vk.matchingPC.0.0.frag.out [new file with mode: 0755]
Test/link.vk.differentPC.0.0.frag [new file with mode: 0755]
Test/link.vk.differentPC.0.1.frag [new file with mode: 0755]
Test/link.vk.differentPC.0.2.frag [new file with mode: 0755]
Test/link.vk.differentPC.1.0.frag [new file with mode: 0755]
Test/link.vk.differentPC.1.1.frag [new file with mode: 0755]
Test/link.vk.differentPC.1.2.frag [new file with mode: 0755]
Test/link.vk.matchingPC.0.0.frag [new file with mode: 0755]
Test/link.vk.matchingPC.0.1.frag [new file with mode: 0755]
Test/link.vk.matchingPC.0.2.frag [new file with mode: 0755]
glslang/MachineIndependent/linkValidate.cpp
gtests/Link.FromFile.Vk.cpp