From: Kenneth Graunke Date: Sat, 1 Sep 2012 05:50:26 +0000 (-0700) Subject: i965: Don't use brw->fragment_program in the old brw_wm_pass2.c. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=456c7355e06c352e1ca9e79f6ef9cdaed66ddf9c;p=mesa.git i965: Don't use brw->fragment_program in the old brw_wm_pass2.c. According to Eric, this shouldn't matter since we don't do precompiles using the old backend. In other words, brw->fragment_program (the currently active program) should equal c->fp (the program currently being compiled). However, it's just not a good idea to access brw->fragment_program directly in compiler code. It's totally illegal in the new backend, so let's just not do it here either. Signed-off-by: Kenneth Graunke Reported-by: Paul Berry --- diff --git a/src/mesa/drivers/dri/i965/brw_wm_pass2.c b/src/mesa/drivers/dri/i965/brw_wm_pass2.c index 562a189251e..f20e0b700e7 100644 --- a/src/mesa/drivers/dri/i965/brw_wm_pass2.c +++ b/src/mesa/drivers/dri/i965/brw_wm_pass2.c @@ -86,7 +86,7 @@ static void init_registers( struct brw_wm_compile *c ) if (intel->gen >= 6) { for (unsigned int j = 0; j < FRAG_ATTRIB_MAX; j++) { - if (brw->fragment_program->Base.InputsRead & BITFIELD64_BIT(j)) { + if (c->fp->program.Base.InputsRead & BITFIELD64_BIT(j)) { nr_interp_regs++; prealloc_reg(c, &c->payload.input_interp[j], i++); }