default:
unreachable("invalid stage");
}
-
- if (expect->input_clip_size != have->input_clip_size)
- return false;
-
- if (expect->tex_saturate_s != have->tex_saturate_s ||
- expect->tex_saturate_r != have->tex_saturate_r ||
- expect->tex_saturate_t != have->tex_saturate_t)
- return false;
-
- if (expect->samples_int_textures != have->samples_int_textures)
+
+
+ if (memcmp(&expect->next_varying_inputs,
+ &have->next_varying_inputs,
+ offsetof(d3d12_shader_key, vs) - offsetof(d3d12_shader_key, next_varying_inputs)) != 0)
return false;
-
+
if (expect->n_texture_states != have->n_texture_states)
return false;
expect->n_images * sizeof(struct d3d12_image_format_conversion_info)))
return false;
- if (expect->invert_depth != have->invert_depth ||
- expect->halfz != have->halfz)
- return false;
-
/* Because we only add varyings we check that a shader has at least the expected in-
* and outputs. */
if (!d3d12_compare_varying_info(expect->required_varying_inputs,
- have->required_varying_inputs) ||
- expect->next_varying_inputs != have->next_varying_inputs)
+ have->required_varying_inputs))
return false;
if (!d3d12_compare_varying_info(expect->required_varying_outputs,
- have->required_varying_outputs) ||
- expect->prev_varying_outputs != have->prev_varying_outputs)
+ have->required_varying_outputs))
return false;
return true;