i965/vs: Remove 'c'/vs_compile from vec4_vs_visitor.
At this point, the brw_vs_compile structure only contains the key and gl_vertex_program pointer. We may as well pass and store them directly; it's simpler and more convenient (key-> instead of vs_compile->key...). Signed-off-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
This commit is contained in:
@@ -1953,8 +1953,8 @@ brw_vs_emit(struct brw_context *brw,
|
||||
if (!assembly) {
|
||||
prog_data->base.dispatch_mode = DISPATCH_MODE_4X2_DUAL_OBJECT;
|
||||
|
||||
vec4_vs_visitor v(brw->intelScreen->compiler, brw,
|
||||
c, prog_data, prog, mem_ctx, st_index,
|
||||
vec4_vs_visitor v(brw->intelScreen->compiler, brw, &c->key, prog_data,
|
||||
&c->vp->program, prog, mem_ctx, st_index,
|
||||
!_mesa_is_gles3(&brw->ctx));
|
||||
if (!v.run(brw_select_clip_planes(&brw->ctx))) {
|
||||
if (prog) {
|
||||
|
||||
@@ -394,8 +394,7 @@ vec4_vs_visitor::emit_program_code()
|
||||
* pull constants. Do that now.
|
||||
*/
|
||||
if (this->need_all_constants_in_pull_buffer) {
|
||||
const struct gl_program_parameter_list *params =
|
||||
vs_compile->vp->program.Base.Parameters;
|
||||
const struct gl_program_parameter_list *params = vp->Base.Parameters;
|
||||
unsigned i;
|
||||
for (i = 0; i < params->NumParameters * 4; i++) {
|
||||
stage_prog_data->pull_param[i] =
|
||||
@@ -415,8 +414,7 @@ vec4_vs_visitor::setup_vp_regs()
|
||||
vp_temp_regs[i] = src_reg(this, glsl_type::vec4_type);
|
||||
|
||||
/* PROGRAM_STATE_VAR etc. */
|
||||
struct gl_program_parameter_list *plist =
|
||||
vs_compile->vp->program.Base.Parameters;
|
||||
struct gl_program_parameter_list *plist = vp->Base.Parameters;
|
||||
for (unsigned p = 0; p < plist->NumParameters; p++) {
|
||||
unsigned components = plist->Parameters[p].Size;
|
||||
|
||||
@@ -486,8 +484,7 @@ vec4_vs_visitor::get_vp_dst_reg(const prog_dst_register &dst)
|
||||
src_reg
|
||||
vec4_vs_visitor::get_vp_src_reg(const prog_src_register &src)
|
||||
{
|
||||
struct gl_program_parameter_list *plist =
|
||||
vs_compile->vp->program.Base.Parameters;
|
||||
struct gl_program_parameter_list *plist = vp->Base.Parameters;
|
||||
|
||||
src_reg result;
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ vec4_vs_visitor::emit_prolog()
|
||||
|
||||
for (int i = 0; i < VERT_ATTRIB_MAX; i++) {
|
||||
if (vs_prog_data->inputs_read & BITFIELD64_BIT(i)) {
|
||||
uint8_t wa_flags = vs_compile->key.gl_attrib_wa_flags[i];
|
||||
uint8_t wa_flags = key->gl_attrib_wa_flags[i];
|
||||
dst_reg reg(ATTR, i);
|
||||
dst_reg reg_d = reg;
|
||||
reg_d.type = BRW_REGISTER_TYPE_D;
|
||||
@@ -213,20 +213,21 @@ vec4_vs_visitor::emit_thread_end()
|
||||
|
||||
vec4_vs_visitor::vec4_vs_visitor(const struct brw_compiler *compiler,
|
||||
void *log_data,
|
||||
struct brw_vs_compile *vs_compile,
|
||||
const struct brw_vs_prog_key *key,
|
||||
struct brw_vs_prog_data *vs_prog_data,
|
||||
struct gl_vertex_program *vp,
|
||||
struct gl_shader_program *prog,
|
||||
void *mem_ctx,
|
||||
int shader_time_index,
|
||||
bool use_legacy_snorm_formula)
|
||||
: vec4_visitor(compiler, log_data,
|
||||
&vs_compile->vp->program.Base,
|
||||
&vs_compile->key.base, &vs_prog_data->base, prog,
|
||||
&vp->Base, &key->base, &vs_prog_data->base, prog,
|
||||
MESA_SHADER_VERTEX,
|
||||
mem_ctx, false /* no_spills */,
|
||||
shader_time_index),
|
||||
vs_compile(vs_compile),
|
||||
key(key),
|
||||
vs_prog_data(vs_prog_data),
|
||||
vp(vp),
|
||||
use_legacy_snorm_formula(use_legacy_snorm_formula)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -91,8 +91,9 @@ class vec4_vs_visitor : public vec4_visitor
|
||||
public:
|
||||
vec4_vs_visitor(const struct brw_compiler *compiler,
|
||||
void *log_data,
|
||||
struct brw_vs_compile *vs_compile,
|
||||
const struct brw_vs_prog_key *key,
|
||||
struct brw_vs_prog_data *vs_prog_data,
|
||||
struct gl_vertex_program *vp,
|
||||
struct gl_shader_program *prog,
|
||||
void *mem_ctx,
|
||||
int shader_time_index,
|
||||
@@ -113,8 +114,9 @@ private:
|
||||
dst_reg get_vp_dst_reg(const prog_dst_register &dst);
|
||||
src_reg get_vp_src_reg(const prog_src_register &src);
|
||||
|
||||
struct brw_vs_compile * const vs_compile;
|
||||
const struct brw_vs_prog_key *const key;
|
||||
struct brw_vs_prog_data * const vs_prog_data;
|
||||
struct gl_vertex_program *const vp;
|
||||
src_reg *vp_temp_regs;
|
||||
src_reg vp_addr_reg;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user