misc: chore: Use collection expressions in Shader project

This commit is contained in:
Evan Husted
2025-01-26 15:50:50 -06:00
parent a5dbcb75d0
commit 95f9e548ca
38 changed files with 198 additions and 204 deletions

View File

@@ -41,7 +41,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
Type = type;
Condition = condition;
_nodes = new LinkedList<IAstNode>();
_nodes = [];
}
public void Add(IAstNode node)

View File

@@ -17,8 +17,8 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
private AstOperand()
{
Defs = new HashSet<IAstNode>();
Uses = new HashSet<IAstNode>();
Defs = [];
Uses = [];
VarType = AggregateType.S32;
}

View File

@@ -429,7 +429,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
{
AstBlock block = bottom;
List<AstBlock> path = new();
List<AstBlock> path = [];
while (block != top)
{

View File

@@ -29,7 +29,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
InArguments = inArguments;
OutArguments = outArguments;
Locals = new HashSet<AstOperand>();
Locals = [];
}
public AggregateType GetArgumentType(int index)

View File

@@ -237,7 +237,8 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
dest.VarType = destElemType;
context.AddNode(new AstAssignment(dest, new AstOperation(Instruction.VectorExtract, StorageKind.None, false, new[] { destVec, index }, 2)));
context.AddNode(new AstAssignment(dest, new AstOperation(Instruction.VectorExtract, StorageKind.None, false,
[destVec, index], 2)));
}
}
else if (operation.Dest != null)
@@ -354,7 +355,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
private static AggregateType GetVarTypeFromUses(Operand dest)
{
HashSet<Operand> visited = new();
HashSet<Operand> visited = [];
Queue<Operand> pending = new();

View File

@@ -70,7 +70,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
AggregateType[] inArguments,
AggregateType[] outArguments)
{
_loopTails = new HashSet<BasicBlock>();
_loopTails = [];
_blockStack = new Stack<(AstBlock, int, int)>();
@@ -78,7 +78,7 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
_gotoTempAsgs = new Dictionary<int, AstAssignment>();
_gotos = new List<GotoStatement>();
_gotos = [];
_currBlock = new AstBlock(AstBlockType.Main);
@@ -314,13 +314,13 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
ResourceManager.SetUsedConstantBufferBinding(binding);
IAstNode[] sources = new IAstNode[]
{
IAstNode[] sources =
[
new AstOperand(OperandType.Constant, binding),
new AstOperand(OperandType.Constant, 0),
new AstOperand(OperandType.Constant, vecIndex),
new AstOperand(OperandType.Constant, elemIndex),
};
new AstOperand(OperandType.Constant, elemIndex)
];
return new AstOperation(Instruction.Load, StorageKind.ConstantBuffer, false, sources, sources.Length);
}

View File

@@ -12,9 +12,9 @@ namespace Ryujinx.Graphics.Shader.StructuredIr
public StructuredProgramInfo(bool precise)
{
Functions = new List<StructuredFunction>();
Functions = [];
IoDefinitions = new HashSet<IoDefinition>();
IoDefinitions = [];
if (precise)
{