Explorar o código

shader: Add missing fsetp negation bit on srcB (#760)

Rodrigo Locatti %!s(int64=6) %!d(string=hai) anos
pai
achega
ebea4967f8
Modificáronse 1 ficheiros con 3 adicións e 2 borrados
  1. 3 2
      Ryujinx.Graphics/Shader/Instructions/InstEmitFArith.cs

+ 3 - 2
Ryujinx.Graphics/Shader/Instructions/InstEmitFArith.cs

@@ -158,9 +158,10 @@ namespace Ryujinx.Graphics.Shader.Instructions
             bool absoluteA = op.RawOpCode.Extract(7);
             bool absoluteA = op.RawOpCode.Extract(7);
             bool negateA   = op.RawOpCode.Extract(43);
             bool negateA   = op.RawOpCode.Extract(43);
             bool absoluteB = op.RawOpCode.Extract(44);
             bool absoluteB = op.RawOpCode.Extract(44);
+            bool negateB   = op.RawOpCode.Extract(6);
 
 
-            Operand srcA = context.FPAbsNeg  (GetSrcA(context), absoluteA, negateA);
-            Operand srcB = context.FPAbsolute(GetSrcB(context), absoluteB);
+            Operand srcA = context.FPAbsNeg(GetSrcA(context), absoluteA, negateA);
+            Operand srcB = context.FPAbsNeg(GetSrcB(context), absoluteB, negateB);
 
 
             Operand p0Res = GetFPComparison(context, cmpOp, srcA, srcB);
             Operand p0Res = GetFPComparison(context, cmpOp, srcA, srcB);