On Mon, Jun 30, 2014 at 3:14 PM, Matt Turner <matts...@gmail.com> wrote:
> On Fri, Jun 27, 2014 at 12:00 PM, Kristian Høgsberg <k...@bitplanet.net> 
> wrote:
>> From: Kristian Høgsberg <krh@century-sparrow.local>
>
> With your email address fixed,

Done, thanks for the review.  I realized that this also applies to MRT
shaders where we write the same value to two render targets.  From
piglits fbo-drawbuffers2-blend:

0x00000000: pln(8)          g6<1>F          g4<0,1,0>F      g2<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000008: pln(8)          g7<1>F          g4.4<0,1,0>F    g2<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000010: pln(8)          g8<1>F          g5.4<0,1,0>F    g2<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000018: math inv(8)     g2<1>F          g8<8,8,1>F      null
     { align1 WE_normal 1Q compacted };
0x00000020: mul(8)          g3<1>F          g6<8,8,1>F      g2<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000028: mul(8)          g4<1>F          g7<8,8,1>F      g2<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000030: send(8)         g2<1>UW         g3<8,8,1>F
                            sampler (1, 0, 0, 1) mlen 2 rlen 4
     { align1 WE_normal 1Q };
0x00000040: mov(8)          g113<1>F        g2<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000048: mov(8)          g114<1>F        g3<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000050: mov(8)          g115<1>F        g4<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000058: mov(8)          g116<1>F        g5<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000060: sendc(8)        null            g113<8,8,1>F
                            render RT write SIMD8 LastRT Surface = 0
mlen 4 rlen 0 { align1 WE_normal 1Q EOT };

becomes:

0x00000000: pln(8)          g6<1>F          g4<0,1,0>F      g2<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000008: pln(8)          g8<1>F          g4.4<0,1,0>F    g2<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000010: pln(8)          g9<1>F          g5.4<0,1,0>F    g2<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000018: math inv(8)     g7<1>F          g9<8,8,1>F      null
     { align1 WE_normal 1Q compacted };
0x00000020: mul(8)          g2<1>F          g6<8,8,1>F      g7<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000028: mul(8)          g3<1>F          g8<8,8,1>F      g7<8,8,1>F
     { align1 WE_normal 1Q compacted };
0x00000030: send(8)         g113<1>UW       g2<8,8,1>F
                            sampler (1, 0, 0, 1) mlen 2 rlen 4
     { align1 WE_normal 1Q };
0x00000040: sendc(8)        null            g113<8,8,1>F
                            render RT write SIMD8 LastRT Surface = 0
mlen 4 rlen 0 { align1 WE_normal 1Q EOT };

which is lovely.

Kristian

> Reviewed-by: Matt Turner <matts...@gmail.com>
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to