diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/mesa/drivers/dri/i965/brw_nir_tcs_workarounds.c | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_nir_tcs_workarounds.c b/src/mesa/drivers/dri/i965/brw_nir_tcs_workarounds.c index 0626981c2c1..6524b7dcb21 100644 --- a/src/mesa/drivers/dri/i965/brw_nir_tcs_workarounds.c +++ b/src/mesa/drivers/dri/i965/brw_nir_tcs_workarounds.c @@ -134,19 +134,16 @@ brw_nir_apply_tcs_quads_workaround(nir_shader *nir) { assert(nir->stage == MESA_SHADER_TESS_CTRL); - nir_foreach_function(func, nir) { - if (!func->impl) - continue; + nir_function_impl *impl = nir_shader_get_entrypoint(nir); - nir_builder b; - nir_builder_init(&b, func->impl); + nir_builder b; + nir_builder_init(&b, impl); - struct set_entry *entry; - set_foreach(func->impl->end_block->predecessors, entry) { - nir_block *pred = (nir_block *) entry->key; - emit_quads_workaround(&b, pred); - } - - nir_metadata_preserve(func->impl, 0); + struct set_entry *entry; + set_foreach(impl->end_block->predecessors, entry) { + nir_block *pred = (nir_block *) entry->key; + emit_quads_workaround(&b, pred); } + + nir_metadata_preserve(impl, 0); } |