aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgram.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgram.cs')
-rw-r--r--src/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgram.cs35
1 files changed, 20 insertions, 15 deletions
diff --git a/src/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgram.cs b/src/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgram.cs
index 9d12a73c..a4e6444b 100644
--- a/src/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgram.cs
+++ b/src/Ryujinx.Graphics.Shader/StructuredIr/StructuredProgram.cs
@@ -10,7 +10,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
{
public static StructuredProgramInfo MakeStructuredProgram(IReadOnlyList<Function> functions, ShaderConfig config)
{
- StructuredProgramContext context = new StructuredProgramContext(config);
+ StructuredProgramContext context = new(config);
for (int funcIndex = 0; funcIndex < functions.Count; funcIndex++)
{
@@ -20,7 +20,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
AggregateType returnType = function.ReturnsValue ? AggregateType.S32 : AggregateType.Void;
- AggregateType[] inArguments = new AggregateType[function.InArgumentsCount];
+ AggregateType[] inArguments = new AggregateType[function.InArgumentsCount];
AggregateType[] outArguments = new AggregateType[function.OutArgumentsCount];
for (int i = 0; i < inArguments.Length; i++)
@@ -79,7 +79,6 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
{
IoVariable ioVariable = (IoVariable)operation.GetSource(0).Value;
bool isOutput = storageKind.IsOutput();
- bool perPatch = storageKind.IsPerPatch();
int location = 0;
int component = 0;
@@ -169,9 +168,15 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
switch (componentsCount)
{
- case 2: destType |= AggregateType.Vector2; break;
- case 3: destType |= AggregateType.Vector3; break;
- case 4: destType |= AggregateType.Vector4; break;
+ case 2:
+ destType |= AggregateType.Vector2;
+ break;
+ case 3:
+ destType |= AggregateType.Vector3;
+ break;
+ case 4:
+ destType |= AggregateType.Vector4;
+ break;
}
AstOperand destVec = context.NewTemp(destType);
@@ -181,7 +186,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
for (int i = 0; i < operation.DestsCount; i++)
{
AstOperand dest = context.GetOperand(operation.GetDest(i));
- AstOperand index = new AstOperand(OperandType.Constant, i);
+ AstOperand index = new(OperandType.Constant, i);
dest.VarType = destElemType;
@@ -202,7 +207,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
}
bool isCondSel = inst == Instruction.ConditionalSelect;
- bool isCopy = inst == Instruction.Copy;
+ bool isCopy = inst == Instruction.Copy;
if (isCondSel || isCopy)
{
@@ -304,9 +309,9 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
private static AggregateType GetVarTypeFromUses(Operand dest)
{
- HashSet<Operand> visited = new HashSet<Operand>();
+ HashSet<Operand> visited = new();
- Queue<Operand> pending = new Queue<Operand>();
+ Queue<Operand> pending = new();
bool Enqueue(Operand operand)
{
@@ -385,7 +390,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
{
Instruction.ImageLoad or
Instruction.TextureSample => true,
- _ => false
+ _ => false,
};
}
@@ -396,7 +401,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
Instruction.Branch or
Instruction.BranchIfFalse or
Instruction.BranchIfTrue => true,
- _ => false
+ _ => false,
};
}
@@ -408,7 +413,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
Instruction.BitwiseExclusiveOr or
Instruction.BitwiseNot or
Instruction.BitwiseOr => true,
- _ => false
+ _ => false,
};
}
@@ -420,8 +425,8 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
Instruction.BitwiseExclusiveOr => Instruction.LogicalExclusiveOr,
Instruction.BitwiseNot => Instruction.LogicalNot,
Instruction.BitwiseOr => Instruction.LogicalOr,
- _ => throw new ArgumentException($"Unexpected instruction \"{inst}\".")
+ _ => throw new ArgumentException($"Unexpected instruction \"{inst}\"."),
};
}
}
-} \ No newline at end of file
+}