On 05/02/2017 10:46 AM, Marek Olšák wrote:
switch (shader->Stage) {
case MESA_SHADER_VERTEX:
stvp = (struct st_vertex_program *)prog;
stvp->glsl_to_tgsi = v;
break;
case MESA_SHADER_FRAGMENT:
stfp = (struct st_fragment_program *)prog;
stfp->glsl_to_tgsi = v;
break;
- case MESA_SHADER_GEOMETRY:
- stgp = (struct st_common_program *)prog;
- stgp->glsl_to_tgsi = v;
- break;
case MESA_SHADER_TESS_CTRL:
- sttcp = (struct st_common_program *)prog;
- sttcp->glsl_to_tgsi = v;
- break;
case MESA_SHADER_TESS_EVAL:
- sttep = (struct st_common_program *)prog;
- sttep->glsl_to_tgsi = v;
+ case MESA_SHADER_GEOMETRY:
+ stp = (struct st_common_program *)prog;
+ stp->glsl_to_tgsi = v;
break;
case MESA_SHADER_COMPUTE:
stcp = (struct st_compute_program *)prog;
stcp->glsl_to_tgsi = v;
break;
The TESS_CTRL, TESS_EVAL cases are no longer needed? Maybe there should be
a comment about that?
The cases are still there, just merged with GS.
Yes, sorry, I misread that one.
-Brian
default:
assert(!"should not be reached");
return NULL;
}
diff --git a/src/mesa/state_tracker/st_program.c
b/src/mesa/state_tracker/st_program.c
index 943b7d1..41ffac4 100644
--- a/src/mesa/state_tracker/st_program.c
+++ b/src/mesa/state_tracker/st_program.c
@@ -1898,30 +1898,25 @@ destroy_program_variants(struct st_context *st,
struct gl_program *target)
}
fpv = next;
}
}
break;
case GL_GEOMETRY_PROGRAM_NV:
case GL_TESS_CONTROL_PROGRAM_NV:
case GL_TESS_EVALUATION_PROGRAM_NV:
case GL_COMPUTE_PROGRAM_NV:
{
- struct st_common_program *gp = (struct
st_common_program*)target;
- struct st_common_program *tcp = (struct
st_common_program*)target;
- struct st_common_program *tep = (struct
st_common_program*)target;
+ struct st_common_program *p = (struct st_common_program*)target;
st_common_program() cast wrapper?
Yes. I'll also switch all the other manual typecasts to the helper.
Marek
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev