[Mesa-dev] [PATCH 28/37] i965/gen6/gs: implement transform feedback support in gen6_gs_visitor

Jordan Justen jljusten at gmail.com
Fri Sep 19 00:26:15 PDT 2014


On Thu, Sep 18, 2014 at 11:50 PM, Samuel Iglesias Gonsálvez
<siglesias at igalia.com> wrote:
> On Thu, 2014-09-18 at 16:05 -0700, Jordan Justen wrote:
>> On Thu, Aug 14, 2014 at 4:12 AM, Iago Toral Quiroga <itoral at igalia.com> wrote:
>> > From: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
>> >
>> > +      this->xfb_output = src_reg(this,
>> > +                                 glsl_type::uint_type,
>> > +                                 linked_xfb_info->NumOutputs *
>> > +                                 c->gp->program.VerticesOut);
>> > +      this->xfb_output_offset = src_reg(this, glsl_type::uint_type);
>> > +      emit(MOV(dst_reg(this->xfb_output_offset), src_reg(0u)));
>> > +      /* Create a virtual register to hold destination indices in SOL */
>> > +      this->destination_indices = src_reg(this, glsl_type::uvec4_type);
>> > +      /* Create a virtual register to hold temporal values in SOL */
>> > +      this->sol_temp = src_reg(this, glsl_type::uvec4_type);
>>
>> What is the duration of liveness for sol_temp?
>>
>> Would it be better to generate a new temp in each function to help out
>> register allocation?
>>
>
> Yes, it is better. I have made this change: create a new temp virtual
> register in every place it is needed (emit_thread_end(), xfb_write(),
> xfb_program()).

Cool. Add Reviewed-by: Jordan Justen <jordan.l.justen at intel.com> for
this patch, and:
 i965/gen6/gs: Avoid buffering transform feedback varyings twice.
 i965/gen6/gs: Fix binding table clash between TF surfaces and textures.
 i965/gen6/gs: Enable transform feedback support in geometry shaders
 i965/gen6/gs: upload ubo and pull constants surfaces.
 i965/gen6/gs: Use a specific implementation of geometry shaders for gen6.
 i965/gen6: enable GLSL 1.50 and OpenGL 3.2

That is the rest of the series, right?

Thank you both for all the great work on this series!

-Jordan


More information about the mesa-dev mailing list