Browse Source

emit_glsl_floating_point: Fix FPNeg on newer Nvidia drivers

nce_cpp
ameerj 4 years ago
parent
commit
fbb33df96f
  1. 4
      src/shader_recompiler/backend/glsl/emit_glsl_floating_point.cpp

4
src/shader_recompiler/backend/glsl/emit_glsl_floating_point.cpp

@ -125,11 +125,11 @@ void EmitFPNeg16([[maybe_unused]] EmitContext& ctx, [[maybe_unused]] IR::Inst& i
} }
void EmitFPNeg32(EmitContext& ctx, IR::Inst& inst, std::string_view value) { void EmitFPNeg32(EmitContext& ctx, IR::Inst& inst, std::string_view value) {
ctx.AddF32("{}=-({});", inst, value);
ctx.AddF32("{}=0.f-({});", inst, value);
} }
void EmitFPNeg64(EmitContext& ctx, IR::Inst& inst, std::string_view value) { void EmitFPNeg64(EmitContext& ctx, IR::Inst& inst, std::string_view value) {
ctx.AddF64("{}=-({});", inst, value);
ctx.AddF64("{}=double(0.)-({});", inst, value);
} }
void EmitFPSin(EmitContext& ctx, IR::Inst& inst, std::string_view value) { void EmitFPSin(EmitContext& ctx, IR::Inst& inst, std::string_view value) {

Loading…
Cancel
Save