Mesa (master): i965: Clean up brwNewProgram().

Kenneth Graunke kwg at kemper.freedesktop.org
Wed Aug 23 18:55:26 UTC 2017


Module: Mesa
Branch: master
Commit: 348929015ba8166495195ccff4f9bb80d057b6d7
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=348929015ba8166495195ccff4f9bb80d057b6d7

Author: Kenneth Graunke <kenneth at whitecape.org>
Date:   Thu Aug 17 23:48:07 2017 -0700

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 <tapani.palli at intel.com>
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>

---

 src/mesa/drivers/dri/i965/brw_program.c | 33 +++++----------------------------
 1 file 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 94d8d8b978..257a99bc94 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,




More information about the mesa-commit mailing list