On 20 December 2013 06:38, Topi Pohjolainen <topi.pohjolai...@intel.com>wrote:
> diff --git a/src/mesa/drivers/dri/i965/brw_blorp_blit_eu.cpp > b/src/mesa/drivers/dri/i965/brw_blorp_blit_eu.cpp > index b189aa2..dcfd82b 100644 > --- a/src/mesa/drivers/dri/i965/brw_blorp_blit_eu.cpp > +++ b/src/mesa/drivers/dri/i965/brw_blorp_blit_eu.cpp > @@ -148,3 +148,15 @@ brw_blorp_eu_emitter::emit_render_target_write(const > struct brw_reg &src0, > true /* eot */, > use_header); > } > + > +void > +brw_blorp_eu_emitter::emit_combine(unsigned texture_data_type, > + const struct brw_reg &dst, > + const struct brw_reg &src_1, > + const struct brw_reg &src_2) > +{ > + if (texture_data_type == BRW_REGISTER_TYPE_F) > + brw_ADD(&func, dst, src_1, src_2); > + else > + brw_AVG(&func, dst, src_1, src_2); > +} > It's a bit of an awkward split to have most of the algorithm for combining samples in brw_blorp_blit_program::manual_blend_average(), but the choice of whether to use ADD or AVG is here in brw_blorp_eu_emitter::emit_combine(). How about if we replace texture_data_type with a bool called "combine_using_add"? That way someone reading manual_blend_average() won't have to refer to emit_combine() to understand what the algorithm does; and similarly someone reading emt_combine() won't have to look at manual_blend_average() to understand why we use ADD for floats and AVG for ints. With that change, this patch is: Reviewed-by: Paul Berry <stereotype...@gmail.com>
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev