bazzite/spec_files/mesa/invariant.patch

137 lines
5.5 KiB
Diff

diff --git a/docs/envvars.rst b/docs/envvars.rst
index b2c0ba7..c1375a1 100644
--- a/docs/envvars.rst
+++ b/docs/envvars.rst
@@ -1081,9 +1081,6 @@ RADV driver environment variables
Print image info
``info``
show GPU-related information
- ``invariantgeom``
- Mark geometry-affecting outputs as invariant. This works around a common
- class of application bugs appearing as flickering.
``metashaders``
dump internal meta shaders
``noatocdithering``
diff --git a/src/amd/vulkan/radv_debug.h b/src/amd/vulkan/radv_debug.h
index b15149d..45791b6 100644
--- a/src/amd/vulkan/radv_debug.h
+++ b/src/amd/vulkan/radv_debug.h
@@ -56,20 +56,19 @@ enum {
RADV_DEBUG_HANG = 1ull << 25,
RADV_DEBUG_IMG = 1ull << 26,
RADV_DEBUG_NO_UMR = 1ull << 27,
- RADV_DEBUG_INVARIANT_GEOM = 1ull << 28,
- RADV_DEBUG_NO_DISPLAY_DCC = 1ull << 29,
- RADV_DEBUG_NO_TC_COMPAT_CMASK = 1ull << 30,
- RADV_DEBUG_NO_VRS_FLAT_SHADING = 1ull << 31,
- RADV_DEBUG_NO_ATOC_DITHERING = 1ull << 32,
- RADV_DEBUG_NO_NGGC = 1ull << 33,
- RADV_DEBUG_DUMP_PROLOGS = 1ull << 34,
- RADV_DEBUG_NO_DMA_BLIT = 1ull << 35,
- RADV_DEBUG_SPLIT_FMA = 1ull << 36,
- RADV_DEBUG_DUMP_EPILOGS = 1ull << 37,
- RADV_DEBUG_NO_FMASK = 1ull << 38,
- RADV_DEBUG_SHADOW_REGS = 1ull << 39,
- RADV_DEBUG_EXTRA_MD = 1ull << 40,
- RADV_DEBUG_NO_GPL = 1ull << 41,
+ RADV_DEBUG_NO_DISPLAY_DCC = 1ull << 28,
+ RADV_DEBUG_NO_TC_COMPAT_CMASK = 1ull << 29,
+ RADV_DEBUG_NO_VRS_FLAT_SHADING = 1ull << 30,
+ RADV_DEBUG_NO_ATOC_DITHERING = 1ull << 31,
+ RADV_DEBUG_NO_NGGC = 1ull << 32,
+ RADV_DEBUG_DUMP_PROLOGS = 1ull << 33,
+ RADV_DEBUG_NO_DMA_BLIT = 1ull << 34,
+ RADV_DEBUG_SPLIT_FMA = 1ull << 35,
+ RADV_DEBUG_DUMP_EPILOGS = 1ull << 36,
+ RADV_DEBUG_NO_FMASK = 1ull << 37,
+ RADV_DEBUG_SHADOW_REGS = 1ull << 38,
+ RADV_DEBUG_EXTRA_MD = 1ull << 39,
+ RADV_DEBUG_NO_GPL = 1ull << 40,
};
enum {
diff --git a/src/amd/vulkan/radv_instance.c b/src/amd/vulkan/radv_instance.c
index ebd2787..aa2ed8a 100644
--- a/src/amd/vulkan/radv_instance.c
+++ b/src/amd/vulkan/radv_instance.c
@@ -62,7 +62,6 @@ static const struct debug_control radv_debug_options[] = {
{"hang", RADV_DEBUG_HANG},
{"img", RADV_DEBUG_IMG},
{"noumr", RADV_DEBUG_NO_UMR},
- {"invariantgeom", RADV_DEBUG_INVARIANT_GEOM},
{"splitfma", RADV_DEBUG_SPLIT_FMA},
{"nodisplaydcc", RADV_DEBUG_NO_DISPLAY_DCC},
{"notccompatcmask", RADV_DEBUG_NO_TC_COMPAT_CMASK},
@@ -132,7 +131,6 @@ static const driOptionDescription radv_dri_options[] = {
DRI_CONF_VK_WSI_FORCE_BGRA8_UNORM_FIRST(false)
DRI_CONF_RADV_ZERO_VRAM(false)
DRI_CONF_RADV_LOWER_DISCARD_TO_DEMOTE(false)
- DRI_CONF_RADV_INVARIANT_GEOM(false)
DRI_CONF_RADV_SPLIT_FMA(false)
DRI_CONF_RADV_DISABLE_TC_COMPAT_HTILE_GENERAL(false)
DRI_CONF_RADV_DISABLE_DCC(false)
@@ -177,9 +175,6 @@ radv_init_dri_options(struct radv_instance *instance)
if (driQueryOptionb(&instance->dri_options, "radv_lower_discard_to_demote"))
instance->debug_flags |= RADV_DEBUG_DISCARD_TO_DEMOTE;
- if (driQueryOptionb(&instance->dri_options, "radv_invariant_geom"))
- instance->debug_flags |= RADV_DEBUG_INVARIANT_GEOM;
-
if (driQueryOptionb(&instance->dri_options, "radv_split_fma"))
instance->debug_flags |= RADV_DEBUG_SPLIT_FMA;
diff --git a/src/amd/vulkan/radv_pipeline_graphics.c b/src/amd/vulkan/radv_pipeline_graphics.c
index 6670d64..28ac268 100644
--- a/src/amd/vulkan/radv_pipeline_graphics.c
+++ b/src/amd/vulkan/radv_pipeline_graphics.c
@@ -2024,9 +2024,6 @@ radv_generate_graphics_pipeline_key(const struct radv_device *device,
key.ps.force_vrs_enabled = device->force_vrs_enabled;
- if (device->instance->debug_flags & RADV_DEBUG_INVARIANT_GEOM)
- key.invariant_geom = true;
-
key.use_ngg = device->physical_device->use_ngg;
if ((radv_is_vrs_enabled(pipeline, state) || device->force_vrs_enabled) &&
diff --git a/src/amd/vulkan/radv_shader.c b/src/amd/vulkan/radv_shader.c
index b874ee8..86e8f6c 100644
--- a/src/amd/vulkan/radv_shader.c
+++ b/src/amd/vulkan/radv_shader.c
@@ -535,7 +535,7 @@ radv_shader_spirv_to_nir(struct radv_device *device, const struct radv_pipeline_
NIR_PASS(_, nir, nir_lower_global_vars_to_local);
NIR_PASS(_, nir, nir_lower_vars_to_ssa);
- NIR_PASS(_, nir, nir_propagate_invariant, key->invariant_geom);
+ NIR_PASS(_, nir, nir_propagate_invariant, true);
NIR_PASS(_, nir, nir_lower_clip_cull_distance_arrays);
diff --git a/src/amd/vulkan/radv_shader.h b/src/amd/vulkan/radv_shader.h
index 5a8f021..d58f3e9 100644
--- a/src/amd/vulkan/radv_shader.h
+++ b/src/amd/vulkan/radv_shader.h
@@ -65,7 +65,6 @@ struct radv_pipeline_key {
uint32_t has_multiview_view_index : 1;
uint32_t optimisations_disabled : 1;
- uint32_t invariant_geom : 1;
uint32_t use_ngg : 1;
uint32_t adjust_frag_coord_z : 1;
uint32_t disable_aniso_single_level : 1;
diff --git a/src/util/driconf.h b/src/util/driconf.h
index 08445d0..d58a1d7 100644
--- a/src/util/driconf.h
+++ b/src/util/driconf.h
@@ -574,10 +574,6 @@
DRI_CONF_OPT_B(radv_lower_discard_to_demote, def, \
"Lower discard instructions to demote")
-#define DRI_CONF_RADV_INVARIANT_GEOM(def) \
- DRI_CONF_OPT_B(radv_invariant_geom, def, \
- "Mark geometry-affecting outputs as invariant")
-
#define DRI_CONF_RADV_SPLIT_FMA(def) \
DRI_CONF_OPT_B(radv_split_fma, def, \
"Split application-provided fused multiply-add in geometry stages")