From: Nicolai Hähnle <nicolai.haeh...@amd.com> So... the pipe_ prefix doesn't really fit into a TGSI header; on the other hand, the return type has the pipe_ prefix. --- src/gallium/auxiliary/tgsi/tgsi_from_mesa.h | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+)
diff --git a/src/gallium/auxiliary/tgsi/tgsi_from_mesa.h b/src/gallium/auxiliary/tgsi/tgsi_from_mesa.h index 4c708f4..d0f211e 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_from_mesa.h +++ b/src/gallium/auxiliary/tgsi/tgsi_from_mesa.h @@ -19,25 +19,48 @@ * DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE * USE OR OTHER DEALINGS IN THE SOFTWARE. */ #ifndef TGSI_FROM_MESA_H #define TGSI_FROM_MESA_H #include <stdbool.h> +#include "pipe/p_compiler.h" +#include "pipe/p_defines.h" #include "pipe/p_shader_tokens.h" #include "compiler/shader_enums.h" void tgsi_get_gl_varying_semantic(gl_varying_slot attr, bool needs_texcoord_semantic, unsigned *semantic_name, unsigned *semantic_index); unsigned tgsi_get_generic_gl_varying_index(gl_varying_slot attr, bool needs_texcoord_semantic); +static inline enum pipe_shader_type +pipe_shader_type_from_mesa(gl_shader_stage stage) +{ + switch (stage) { + case MESA_SHADER_VERTEX: + return PIPE_SHADER_VERTEX; + case MESA_SHADER_TESS_CTRL: + return PIPE_SHADER_TESS_CTRL; + case MESA_SHADER_TESS_EVAL: + return PIPE_SHADER_TESS_EVAL; + case MESA_SHADER_GEOMETRY: + return PIPE_SHADER_GEOMETRY; + case MESA_SHADER_FRAGMENT: + return PIPE_SHADER_FRAGMENT; + case MESA_SHADER_COMPUTE: + return PIPE_SHADER_COMPUTE; + default: + unreachable("bad shader stage"); + } +} + #endif /* TGSI_FROM_MESA_H */ -- 2.9.3 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev