Merge branch 'jekstrand-spirv-assembly-fixes' into 'vulkan-cts-1.0-dev'
authorPyry Haulos <phaulos@google.com>
Thu, 2 Jun 2016 18:37:24 +0000 (18:37 +0000)
committerPyry Haulos <phaulos@google.com>
Thu, 2 Jun 2016 18:37:24 +0000 (18:37 +0000)
spirv_assembly: Don't use booleans in SSBOs

The bool type in spirv isn't allowed in external storage.  From the SPIR-V
spec for OpTypeBool:

> Values of this type can only be either true or false. There is no
> physical size or bit pattern defined for these values. If they are
> stored (in conjunction with OpVariable), they can only be used with
> logical addressing operations, not physical, and only with
> non-externally visible shader Storage Classes: Workgroup,
> CrossWorkgroup, Private, and Function.

Instead, we should use an integer and use OpSelect to convert from a
boolean to the expected 0/1 value the test wants.

See merge request !569


Trivial merge