I sent one other tiny nit on patch 7. With or without that, the series is Reviewed-by: Ian Romanick <ian.d.roman...@intel.com>
On 01/17/2018 09:08 AM, Ian Romanick wrote: > Should probably also change the assert(0) to unreachable(). It's > possible that will help the compiler generate slightly better code in > release builds. > > On 01/16/2018 09:17 PM, Brian Paul wrote: >> Both switch cases began with the same code. >> --- >> src/mesa/vbo/vbo_exec_draw.c | 15 ++++++--------- >> src/mesa/vbo/vbo_save_draw.c | 15 ++++++--------- >> 2 files changed, 12 insertions(+), 18 deletions(-) >> >> diff --git a/src/mesa/vbo/vbo_exec_draw.c b/src/mesa/vbo/vbo_exec_draw.c >> index 34cb4ff..de17322 100644 >> --- a/src/mesa/vbo/vbo_exec_draw.c >> +++ b/src/mesa/vbo/vbo_exec_draw.c >> @@ -180,14 +180,14 @@ vbo_exec_bind_arrays( struct gl_context *ctx ) >> GLbitfield varying_inputs = 0x0; >> bool swap_pos = false; >> >> - /* Install the default (ie Current) attributes first, then overlay >> - * all active ones. >> - */ >> + /* Install the default (ie Current) attributes first */ >> + for (attr = 0; attr < VERT_ATTRIB_FF_MAX; attr++) { >> + exec->vtx.inputs[attr] = &vbo->currval[VBO_ATTRIB_POS+attr]; >> + } >> + >> + /* Overlay other active attributes */ >> switch (get_program_mode(exec->ctx)) { >> case VP_NONE: >> - for (attr = 0; attr < VERT_ATTRIB_FF_MAX; attr++) { >> - exec->vtx.inputs[attr] = &vbo->currval[VBO_ATTRIB_POS+attr]; >> - } >> for (attr = 0; attr < MAT_ATTRIB_MAX; attr++) { >> assert(VERT_ATTRIB_GENERIC(attr) < ARRAY_SIZE(exec->vtx.inputs)); >> exec->vtx.inputs[VERT_ATTRIB_GENERIC(attr)] = >> @@ -196,9 +196,6 @@ vbo_exec_bind_arrays( struct gl_context *ctx ) >> map = vbo->map_vp_none; >> break; >> case VP_ARB: >> - for (attr = 0; attr < VERT_ATTRIB_FF_MAX; attr++) { >> - exec->vtx.inputs[attr] = &vbo->currval[VBO_ATTRIB_POS+attr]; >> - } >> for (attr = 0; attr < VERT_ATTRIB_GENERIC_MAX; attr++) { >> assert(VERT_ATTRIB_GENERIC(attr) < ARRAY_SIZE(exec->vtx.inputs)); >> exec->vtx.inputs[VERT_ATTRIB_GENERIC(attr)] = >> diff --git a/src/mesa/vbo/vbo_save_draw.c b/src/mesa/vbo/vbo_save_draw.c >> index b63a9a8..4101022 100644 >> --- a/src/mesa/vbo/vbo_save_draw.c >> +++ b/src/mesa/vbo/vbo_save_draw.c >> @@ -158,14 +158,14 @@ bind_vertex_list(struct gl_context *ctx, >> buffer_offset = 0; >> } >> >> - /* Install the default (ie Current) attributes first, then overlay >> - * all active ones. >> - */ >> + /* Install the default (ie Current) attributes first */ >> + for (attr = 0; attr < VERT_ATTRIB_FF_MAX; attr++) { >> + save->inputs[attr] = &vbo->currval[VBO_ATTRIB_POS+attr]; >> + } >> + >> + /* Overlay other active attributes */ >> switch (get_program_mode(ctx)) { >> case VP_NONE: >> - for (attr = 0; attr < VERT_ATTRIB_FF_MAX; attr++) { >> - save->inputs[attr] = &vbo->currval[VBO_ATTRIB_POS+attr]; >> - } >> for (attr = 0; attr < MAT_ATTRIB_MAX; attr++) { >> save->inputs[VERT_ATTRIB_GENERIC(attr)] = >> &vbo->currval[VBO_ATTRIB_MAT_FRONT_AMBIENT+attr]; >> @@ -173,9 +173,6 @@ bind_vertex_list(struct gl_context *ctx, >> map = vbo->map_vp_none; >> break; >> case VP_ARB: >> - for (attr = 0; attr < VERT_ATTRIB_FF_MAX; attr++) { >> - save->inputs[attr] = &vbo->currval[VBO_ATTRIB_POS+attr]; >> - } >> for (attr = 0; attr < VERT_ATTRIB_GENERIC_MAX; attr++) { >> save->inputs[VERT_ATTRIB_GENERIC(attr)] = >> &vbo->currval[VBO_ATTRIB_GENERIC0+attr]; >> > > _______________________________________________ > mesa-dev mailing list > mesa-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/mesa-dev > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev