Skip to content

v3d: better pipelining of varyings

Iago Toral requested to merge itoral/mesa:v3d_ldvary_pipelining into master

This series turns code like this:

    nop                  ; nop               ; ldvary.r4
    nop                  ; fmul  r0, r4, rf0
    fadd  rf13, r0, r5   ; nop               ; ldvary.r1
    nop                  ; fmul  r2, r1, rf0
    fadd  rf12, r2, r5   ; nop               ; ldvary.r3
    nop                  ; fmul  r4, r3, rf0
    fadd  rf11, r4, r5   ; nop               ; ldvary.r0

Into:

    nop                  ; nop               ; ldvary.r4
    nop                  ; fmul  r0, r4, rf0 ; ldvary.r1
    fadd  rf13, r0, r5   ; fmul  r2, r1, rf0 ; ldvary.r3
    fadd  rf12, r2, r5   ; fmul  r4, r3, rf0 ; ldvary.r0

EDIT: included one additional patch that handles pipelining for non-smooth varyings as well.

Edited by Iago Toral

Merge request reports