Lines Matching refs:existing
815 ir_variable *const existing) in validate_intrastage_arrays() argument
822 if (var->type->is_array() && existing->type->is_array()) { in validate_intrastage_arrays()
823 if ((var->type->fields.array == existing->type->fields.array) && in validate_intrastage_arrays()
824 ((var->type->length == 0)|| (existing->type->length == 0))) { in validate_intrastage_arrays()
826 if ((int)var->type->length <= existing->data.max_array_access) { in validate_intrastage_arrays()
832 existing->data.max_array_access); in validate_intrastage_arrays()
834 existing->type = var->type; in validate_intrastage_arrays()
836 } else if (existing->type->length != 0) { in validate_intrastage_arrays()
837 if((int)existing->type->length <= var->data.max_array_access && in validate_intrastage_arrays()
838 !existing->data.from_ssbo_unsized_array) { in validate_intrastage_arrays()
843 var->name, existing->type->name, in validate_intrastage_arrays()
852 if (existing->type->fields.array->is_record() && in validate_intrastage_arrays()
854 existing->type->fields.array->record_compare(var->type->fields.array)) in validate_intrastage_arrays()
893 ir_variable *const existing = variables->get_variable(var->name); in cross_validate_globals() local
894 if (existing != NULL) { in cross_validate_globals()
898 if (var->type != existing->type && in cross_validate_globals()
900 if (!validate_intrastage_arrays(prog, var, existing)) { in cross_validate_globals()
901 if (var->type->is_record() && existing->type->is_record() in cross_validate_globals()
902 && existing->type->record_compare(var->type)) { in cross_validate_globals()
903 existing->type = var->type; in cross_validate_globals()
913 existing->data.mode == ir_var_shader_storage && in cross_validate_globals()
914 existing->data.from_ssbo_unsized_array && in cross_validate_globals()
915 var->type->gl_type == existing->type->gl_type)) { in cross_validate_globals()
920 existing->type->name); in cross_validate_globals()
928 if (existing->data.explicit_location in cross_validate_globals()
929 && (var->data.location != existing->data.location)) { in cross_validate_globals()
936 if (var->data.location_frac != existing->data.location_frac) { in cross_validate_globals()
942 existing->data.location = var->data.location; in cross_validate_globals()
943 existing->data.explicit_location = true; in cross_validate_globals()
950 if (existing->data.explicit_location) { in cross_validate_globals()
951 var->data.location = existing->data.location; in cross_validate_globals()
963 if (existing->data.explicit_binding && in cross_validate_globals()
964 var->data.binding != existing->data.binding) { in cross_validate_globals()
971 existing->data.binding = var->data.binding; in cross_validate_globals()
972 existing->data.explicit_binding = true; in cross_validate_globals()
976 var->data.offset != existing->data.offset) { in cross_validate_globals()
997 var->data.depth_layout != existing->data.depth_layout; in cross_validate_globals()
1032 if (existing->constant_initializer != NULL) { in cross_validate_globals()
1033 if (!var->constant_initializer->has_value(existing->constant_initializer)) { in cross_validate_globals()
1044 variables->replace_variable(existing->name, var); in cross_validate_globals()
1049 if (existing->data.has_initializer in cross_validate_globals()
1051 || existing->constant_initializer == NULL)) { in cross_validate_globals()
1060 if (existing->data.invariant != var->data.invariant) { in cross_validate_globals()
1066 if (existing->data.centroid != var->data.centroid) { in cross_validate_globals()
1072 if (existing->data.sample != var->data.sample) { in cross_validate_globals()
1078 if (existing->data.image_format != var->data.image_format) { in cross_validate_globals()
1094 existing->data.precision != var->data.precision) { in cross_validate_globals()
1291 ir_variable *const existing = in remap_variables() local
1293 if (existing != NULL) in remap_variables()
1294 ir->var = existing; in remap_variables()