aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Shader/StructuredIr
diff options
context:
space:
mode:
authorgdkchan <gab.dark.100@gmail.com>2020-04-02 21:20:47 -0300
committerGitHub <noreply@github.com>2020-04-03 11:20:47 +1100
commite93ca84b14cc325364f1ccc45a6e8622978e959d (patch)
tree8e32b23e94e529ccf91b8e7d7613ce003d16e841 /Ryujinx.Graphics.Shader/StructuredIr
parent2365ddfc363e76ac1ac9d2e32ef9b36b85463431 (diff)
Better IPA shader instruction implementation (#1082)
* Fix varying interpolation on fragment shader * Some nits * Alignment
Diffstat (limited to 'Ryujinx.Graphics.Shader/StructuredIr')
-rw-r--r--Ryujinx.Graphics.Shader/StructuredIr/AstOperand.cs5
-rw-r--r--Ryujinx.Graphics.Shader/StructuredIr/StructuredProgramContext.cs2
-rw-r--r--Ryujinx.Graphics.Shader/StructuredIr/StructuredProgramInfo.cs4
3 files changed, 1 insertions, 10 deletions
diff --git a/Ryujinx.Graphics.Shader/StructuredIr/AstOperand.cs b/Ryujinx.Graphics.Shader/StructuredIr/AstOperand.cs
index 25b09636..97ff3ca9 100644
--- a/Ryujinx.Graphics.Shader/StructuredIr/AstOperand.cs
+++ b/Ryujinx.Graphics.Shader/StructuredIr/AstOperand.cs
@@ -12,8 +12,6 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
public VariableType VarType { get; set; }
- public InterpolationQualifier Interpolation { get; }
-
public int Value { get; }
public int CbufSlot { get; }
@@ -29,8 +27,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
public AstOperand(Operand operand) : this()
{
- Type = operand.Type;
- Interpolation = operand.Interpolation;
+ Type = operand.Type;
if (Type == OperandType.ConstantBuffer)
{
diff --git a/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgramContext.cs b/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgramContext.cs
index f2af84f3..b7d5efbe 100644
--- a/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgramContext.cs
+++ b/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgramContext.cs
@@ -273,8 +273,6 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
if (TryGetUserAttributeIndex(operand, out int attrIndex))
{
Info.IAttributes.Add(attrIndex);
-
- Info.InterpolationQualifiers[attrIndex] = operand.Interpolation;
}
else if (operand.Type == OperandType.Attribute && operand.Value == AttributeConsts.InstanceId)
{
diff --git a/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgramInfo.cs b/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgramInfo.cs
index 0ef4bde3..be79f00e 100644
--- a/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgramInfo.cs
+++ b/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgramInfo.cs
@@ -14,8 +14,6 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
public HashSet<int> IAttributes { get; }
public HashSet<int> OAttributes { get; }
- public InterpolationQualifier[] InterpolationQualifiers { get; }
-
public bool UsesInstanceId { get; set; }
public HelperFunctionsMask HelperFunctionsMask { get; set; }
@@ -35,8 +33,6 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
IAttributes = new HashSet<int>();
OAttributes = new HashSet<int>();
- InterpolationQualifiers = new InterpolationQualifier[32];
-
Samplers = new HashSet<AstTextureOperation>();
Images = new HashSet<AstTextureOperation>();
}