layers: Make passing a non-SPIRV shader to CreateShaderModule an error
authorChris Forbes <chrisf@ijw.co.nz>
Thu, 17 Sep 2015 23:40:23 +0000 (11:40 +1200)
committerChris Forbes <chrisf@ijw.co.nz>
Sun, 20 Sep 2015 00:38:45 +0000 (12:38 +1200)
commit0a6c87bc0612740025fc28e3a29f62b35e37430c
tree61b55ff6d802e5c0c42dc336903ef309e3cbc976
parent2fdf61c95222102c3bd12471a0b6d77648535dda
layers: Make passing a non-SPIRV shader to CreateShaderModule an error

Various real drivers are not tolerant of the wrapped-GLSL-blob hack that
was used early in Vulkan development. Rather than simply bypassing most
of the validation when one of these blobs is seen, make it an error.

Structurally, move the validation out of the shader_module ctor in
preparation for the callback being able to signal whether to bail out.

V2: Adjustment for descriptor validation landing

Signed-off-by: Chris Forbes <chrisf@ijw.co.nz>
Reviewed-by: Tobin Ehlis <tobin@lunarg.com>
layers/shader_checker.cpp