Better IPA shader instruction implementation (#1082)
* Fix varying interpolation on fragment shader * Some nits * Alignment
This commit is contained in:
parent
2365ddfc36
commit
e93ca84b14
13 changed files with 97 additions and 89 deletions
|
@ -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)
|
||||
{
|
||||
|
|
|
@ -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)
|
||||
{
|
||||
|
|
|
@ -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>();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue