[Mesa-dev] [RFC] ARB_gl_spirv and NIR backend for radeonsi
Timothy Arceri
tarceri at itsqueeze.com
Sun May 21 15:46:05 UTC 2017
<snip>
>
> Questions
> =========
>
> 1. How do we get good test coverage?
> ------------------------------------
> A natural candidate would be to add a SPIR-V execution mode for the
> piglit shader_runner. That is, use build scripts to extract shaders from
> shader_test files and feed them through glslang to get spv files, and
> then load those from shader_runner if a `-spirv' flag is passed on the
> command line.
>
> This immediately runs into the difficulty that GL_ARB_gl_spirv wants SSO
> linking semantics, and I'm pretty sure the majority of shader_test files
> don't support that -- if only because they don't set a location on the
> fragment shader color output.
>
> Some ideas:
> 1. Add a GL_MESA_spirv_link_by_name extension
> 2. Have glslang add the locations for us (probably difficult because
> glslang seems to be focused on one shader stage at a time.)
> 3. Hack something together in the shader_test-to-spv build scripts via
> regular expressions (and now we have two problems? :-) )
> 4. Other ideas?
>
I think there should be a large number of tests that do work. A simple
test would be to use sed to insert SSO ENABLED into the [require] block
of all shader running tests and see how may fail. This should give you a
list to work with for the conversions.
<snip>
More information about the mesa-dev
mailing list