Remove redundant instructions from fixed pipelines, looks like they do not do anythin...
authorVladimir Dergachev <volodya@freedesktop.org>
Thu, 3 Feb 2005 04:16:59 +0000 (04:16 +0000)
committerVladimir Dergachev <volodya@freedesktop.org>
Thu, 3 Feb 2005 04:16:59 +0000 (04:16 +0000)
src/mesa/drivers/dri/r300/pixel_shader.h
src/mesa/drivers/dri/r300/r300_fixed_pipelines.h

index 07c844973402130611c507fe03a7eab60c8cdf61..0d04859f9b8ca1c225efd684b70e8b7ea360a6b9 100644 (file)
 #define EASY_PFS_INSTR3(dstc, src0, src1, src2, flag) \
        MAKE_PFS_INSTR3(dstc, src0, src1, src2, PFS_FLAG_##flag)
 
+       /* What are 0's ORed with flags ? They are register numbers that
+          just happen to be 0 */
+#define PFS_NOP        { \
+               EASY_PFS_INSTR0(MAD, SRC0C_XYZ, ONE, ZERO), \
+               EASY_PFS_INSTR1(0, 0, 0 | PFS_FLAG_CONST, 0 | PFS_FLAG_CONST, NONE, ALL), \
+               EASY_PFS_INSTR2(MAD, SRC0A, ONE, ZERO), \
+               EASY_PFS_INSTR3(0, 0, 0 | PFS_FLAG_CONST, 0 | PFS_FLAG_CONST, OUTPUT) \
+               } 
+       
 #endif
index 55d7bd9e8c9890713035d79521c6a8b300ff292d..0b74ed82e232e6e322cdf182e3a74454d5ebce63 100644 (file)
@@ -98,25 +98,7 @@ static struct r300_pixel_shader_state FLAT_COLOR_PIXEL_SHADER={
                                length: 0
                                },
                        alu: {
-                               length: 2,
-                               inst: { 
-                                       /* What are 0's ORed with flags ? They are register numbers that
-                                          just happen to be 0 */
-                                       {
-                                       EASY_PFS_INSTR0(MAD, SRC0C_XYZ, ONE, ZERO), 
-                                       EASY_PFS_INSTR1(0, 0, 0 | PFS_FLAG_CONST, 0 | PFS_FLAG_CONST, NONE, ALL),
-                                       EASY_PFS_INSTR2(MAD, SRC0A, ONE, ZERO),
-                                       EASY_PFS_INSTR3(0, 0, 0 | PFS_FLAG_CONST, 0 | PFS_FLAG_CONST, OUTPUT)
-                                       },
-                                       
-                                       {
-                                       EASY_PFS_INSTR0(MAD, SRC0C_XYZ, ONE, ZERO), 
-                                       EASY_PFS_INSTR1(0, 0, 0 | PFS_FLAG_CONST, 0 | PFS_FLAG_CONST, NONE, ALL),
-                                       EASY_PFS_INSTR2(MAD, SRC0A, ONE, ZERO),
-                                       EASY_PFS_INSTR3(0, 0, 0 | PFS_FLAG_CONST, 0 | PFS_FLAG_CONST, OUTPUT)
-                                       }
-                                       
-                                       }
+                               length: 0,
                                },
                        node: {
                                { 0, 0, 0, 0},
@@ -247,17 +229,11 @@ static struct r300_pixel_shader_state SINGLE_TEXTURE_PIXEL_SHADER={
                                inst: { 0x00018000 }
                                },
                        alu: {
-                               length: 3,
-                               inst: { 
+                               length: 1,
+                               inst:   
+                                       { 
                                        /* What are 0's ORed with flags ? They are register numbers that
                                           just happen to be 0 */
-                                       {
-                                       EASY_PFS_INSTR0(MAD, SRC0C_XYZ, ONE, ZERO), 
-                                       EASY_PFS_INSTR1(0, 0, 0 | PFS_FLAG_CONST, 0 | PFS_FLAG_CONST, NONE, ALL),
-                                       EASY_PFS_INSTR2(MAD, SRC0A, ONE, ZERO),
-                                       EASY_PFS_INSTR3(0, 0, 0 | PFS_FLAG_CONST, 0 | PFS_FLAG_CONST, OUTPUT)
-                                       },
-                                       
                                        {
                                        EASY_PFS_INSTR0(MAD, SRC0C_XYZ, SRC1C_XYZ, ZERO), 
                                        EASY_PFS_INSTR1(0, 0, 1, 0 | PFS_FLAG_CONST, NONE, ALL), 
@@ -271,13 +247,6 @@ static struct r300_pixel_shader_state SINGLE_TEXTURE_PIXEL_SHADER={
                                        /* alpha in textures */
                                        EASY_PFS_INSTR2(MAD, SRC0A, SRC1A, ZERO), 
                                        EASY_PFS_INSTR3(0, 0, 1, 0 | PFS_FLAG_CONST, OUTPUT)
-                                       },
-                                       
-                                       {
-                                       EASY_PFS_INSTR0(MAD, SRC0C_XYZ, ONE, ZERO), 
-                                       EASY_PFS_INSTR1(0, 0, 0 | PFS_FLAG_CONST, 0 | PFS_FLAG_CONST, NONE, ALL),
-                                       EASY_PFS_INSTR2(MAD, SRC0A, ONE, ZERO),
-                                       EASY_PFS_INSTR3(0, 0, 0 | PFS_FLAG_CONST, 0 | PFS_FLAG_CONST, OUTPUT)
                                        }
                                        }
                                },