Mesa (main): lavapipe: run nir_fold_16bit_sampler_conversions
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Wed Apr 20 13:04:34 UTC 2022
Module: Mesa
Branch: main
Commit: b043d4c4c64a092c4cb352ce93fa9cef57814226
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b043d4c4c64a092c4cb352ce93fa9cef57814226
Author: Mike Blumenkrantz <michael.blumenkrantz at gmail.com>
Date: Thu Mar 10 09:02:04 2022 -0500
lavapipe: run nir_fold_16bit_sampler_conversions
big cleanup for all shaders coming from zink
Reviewed-by: Dave Airlie <airlied at redhat.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15852>
---
src/gallium/frontends/lavapipe/lvp_pipeline.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/gallium/frontends/lavapipe/lvp_pipeline.c b/src/gallium/frontends/lavapipe/lvp_pipeline.c
index 247a898714a..1d556ce1026 100644
--- a/src/gallium/frontends/lavapipe/lvp_pipeline.c
+++ b/src/gallium/frontends/lavapipe/lvp_pipeline.c
@@ -949,6 +949,11 @@ lvp_shader_compile_to_ir(struct lvp_pipeline *pipeline,
NIR_PASS_V(nir, nir_lower_io_arrays_to_elements_no_indirects, true);
}
+ // TODO: also optimize the tex srcs. see radeonSI for reference */
+ /* Skip if there are potentially conflicting rounding modes */
+ if (!nir_has_any_rounding_mode_enabled(nir->info.float_controls_execution_mode))
+ NIR_PASS_V(nir, nir_fold_16bit_sampler_conversions, 0, UINT32_MAX);
+
optimize(nir);
NIR_PASS_V(nir, nir_lower_var_copies);
More information about the mesa-commit
mailing list