<div dir="ltr">Hello!<div><br></div><div>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.</div><div><br></div><div>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 (<span style="color:rgb(0,0,0);white-space:pre-wrap">brw_fs_validate.cpp:47</span>), resulting in an immediate termination of my application.</div><div><br></div><div>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.</div><div><br></div><div>I've detailed a shader workaround here:</div><div><a href="https://bugs.freedesktop.org/show_bug.cgi?id=94182">https://bugs.freedesktop.org/show_bug.cgi?id=94182</a><br></div><div><br></div></div>