bool anv_nir_lower_ycbcr_textures(nir_shader *shader,
struct anv_pipeline_layout *layout);
-void anv_nir_apply_pipeline_layout(struct anv_pipeline *pipeline,
+void anv_nir_apply_pipeline_layout(const struct anv_physical_device *pdevice,
+ bool robust_buffer_access,
struct anv_pipeline_layout *layout,
nir_shader *shader,
struct brw_stage_prog_data *prog_data,
}
void
-anv_nir_apply_pipeline_layout(struct anv_pipeline *pipeline,
+anv_nir_apply_pipeline_layout(const struct anv_physical_device *pdevice,
+ bool robust_buffer_access,
struct anv_pipeline_layout *layout,
nir_shader *shader,
struct brw_stage_prog_data *prog_data,
struct apply_pipeline_layout_state state = {
.shader = shader,
.layout = layout,
- .add_bounds_checks = pipeline->device->robust_buffer_access,
+ .add_bounds_checks = robust_buffer_access,
};
void *mem_ctx = ralloc_context(NULL);
/* Apply the actual pipeline layout to UBOs, SSBOs, and textures */
if (layout) {
- anv_nir_apply_pipeline_layout(pipeline, layout, nir, prog_data,
+ anv_nir_apply_pipeline_layout(&pipeline->device->instance->physicalDevice,
+ pipeline->device->robust_buffer_access,
+ layout, nir, prog_data,
&stage->bind_map);
}