driconf: add workaround for Enter The Gungeon

Quoting a comment on the bug report:

   I suspect the shader is incorrect.

   When a (conditional) discard is executed then control flow
   becomes non-uniform, meaning that subsequent implicit
   derivatives required for the texture operation are not
   computed correctly.

Using glsl_correct_derivatives_after_discard fixes it. Note
that for radeonsi this requires LLVM master to work properly.

Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/1386
Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/8005>
This commit is contained in:
Pierre-Eric Pelloux-Prayer
2020-12-09 15:41:59 +01:00
parent 296316b5de
commit 1a4c4cd110
+8
View File
@@ -593,6 +593,14 @@ TODO: document the other workarounds.
<option name="allow_higher_compat_version" value="true" />
</application>
<application name="Enter The Gungeon (32 bits)" executable="EtG.x86">
<option name="glsl_correct_derivatives_after_discard" value="true" />
</application>
<application name="Enter The Gungeon (64 bits)" executable="EtG.x86_64">
<option name="glsl_correct_derivatives_after_discard" value="true" />
</application>
<!-- Gallium Nine workarounds: -->
<application name="Rayman Legends" executable="Rayman Legends.exe">
<option name="dynamic_texture_workaround" value="true" />