[Mesa-dev] [PATCH] draw: remove some dead constant buffer code

Brian Paul brianp at vmware.com
Wed Dec 5 16:21:31 PST 2012


Remove the draw_vs_set_constants() and draw_gs_set_constants()
functions and the draw->vs.aligned_constants,
draw->vs.aligned_constant_storage and draw->vs.const_storage_size
fields.  None of it was used.
---
 src/gallium/auxiliary/draw/draw_context.c |    2 -
 src/gallium/auxiliary/draw/draw_gs.c      |   13 --------
 src/gallium/auxiliary/draw/draw_private.h |   18 ----------
 src/gallium/auxiliary/draw/draw_vs.c      |   49 -----------------------------
 4 files changed, 0 insertions(+), 82 deletions(-)

diff --git a/src/gallium/auxiliary/draw/draw_context.c b/src/gallium/auxiliary/draw/draw_context.c
index 6980631..c231aba 100644
--- a/src/gallium/auxiliary/draw/draw_context.c
+++ b/src/gallium/auxiliary/draw/draw_context.c
@@ -372,12 +372,10 @@ draw_set_mapped_constant_buffer(struct draw_context *draw,
    case PIPE_SHADER_VERTEX:
       draw->pt.user.vs_constants[slot] = buffer;
       draw->pt.user.vs_constants_size[slot] = size;
-      draw_vs_set_constants(draw, slot, buffer, size);
       break;
    case PIPE_SHADER_GEOMETRY:
       draw->pt.user.gs_constants[slot] = buffer;
       draw->pt.user.gs_constants_size[slot] = size;
-      draw_gs_set_constants(draw, slot, buffer, size);
       break;
    default:
       assert(0 && "invalid shader type in draw_set_mapped_constant_buffer");
diff --git a/src/gallium/auxiliary/draw/draw_gs.c b/src/gallium/auxiliary/draw/draw_gs.c
index 3b3ff21..5c55523 100644
--- a/src/gallium/auxiliary/draw/draw_gs.c
+++ b/src/gallium/auxiliary/draw/draw_gs.c
@@ -69,19 +69,6 @@ void draw_gs_destroy( struct draw_context *draw )
    tgsi_exec_machine_destroy(draw->gs.tgsi.machine);
 }
 
-void
-draw_gs_set_constants(struct draw_context *draw,
-                      unsigned slot,
-                      const void *constants,
-                      unsigned size)
-{
-   /* noop. added here for symmetry with the VS
-    * code and in case we'll ever want to allign
-    * the constants, e.g. when we'll change to a
-    * different interpreter */
-}
-
-
 struct draw_geometry_shader *
 draw_create_geometry_shader(struct draw_context *draw,
                             const struct pipe_shader_state *state)
diff --git a/src/gallium/auxiliary/draw/draw_private.h b/src/gallium/auxiliary/draw/draw_private.h
index 5c497c6..86ce397 100644
--- a/src/gallium/auxiliary/draw/draw_private.h
+++ b/src/gallium/auxiliary/draw/draw_private.h
@@ -250,12 +250,6 @@ struct draw_context
          uint num_samplers;
       } tgsi;
 
-      const void *aligned_constants[PIPE_MAX_CONSTANT_BUFFERS];
-
-      const void *aligned_constant_storage[PIPE_MAX_CONSTANT_BUFFERS];
-      unsigned const_storage_size[PIPE_MAX_CONSTANT_BUFFERS];
-
-
       struct translate *fetch;
       struct translate_cache *fetch_cache;
       struct translate *emit;
@@ -369,24 +363,12 @@ void draw_vs_destroy( struct draw_context *draw );
 void draw_vs_set_viewport( struct draw_context *, 
                            const struct pipe_viewport_state * );
 
-void
-draw_vs_set_constants(struct draw_context *,
-                      unsigned slot,
-                      const void *constants,
-                      unsigned size);
-
-
 
 /*******************************************************************************
  * Geometry shading code:
  */
 boolean draw_gs_init( struct draw_context *draw );
 
-void
-draw_gs_set_constants(struct draw_context *,
-                      unsigned slot,
-                      const void *constants,
-                      unsigned size);
 
 void draw_gs_destroy( struct draw_context *draw );
 
diff --git a/src/gallium/auxiliary/draw/draw_vs.c b/src/gallium/auxiliary/draw/draw_vs.c
index 0aea2f2..785a903 100644
--- a/src/gallium/auxiliary/draw/draw_vs.c
+++ b/src/gallium/auxiliary/draw/draw_vs.c
@@ -49,47 +49,6 @@
 DEBUG_GET_ONCE_BOOL_OPTION(gallium_dump_vs, "GALLIUM_DUMP_VS", FALSE)
 
 
-/**
- * Set a vertex shader constant buffer.
- * \param slot  which constant buffer in [0, PIPE_MAX_CONSTANT_BUFFERS-1]
- * \param constants  the mapped buffer
- * \param size  size of buffer in bytes
- */
-void
-draw_vs_set_constants(struct draw_context *draw,
-                      unsigned slot,
-                      const void *constants,
-                      unsigned size)
-{
-   const int alignment = 16;
-
-   /* check if buffer is 16-byte aligned */
-   if (((uintptr_t)constants) & (alignment - 1)) {
-      /* if not, copy the constants into a new, 16-byte aligned buffer */
-      if (size > draw->vs.const_storage_size[slot]) {
-         if (draw->vs.aligned_constant_storage[slot]) {
-            align_free((void *)draw->vs.aligned_constant_storage[slot]);
-            draw->vs.const_storage_size[slot] = 0;
-         }
-         draw->vs.aligned_constant_storage[slot] =
-            align_malloc(size, alignment);
-         if (draw->vs.aligned_constant_storage[slot]) {
-            draw->vs.const_storage_size[slot] = size;
-         }
-      }
-      assert(constants);
-      if (draw->vs.aligned_constant_storage[slot]) {
-         memcpy((void *)draw->vs.aligned_constant_storage[slot],
-                constants,
-                size);
-      }
-      constants = draw->vs.aligned_constant_storage[slot];
-   }
-
-   draw->vs.aligned_constants[slot] = constants;
-}
-
-
 void draw_vs_set_viewport( struct draw_context *draw,
                            const struct pipe_viewport_state *viewport )
 {
@@ -211,20 +170,12 @@ draw_vs_init( struct draw_context *draw )
 void
 draw_vs_destroy( struct draw_context *draw )
 {
-   uint i;
-
    if (draw->vs.fetch_cache)
       translate_cache_destroy(draw->vs.fetch_cache);
 
    if (draw->vs.emit_cache)
       translate_cache_destroy(draw->vs.emit_cache);
 
-   for (i = 0; i < PIPE_MAX_CONSTANT_BUFFERS; i++) {
-      if (draw->vs.aligned_constant_storage[i]) {
-         align_free((void *)draw->vs.aligned_constant_storage[i]);
-      }
-   }
-
    tgsi_exec_machine_destroy(draw->vs.tgsi.machine);
 }
 
-- 
1.7.3.4



More information about the mesa-dev mailing list