diff options
| author | Fernando S <fsahmkow27@gmail.com> | 2022-01-03 00:39:59 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-01-03 00:39:59 +0100 |
| commit | ae7da0b12dd8aef115d741eb60d00ddf8ed357df (patch) | |
| tree | 09d269fe3838d1f8aa5672d2af06cbeb9b45d81f /src/shader_recompiler/backend/glsl/emit_glsl_bitwise_conversion.cpp | |
| parent | 214b9fc9a7749784915dad37f734e03b1db9912b (diff) | |
| parent | 8c907c620d830bdaef30ff4316489443775b3ea4 (diff) | |
Merge pull request #7629 from ameerj/nv-driver-fixes
shaders: Add fixes for NVIDIA drivers 495+
Diffstat (limited to 'src/shader_recompiler/backend/glsl/emit_glsl_bitwise_conversion.cpp')
| -rw-r--r-- | src/shader_recompiler/backend/glsl/emit_glsl_bitwise_conversion.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/shader_recompiler/backend/glsl/emit_glsl_bitwise_conversion.cpp b/src/shader_recompiler/backend/glsl/emit_glsl_bitwise_conversion.cpp index 0f2668d9e..e0ead7a53 100644 --- a/src/shader_recompiler/backend/glsl/emit_glsl_bitwise_conversion.cpp +++ b/src/shader_recompiler/backend/glsl/emit_glsl_bitwise_conversion.cpp @@ -7,6 +7,7 @@ #include "shader_recompiler/backend/glsl/emit_glsl_instructions.h" #include "shader_recompiler/backend/glsl/glsl_emit_context.h" #include "shader_recompiler/frontend/ir/value.h" +#include "shader_recompiler/profile.h" namespace Shader::Backend::GLSL { namespace { @@ -30,8 +31,9 @@ void EmitConditionRef(EmitContext& ctx, IR::Inst& inst, const IR::Value& value) inst.DestructiveAddUsage(1); const auto ret{ctx.var_alloc.Define(inst, GlslVarType::U1)}; const auto input{ctx.var_alloc.Consume(value)}; + const auto suffix{ctx.profile.has_gl_bool_ref_bug ? "?true:false" : ""}; if (ret != input) { - ctx.Add("{}={};", ret, input); + ctx.Add("{}={}{};", ret, input, suffix); } } |
