[Mesa-dev] [PATCH 1/2] st/mesa: use enum types instead of int/unsigned
Eric Engestrom
eric.engestrom at imgtec.com
Tue Nov 7 10:36:37 UTC 2017
On Monday, 2017-11-06 14:00:30 -0700, Brian Paul wrote:
> Use the proper enum types for various variables. Makes life in gdb
> a little nicer.
> ---
> src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 7 ++++---
> src/mesa/state_tracker/st_glsl_to_tgsi_private.h | 6 +++---
> src/mesa/state_tracker/st_mesa_to_tgsi.c | 6 +++---
> src/mesa/state_tracker/st_mesa_to_tgsi.h | 7 ++++---
> 4 files changed, 14 insertions(+), 12 deletions(-)
>
> diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
> index 54e1961..2048b59 100644
> --- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
> +++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp
> @@ -179,10 +179,10 @@ public:
> int num_address_regs;
> uint32_t samplers_used;
> glsl_base_type sampler_types[PIPE_MAX_SAMPLERS];
> - int sampler_targets[PIPE_MAX_SAMPLERS]; /**< One of TGSI_TEXTURE_* */
> + enum tgsi_texture_type sampler_targets[PIPE_MAX_SAMPLERS];
> int images_used;
> int image_targets[PIPE_MAX_SHADER_IMAGES];
> - unsigned image_formats[PIPE_MAX_SHADER_IMAGES];
> + enum pipe_format image_formats[PIPE_MAX_SHADER_IMAGES];
> bool indirect_addr_consts;
> int wpos_transform_const;
>
> @@ -6489,7 +6489,8 @@ st_translate_program(
> /* texture samplers */
> for (i = 0; i < frag_const->MaxTextureImageUnits; i++) {
> if (program->samplers_used & (1u << i)) {
> - unsigned type = st_translate_texture_type(program->sampler_types[i]);
> + enum tgsi_return_type type =
> + st_translate_texture_type(program->sampler_types[i]);
>
> t->samplers[i] = ureg_DECL_sampler(ureg, i);
>
> diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi_private.h b/src/mesa/state_tracker/st_glsl_to_tgsi_private.h
> index d57525d..bdc7448 100644
> --- a/src/mesa/state_tracker/st_glsl_to_tgsi_private.h
> +++ b/src/mesa/state_tracker/st_glsl_to_tgsi_private.h
> @@ -127,13 +127,13 @@ public:
> unsigned is_64bit_expanded:1;
> unsigned sampler_base:5;
> unsigned sampler_array_size:6; /**< 1-based size of sampler array, 1 if not array */
> - unsigned tex_target:4; /**< One of TEXTURE_*_INDEX */
> + gl_texture_index tex_target:5;
This bump is an unrelated bug fix, which should be in its own commit
(before this patch) with:
Cc: Marek Olšák <marek.olsak at amd.com>
Fixes: dbf64ea28bb20bafe5a7d "glsl_to_tgsi: reduce the size of
glsl_to_tgsi_instruction using bitfields"
Reviewed-by: Eric Engestrom <eric.engestrom at imgtec.com>
> glsl_base_type tex_type:5;
> unsigned tex_shadow:1;
> - unsigned image_format:9;
> + enum pipe_format image_format:9;
> unsigned tex_offset_num_offset:3;
> unsigned dead_mask:4; /**< Used in dead code elimination */
> - unsigned buffer_access:3; /**< buffer access type */
> + unsigned buffer_access:3; /**< bitmask of TGSI_MEMORY_x bits */
>
> const struct tgsi_opcode_info *info;
> };
> diff --git a/src/mesa/state_tracker/st_mesa_to_tgsi.c b/src/mesa/state_tracker/st_mesa_to_tgsi.c
> index fa9fa44..8a61776 100644
> --- a/src/mesa/state_tracker/st_mesa_to_tgsi.c
> +++ b/src/mesa/state_tracker/st_mesa_to_tgsi.c
> @@ -166,8 +166,8 @@ src_register( struct st_translate *t,
> /**
> * Map mesa texture target to TGSI texture target.
> */
> -unsigned
> -st_translate_texture_target(GLuint textarget, GLboolean shadow)
> +enum tgsi_texture_type
> +st_translate_texture_target(gl_texture_index textarget, GLboolean shadow)
> {
> if (shadow) {
> switch (textarget) {
> @@ -225,7 +225,7 @@ st_translate_texture_target(GLuint textarget, GLboolean shadow)
> /**
> * Map GLSL base type to TGSI return type.
> */
> -unsigned
> +enum tgsi_return_type
> st_translate_texture_type(enum glsl_base_type type)
> {
> switch (type) {
> diff --git a/src/mesa/state_tracker/st_mesa_to_tgsi.h b/src/mesa/state_tracker/st_mesa_to_tgsi.h
> index 106cf85..06e8b70 100644
> --- a/src/mesa/state_tracker/st_mesa_to_tgsi.h
> +++ b/src/mesa/state_tracker/st_mesa_to_tgsi.h
> @@ -30,6 +30,7 @@
> #define ST_MESA_TO_TGSI_H
>
> #include "main/glheader.h"
> +#include "main/mtypes.h"
>
> #include "pipe/p_compiler.h"
> #include "pipe/p_defines.h"
> @@ -62,10 +63,10 @@ st_translate_mesa_program(
> const ubyte outputSemanticName[],
> const ubyte outputSemanticIndex[]);
>
> -unsigned
> -st_translate_texture_target(GLuint textarget, GLboolean shadow);
> +enum tgsi_texture_type
> +st_translate_texture_target(gl_texture_index textarget, GLboolean shadow);
>
> -unsigned
> +enum tgsi_return_type
> st_translate_texture_type(enum glsl_base_type type);
>
> #if defined __cplusplus
> --
> 1.9.1
>
More information about the mesa-dev
mailing list