BTW, I abandoned the previous patches that generated the VS position from VertexID. The reason was that I saw a decrease in performance on Raven when I changed to viewport transformation to non-identity. This series is much better anyway.
Marek On Fri, Oct 6, 2017 at 4:10 PM, Marek Olšák <mar...@gmail.com> wrote: > Hi, > > There are 3 states that blits don't have to use or touch: > - vertex buffers (also no buffer upload is needed) > - vertex element state > - viewport state > > The blit implementation is reworked as follows. > > VS blit shaders read inputs from user SGPRs and return positions in > window space. (clipping and viewport transformation are disabled) > > User SGPRs occupy existing SGPR slots starting with the first > per-stage pointer (const buffers). Depending on the type of blit, > there can be 3, 7, or 9 SGPRs per blit. > > The x1,y1,x2,y2 position coordinates are passed as sint16 in 2 SGPRs. > The 3rd one is Z as float. Followed by clear color (4 SGPRs) or > texcoords (6 SGPRs - x1,y1,x2,y2,z,w). > > Original shader pointers and draw constants are restored by the first > non-blit draw call. > > Please review. > > Marek _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev