[Mesa-dev] [PATCH 11/92] tgsi_from_mesa: add pipe_shader_type_from_mesa

Samuel Pitoiset samuel.pitoiset at gmail.com
Tue Jun 27 08:41:51 UTC 2017


Reviewed-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>

On 06/26/2017 04:09 PM, Nicolai Hähnle wrote:
> From: Nicolai Hähnle <nicolai.haehnle at 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 */
> 


More information about the mesa-dev mailing list