glsl: remove the always_active_io flag from GLSL IR
No longer used. Reviewed-by: Emma Anholt <emma@anholt.net> Reviewed-by: Marek Olšák <marek.olsak@amd.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22846>
This commit is contained in:

committed by
Marge Bot

parent
06f3988c58
commit
bc66c2588a
@@ -506,7 +506,6 @@ nir_visitor::visit(ir_variable *ir)
|
|||||||
var->name = ralloc_strdup(var, ir->name);
|
var->name = ralloc_strdup(var, ir->name);
|
||||||
|
|
||||||
var->data.assigned = ir->data.assigned;
|
var->data.assigned = ir->data.assigned;
|
||||||
var->data.always_active_io = ir->data.always_active_io;
|
|
||||||
var->data.read_only = ir->data.read_only;
|
var->data.read_only = ir->data.read_only;
|
||||||
var->data.centroid = ir->data.centroid;
|
var->data.centroid = ir->data.centroid;
|
||||||
var->data.sample = ir->data.sample;
|
var->data.sample = ir->data.sample;
|
||||||
|
@@ -2043,7 +2043,6 @@ ir_variable::ir_variable(const struct glsl_type *type, const char *name,
|
|||||||
this->data.depth_layout = ir_depth_layout_none;
|
this->data.depth_layout = ir_depth_layout_none;
|
||||||
this->data.used = false;
|
this->data.used = false;
|
||||||
this->data.assigned = false;
|
this->data.assigned = false;
|
||||||
this->data.always_active_io = false;
|
|
||||||
this->data.read_only = false;
|
this->data.read_only = false;
|
||||||
this->data.centroid = false;
|
this->data.centroid = false;
|
||||||
this->data.sample = false;
|
this->data.sample = false;
|
||||||
|
@@ -699,13 +699,6 @@ public:
|
|||||||
*/
|
*/
|
||||||
unsigned assigned:1;
|
unsigned assigned:1;
|
||||||
|
|
||||||
/**
|
|
||||||
* When separate shader programs are enabled, only input/outputs between
|
|
||||||
* the stages of a multi-stage separate program can be safely removed
|
|
||||||
* from the shader interface. Other input/outputs must remains active.
|
|
||||||
*/
|
|
||||||
unsigned always_active_io:1;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Enum indicating how the variable was declared. See
|
* Enum indicating how the variable was declared. See
|
||||||
* ir_var_declaration_type.
|
* ir_var_declaration_type.
|
||||||
|
@@ -74,20 +74,6 @@ do_dead_code(exec_list *instructions)
|
|||||||
|| !entry->declaration)
|
|| !entry->declaration)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
/* Section 7.4.1 (Shader Interface Matching) of the OpenGL 4.5
|
|
||||||
* (Core Profile) spec says:
|
|
||||||
*
|
|
||||||
* "With separable program objects, interfaces between shader
|
|
||||||
* stages may involve the outputs from one program object and the
|
|
||||||
* inputs from a second program object. For such interfaces, it is
|
|
||||||
* not possible to detect mismatches at link time, because the
|
|
||||||
* programs are linked separately. When each such program is
|
|
||||||
* linked, all inputs or outputs interfacing with another program
|
|
||||||
* stage are treated as active."
|
|
||||||
*/
|
|
||||||
if (entry->var->data.always_active_io)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if (!entry->assign_list.is_empty()) {
|
if (!entry->assign_list.is_empty()) {
|
||||||
/* Remove all the dead assignments to the variable we found.
|
/* Remove all the dead assignments to the variable we found.
|
||||||
* Don't do so if it's a shader or function output, though.
|
* Don't do so if it's a shader or function output, though.
|
||||||
|
Reference in New Issue
Block a user