[Intel-gfx] [BUG] SPIR-V compiler non-vec4 fragment input

Jack Andersen jackoalan at gmail.com
Sat Feb 27 03:57:48 UTC 2016


Hello!

I'm an application developer using Haswell on Arch Linux, with the Vulkan
Mesa branch installed (last pulled this morning). I've been adopting the
Vulkan SDK into some of my applications over the last week. Since they
already use GLSL that's known to work with Mesa's OpenGL implementation,
I've had a solid base to transition these shaders to SPIR-V.

Fragment shaders with all vec4 inputs build into the pipeline object just
fine, but the moment a vec2/vec3 input is specified (either standalone or
in a struct), the driver fails an assert (brw_fs_validate.cpp:47),
resulting in an immediate termination of my application.

This assert also occurs with LunarG's unmodified Hologram demo. The
fragment shader in this demo is extremely simple, and uses vec3 to input an
RGB value. Changing the type to vec4 solves the issue, so it's likely a
load or shuffle operation causing the shader to fail validation.

I've detailed a shader workaround here:
https://bugs.freedesktop.org/show_bug.cgi?id=94182
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-gfx/attachments/20160226/beaa07dd/attachment-0001.html>


More information about the Intel-gfx mailing list