mesa/glspirv: Add _mesa_spirv_link_shaders() function
authorEduardo Lima Mitev <elima@igalia.com>
Tue, 10 Oct 2017 08:46:29 +0000 (10:46 +0200)
committerAlejandro Piñeiro <apinheiro@igalia.com>
Fri, 30 Mar 2018 07:14:56 +0000 (09:14 +0200)
commit9c36e9f8626fb2b02736abbd11e783b61a40959c
tree10c02fd59028dfb639906c0b361e1c8df8d5d7c5
parent22b6b3d0a75406f577dcb6d554c96ed42ee35aff
mesa/glspirv: Add _mesa_spirv_link_shaders() function

This is the equivalent to link_shaders() from
src/compiler/glsl/linker.cpp, but for SPIR-V programs. It just
creates the program and its gl_linked_shader objects, giving drivers
the opportunity to implement any linking of SPIR-V shaders they choose,
at a later stage.

v2: Bail out if we see more that one shader for the same stage, and
    add a corresponding comment. (Timothy Arceri)

v3:
  * Adds also a linker error log to the condition above, with a
    reference to the specification issue. (Timothy Arceri)
  * Squash with the patch adding the function boilerplate (Timothy
    Arceri)

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
src/mesa/main/glspirv.c
src/mesa/main/glspirv.h