diff options
author | Nicolai Hähnle <[email protected]> | 2017-05-17 18:09:03 +0200 |
---|---|---|
committer | Nicolai Hähnle <[email protected]> | 2017-07-05 12:27:11 +0200 |
commit | fb1c4e3d4764f64a1a5e2f84bc1d825bb392a847 (patch) | |
tree | c0d91e9009f9b6409a27f68c45cd1591a6af4d18 /src/gallium | |
parent | 497b95fdf641eb5e52de1a6a51d251ee2b3bdb2d (diff) |
tgsi_from_mesa: add pipe_shader_type_from_mesa
So... the pipe_ prefix doesn't really fit into a TGSI header; on the
other hand, the return type has the pipe_ prefix.
Reviewed-by: Samuel Pitoiset <[email protected]>
Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/auxiliary/tgsi/tgsi_from_mesa.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/tgsi/tgsi_from_mesa.h b/src/gallium/auxiliary/tgsi/tgsi_from_mesa.h index 4c708f4e59f..d0f211e31e0 100644 --- a/src/gallium/auxiliary/tgsi/tgsi_from_mesa.h +++ b/src/gallium/auxiliary/tgsi/tgsi_from_mesa.h @@ -26,6 +26,8 @@ #include <stdbool.h> +#include "pipe/p_compiler.h" +#include "pipe/p_defines.h" #include "pipe/p_shader_tokens.h" #include "compiler/shader_enums.h" @@ -40,4 +42,25 @@ 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 */ |