summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2017-08-17 23:48:07 -0700
committerKenneth Graunke <[email protected]>2017-08-23 11:55:17 -0700
commit348929015ba8166495195ccff4f9bb80d057b6d7 (patch)
tree4c36c4895c2195628dbdd685efd65718d76b9085
parent5ff97f2644d7438a9fdc75a2a9bc850c7ce96783 (diff)
i965: Clean up brwNewProgram().
All shader stages do the exact same thing, so we don't need the switch statement, or the redundant FS case. I believe these used to be different before Tim eliminated the (e.g.) brw_vertex_program subclasses. Reviewed-by: Tapani Pälli <[email protected]> Reviewed-by: Timothy Arceri <[email protected]>
-rw-r--r--src/mesa/drivers/dri/i965/brw_program.c33
1 files changed, 5 insertions, 28 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_program.c b/src/mesa/drivers/dri/i965/brw_program.c
index 94d8d8b978a..257a99bc946 100644
--- a/src/mesa/drivers/dri/i965/brw_program.c
+++ b/src/mesa/drivers/dri/i965/brw_program.c
@@ -138,38 +138,15 @@ static struct gl_program *brwNewProgram(struct gl_context *ctx, GLenum target,
GLuint id, bool is_arb_asm)
{
struct brw_context *brw = brw_context(ctx);
+ struct brw_program *prog = rzalloc(NULL, struct brw_program);
- switch (target) {
- case GL_VERTEX_PROGRAM_ARB:
- case GL_TESS_CONTROL_PROGRAM_NV:
- case GL_TESS_EVALUATION_PROGRAM_NV:
- case GL_GEOMETRY_PROGRAM_NV:
- case GL_COMPUTE_PROGRAM_NV: {
- struct brw_program *prog = rzalloc(NULL, struct brw_program);
- if (prog) {
- prog->id = get_new_program_id(brw->screen);
-
- return _mesa_init_gl_program(&prog->program, target, id, is_arb_asm);
- }
- else
- return NULL;
- }
-
- case GL_FRAGMENT_PROGRAM_ARB: {
- struct brw_program *prog = rzalloc(NULL, struct brw_program);
+ if (prog) {
+ prog->id = get_new_program_id(brw->screen);
- if (prog) {
- prog->id = get_new_program_id(brw->screen);
-
- return _mesa_init_gl_program(&prog->program, target, id, is_arb_asm);
- }
- else
- return NULL;
+ return _mesa_init_gl_program(&prog->program, target, id, is_arb_asm);
}
- default:
- unreachable("Unsupported target in brwNewProgram()");
- }
+ return NULL;
}
static void brwDeleteProgram( struct gl_context *ctx,