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)
commit9163d222f83ffba7cc10479c0d4c3d891e272129
treee9720e899c72b5c32f8e0cd638194e3d024e4ba3
parent9dc99ea921954483fee5c63252622d8c94348b95
parent537a9b736914f0dcedc6a783a747fa03f5a34023
Merge branch 'jekstrand-spirv-assembly-fixes' into 'vulkan-cts-1.0-dev'

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