Patch is: Reviewed-by: Eduardo Lima Mitev <el...@igalia.com>
On 12/10/2015 05:23 AM, Jason Ekstrand wrote: > It's not really doing enough anymore to justify a helper function. > --- > src/mesa/drivers/dri/i965/brw_vec4.h | 2 -- > src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 37 > ++++++++++---------------- > 2 files changed, 14 insertions(+), 25 deletions(-) > > diff --git a/src/mesa/drivers/dri/i965/brw_vec4.h > b/src/mesa/drivers/dri/i965/brw_vec4.h > index ae5bf69..f2e5ce1 100644 > --- a/src/mesa/drivers/dri/i965/brw_vec4.h > +++ b/src/mesa/drivers/dri/i965/brw_vec4.h > @@ -284,8 +284,6 @@ public: > > src_reg get_scratch_offset(bblock_t *block, vec4_instruction *inst, > src_reg *reladdr, int reg_offset); > - src_reg get_pull_constant_offset(bblock_t *block, vec4_instruction *inst, > - src_reg *reladdr, int reg_offset); > void emit_scratch_read(bblock_t *block, vec4_instruction *inst, > dst_reg dst, > src_reg orig_src, > diff --git a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp > b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp > index 443d0eb..7712d34 100644 > --- a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp > +++ b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp > @@ -1464,27 +1464,6 @@ vec4_visitor::get_scratch_offset(bblock_t *block, > vec4_instruction *inst, > } > } > > -src_reg > -vec4_visitor::get_pull_constant_offset(bblock_t * block, vec4_instruction > *inst, > - src_reg *reladdr, int reg_offset) > -{ > - if (reladdr) { > - src_reg index = src_reg(this, glsl_type::int_type); > - > - emit_before(block, inst, ADD(dst_reg(index), *reladdr, > - brw_imm_d(reg_offset * 16))); > - > - return index; > - } else if (devinfo->gen >= 8) { > - /* Store the offset in a GRF so we can send-from-GRF. */ > - src_reg offset = src_reg(this, glsl_type::int_type); > - emit_before(block, inst, MOV(dst_reg(offset), brw_imm_d(reg_offset * > 16))); > - return offset; > - } else { > - return brw_imm_d(reg_offset * 16); > - } > -} > - > /** > * Emits an instruction before @inst to load the value named by @orig_src > * from scratch space at @base_offset to @temp. > @@ -1666,8 +1645,20 @@ vec4_visitor::emit_pull_constant_load(bblock_t *block, > vec4_instruction *inst, > { > int reg_offset = base_offset + orig_src.reg_offset; > const unsigned index = prog_data->base.binding_table.pull_constants_start; > - src_reg offset = get_pull_constant_offset(block, inst, orig_src.reladdr, > - reg_offset); > + > + src_reg offset; > + if (orig_src.reladdr) { > + offset = src_reg(this, glsl_type::int_type); > + > + emit_before(block, inst, ADD(dst_reg(offset), *orig_src.reladdr, > + brw_imm_d(reg_offset * 16))); > + } else if (devinfo->gen >= 8) { > + /* Store the offset in a GRF so we can send-from-GRF. */ > + offset = src_reg(this, glsl_type::int_type); > + emit_before(block, inst, MOV(dst_reg(offset), brw_imm_d(reg_offset * > 16))); > + } else { > + offset = brw_imm_d(reg_offset * 16); > + } > > emit_pull_constant_load_reg(temp, > brw_imm_ud(index), > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev