Mesa (master): nir/lower_goto_if: Rework handling of skip targets
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Aug 14 20:55:37 UTC 2020
Module: Mesa
Branch: master
Commit: d1617985896274dce37b943307d456a042fb2a6d
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=d1617985896274dce37b943307d456a042fb2a6d
Author: Jason Ekstrand <jason at jlekstrand.net>
Date: Wed Aug 12 15:26:49 2020 -0500
nir/lower_goto_if: Rework handling of skip targets
Reviewed-by: Karol Herbst <kherbst at redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/2401>
---
src/compiler/nir/nir_lower_goto_ifs.c | 16 +++++++---------
1 file changed, 7 insertions(+), 9 deletions(-)
diff --git a/src/compiler/nir/nir_lower_goto_ifs.c b/src/compiler/nir/nir_lower_goto_ifs.c
index 28ae1b95e14..b944b4c3164 100644
--- a/src/compiler/nir/nir_lower_goto_ifs.c
+++ b/src/compiler/nir/nir_lower_goto_ifs.c
@@ -590,22 +590,20 @@ organize_levels(struct list_head *levels, struct set *remaining,
routing->brk.reachable, mem_ctx);
}
assert(curr_level->blocks->entries);
- curr_level->skip_start = 0;
struct strct_lvl *prev_level = NULL;
if (!list_is_empty(levels))
prev_level = list_last_entry(levels, struct strct_lvl, link);
- if (skip_targets->entries) {
- set_foreach(skip_targets, entry) {
- if (_mesa_set_search_pre_hashed(curr_level->blocks,
- entry->hash, entry->key)) {
- _mesa_set_remove(skip_targets, entry);
- prev_level->skip_end = 1;
- curr_level->skip_start = !!skip_targets->entries;
- }
+ set_foreach(skip_targets, entry) {
+ if (_mesa_set_search_pre_hashed(curr_level->blocks,
+ entry->hash, entry->key)) {
+ _mesa_set_remove(skip_targets, entry);
+ prev_level->skip_end = 1;
}
}
+ curr_level->skip_start = skip_targets->entries != 0;
+
struct set *prev_frontier = NULL;
if (!prev_level) {
prev_frontier = reach;
More information about the mesa-commit
mailing list