On Sunday, March 08, 2015 01:32:33 PM Matt Turner wrote: > On Sun, Mar 8, 2015 at 1:08 AM, Kenneth Graunke <kenn...@whitecape.org> wrote: > > These computations don't have anything to do with the currently > > executing channels, so they should use force_writemask_all. > > > > This fixes assert failures. > > > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=86974 > > Signed-off-by: Kenneth Graunke <kenn...@whitecape.org> > > Cc: mesa-sta...@lists.freedesktop.org > > --- > > src/mesa/drivers/dri/i965/brw_fs.cpp | 9 +++++++-- > > 1 file changed, 7 insertions(+), 2 deletions(-) > > > > diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp > > b/src/mesa/drivers/dri/i965/brw_fs.cpp > > index d6acc23..45a5793 100644 > > --- a/src/mesa/drivers/dri/i965/brw_fs.cpp > > +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp > > @@ -759,18 +759,23 @@ fs_visitor::emit_shader_time_end() > > reset.set_smear(2); > > fs_inst *test = emit(AND(reg_null_d, reset, fs_reg(1u))); > > test->conditional_mod = BRW_CONDITIONAL_Z; > > + test->force_writemask_all = true; > > emit(IF(BRW_PREDICATE_NORMAL)); > > > > fs_reg start = shader_start_time; > > start.negate = true; > > fs_reg diff = fs_reg(GRF, alloc.allocate(1), BRW_REGISTER_TYPE_UD, 1); > > - emit(ADD(diff, start, shader_end_time)); > > + fs_inst *add = ADD(diff, start, shader_end_time); > > + add->force_writemask_all = true; > > + emit(add); > > Emit returns a pointer to the instruction it emitted, so you can cut > one line by wrapping the ADD with emit(). > > Either way's fine.
Yeah, I didn't bother because patch 5 changes it to: end->insert_before(add) and that doesn't return a pointer to the inserted instruction.
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev