diff options
-rw-r--r-- | src/compiler/glsl/ir_set_program_inouts.cpp | 19 | ||||
-rw-r--r-- | src/mesa/main/mtypes.h | 1 | ||||
-rw-r--r-- | src/mesa/program/arbprogparse.c | 1 | ||||
-rw-r--r-- | src/mesa/program/program_parse.y | 2 | ||||
-rw-r--r-- | src/mesa/program/program_parser.h | 1 |
5 files changed, 2 insertions, 22 deletions
diff --git a/src/compiler/glsl/ir_set_program_inouts.cpp b/src/compiler/glsl/ir_set_program_inouts.cpp index 48ed3c5c9e2..f5b36df680d 100644 --- a/src/compiler/glsl/ir_set_program_inouts.cpp +++ b/src/compiler/glsl/ir_set_program_inouts.cpp @@ -26,8 +26,8 @@ * * Sets the InputsRead and OutputsWritten of Mesa programs. * - * Additionally, for fragment shaders, sets the InterpQualifier array, the - * IsCentroid and IsSample bitfields, and the UsesDFdy flag. + * Additionally, for fragment shaders, sets the InterpQualifier array, and the + * IsCentroid and IsSample bitfields. * * Mesa programs (gl_program, not gl_shader_program) have a set of * flags indicating which varyings are read and written. Computing @@ -58,7 +58,6 @@ public: virtual ir_visitor_status visit_enter(ir_dereference_array *); virtual ir_visitor_status visit_enter(ir_function_signature *); - virtual ir_visitor_status visit_enter(ir_expression *); virtual ir_visitor_status visit_enter(ir_discard *); virtual ir_visitor_status visit_enter(ir_texture *); virtual ir_visitor_status visit(ir_dereference_variable *); @@ -412,19 +411,6 @@ ir_set_program_inouts_visitor::visit_enter(ir_function_signature *ir) } ir_visitor_status -ir_set_program_inouts_visitor::visit_enter(ir_expression *ir) -{ - if (this->shader_stage == MESA_SHADER_FRAGMENT && - (ir->operation == ir_unop_dFdy || - ir->operation == ir_unop_dFdy_coarse || - ir->operation == ir_unop_dFdy_fine)) { - gl_fragment_program *fprog = (gl_fragment_program *) prog; - fprog->UsesDFdy = true; - } - return visit_continue; -} - -ir_visitor_status ir_set_program_inouts_visitor::visit_enter(ir_discard *) { /* discards are only allowed in fragment shaders. */ @@ -462,7 +448,6 @@ do_set_program_inouts(exec_list *instructions, struct gl_program *prog, memset(fprog->InterpQualifier, 0, sizeof(fprog->InterpQualifier)); fprog->IsCentroid = 0; fprog->IsSample = 0; - fprog->UsesDFdy = false; fprog->UsesKill = false; } visit_list_elements(&v, instructions); diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h index b279fc4c6df..d494872eef9 100644 --- a/src/mesa/main/mtypes.h +++ b/src/mesa/main/mtypes.h @@ -2039,7 +2039,6 @@ struct gl_fragment_program { struct gl_program Base; /**< base class */ GLboolean UsesKill; /**< shader uses KIL instruction */ - GLboolean UsesDFdy; /**< shader uses DDY instruction */ GLboolean OriginUpperLeft; GLboolean PixelCenterInteger; enum gl_frag_depth_layout FragDepthLayout; diff --git a/src/mesa/program/arbprogparse.c b/src/mesa/program/arbprogparse.c index 3ddaeca8a71..b7bddfe270f 100644 --- a/src/mesa/program/arbprogparse.c +++ b/src/mesa/program/arbprogparse.c @@ -120,7 +120,6 @@ _mesa_parse_arb_fragment_program(struct gl_context* ctx, GLenum target, program->PixelCenterInteger = state.option.PixelCenterInteger; program->UsesKill = state.fragment.UsesKill; - program->UsesDFdy = state.fragment.UsesDFdy; free(program->Base.Instructions); program->Base.Instructions = prog.Instructions; diff --git a/src/mesa/program/program_parse.y b/src/mesa/program/program_parse.y index ad94fe032bc..fc8eed75593 100644 --- a/src/mesa/program/program_parse.y +++ b/src/mesa/program/program_parse.y @@ -388,8 +388,6 @@ ARL_instruction: ARL maskedAddrReg ',' scalarSrcReg VECTORop_instruction: VECTOR_OP maskedDstReg ',' swizzleSrcReg { - if ($1.Opcode == OPCODE_DDY) - state->fragment.UsesDFdy = 1; $$ = asm_instruction_copy_ctor(& $1, & $2, & $4, NULL, NULL); } ; diff --git a/src/mesa/program/program_parser.h b/src/mesa/program/program_parser.h index af7b2a0be3e..05ceb92dfab 100644 --- a/src/mesa/program/program_parser.h +++ b/src/mesa/program/program_parser.h @@ -213,7 +213,6 @@ struct asm_parser_state { struct { unsigned UsesKill:1; - unsigned UsesDFdy:1; } fragment; }; |