diff options
author | Rhys Perry <pendingchaos02@gmail.com> | 2019-12-03 10:48:18 +0000 |
---|---|---|
committer | Rhys Perry <pendingchaos02@gmail.com> | 2019-12-04 12:21:40 +0000 |
commit | 3e67aa2e4e0c116b8b3f1e3717b086fdb576934e (patch) | |
tree | de95678b4cb12bf8888f76039ca281fd27b675ae /src/compiler/nir/nir_opt_load_store_vectorize.c | |
parent | 637c5a1dd9bd56da04d48b8c92c1c40b12ae76ab (diff) |
nir/load_store_vectorize: fix combining stores with aliasing loads between
v2: add test
Fixes: ce9205c03bd ('nir: add a load/store vectorization pass')
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Daniel Schürmann <daniel@schuermann.dev> (v1)
Reviewed-by: Connor Abbott <cwabbott0@gmail.com> (v2)
Diffstat (limited to 'src/compiler/nir/nir_opt_load_store_vectorize.c')
-rw-r--r-- | src/compiler/nir/nir_opt_load_store_vectorize.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/compiler/nir/nir_opt_load_store_vectorize.c b/src/compiler/nir/nir_opt_load_store_vectorize.c index ff9959b11c7..c40d4ada4ee 100644 --- a/src/compiler/nir/nir_opt_load_store_vectorize.c +++ b/src/compiler/nir/nir_opt_load_store_vectorize.c @@ -989,13 +989,13 @@ check_for_aliasing(struct vectorize_ctx *ctx, struct entry *first, struct entry unsigned mode_index = ffs(mode) - 1; if (first->is_store) { - /* find first store that aliases "first" */ + /* find first entry that aliases "first" */ list_for_each_entry_from(struct entry, next, first, &ctx->entries[mode_index], head) { if (next == first) continue; if (next == second) return false; - if (next->is_store && may_alias(first, next)) + if (may_alias(first, next)) return true; } } else { |