diff options
Diffstat (limited to 'src/gallium/auxiliary/draw')
-rw-r--r-- | src/gallium/auxiliary/draw/draw_context.c | 2 | ||||
-rw-r--r-- | src/gallium/auxiliary/draw/draw_gs.c | 13 | ||||
-rw-r--r-- | src/gallium/auxiliary/draw/draw_private.h | 18 | ||||
-rw-r--r-- | 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 6980631b365..c231aba1963 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 3b3ff21c6f7..5c5552394e8 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 5c497c64718..86ce3975e52 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 0aea2f23a9e..785a9032fdf 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); } |