[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