aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Graphics.Shader/IntermediateRepresentation
diff options
context:
space:
mode:
Diffstat (limited to 'src/Ryujinx.Graphics.Shader/IntermediateRepresentation')
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/BasicBlock.cs6
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/CommentNode.cs2
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Function.cs2
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/INode.cs2
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Instruction.cs6
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/IoVariable.cs4
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/IrConsts.cs4
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Operand.cs10
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/OperandHelper.cs2
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/OperandType.cs4
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Operation.cs4
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/PhiNode.cs12
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/StorageKind.cs4
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/TextureFlags.cs44
-rw-r--r--src/Ryujinx.Graphics.Shader/IntermediateRepresentation/TextureOperation.cs2
15 files changed, 56 insertions, 52 deletions
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/BasicBlock.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/BasicBlock.cs
index 2aca118b..637e120e 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/BasicBlock.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/BasicBlock.cs
@@ -83,9 +83,9 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
case Instruction.Discard:
case Instruction.Return:
return true;
+ default:
+ return false;
}
-
- return false;
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/CommentNode.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/CommentNode.cs
index d4d87b06..1d33a9b0 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/CommentNode.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/CommentNode.cs
@@ -9,4 +9,4 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
Comment = comment;
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Function.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Function.cs
index e535c3fc..a5f3e0a8 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Function.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Function.cs
@@ -20,4 +20,4 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
OutArgumentsCount = outArgumentsCount;
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/INode.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/INode.cs
index 0f545e56..d5eae00b 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/INode.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/INode.cs
@@ -12,4 +12,4 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
void SetSource(int index, Operand operand);
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Instruction.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Instruction.cs
index de41a2cf..808cc7ed 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Instruction.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Instruction.cs
@@ -1,8 +1,10 @@
using System;
+using System.Diagnostics.CodeAnalysis;
namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
{
[Flags]
+ [SuppressMessage("Design", "CA1069: Enums values should not be duplicated")]
enum Instruction
{
Absolute = 1,
@@ -130,7 +132,7 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
FP32 = 1 << 16,
FP64 = 1 << 17,
- Mask = 0xffff
+ Mask = 0xffff,
}
static class InstructionExtensions
@@ -161,4 +163,4 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
return inst == Instruction.Lod || inst == Instruction.TextureSize;
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/IoVariable.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/IoVariable.cs
index fb9b57bd..fdee8345 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/IoVariable.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/IoVariable.cs
@@ -43,6 +43,6 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
VertexId,
VertexIndex,
ViewportIndex,
- ViewportMask
+ ViewportMask,
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/IrConsts.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/IrConsts.cs
index c264e47d..cc9d6cc2 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/IrConsts.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/IrConsts.cs
@@ -3,6 +3,6 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
static class IrConsts
{
public const int False = 0;
- public const int True = -1;
+ public const int True = -1;
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Operand.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Operand.cs
index 1df88a3d..6648457f 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Operand.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Operand.cs
@@ -7,7 +7,7 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
class Operand
{
private const int CbufSlotBits = 5;
- private const int CbufSlotLsb = 32 - CbufSlotBits;
+ private const int CbufSlotLsb = 32 - CbufSlotBits;
private const int CbufSlotMask = (1 << CbufSlotBits) - 1;
public OperandType Type { get; }
@@ -30,19 +30,19 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
public Operand(OperandType type, int value) : this()
{
- Type = type;
+ Type = type;
Value = value;
}
public Operand(Register reg) : this()
{
- Type = OperandType.Register;
+ Type = OperandType.Register;
Value = PackRegInfo(reg.Index, reg.Type);
}
public Operand(int slot, int offset) : this()
{
- Type = OperandType.ConstantBuffer;
+ Type = OperandType.ConstantBuffer;
Value = PackCbufInfo(slot, offset);
}
@@ -76,4 +76,4 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
return BitConverter.Int32BitsToSingle(Value);
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/OperandHelper.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/OperandHelper.cs
index 37c349e8..f8831355 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/OperandHelper.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/OperandHelper.cs
@@ -59,4 +59,4 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
return new Operand(OperandType.Undefined);
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/OperandType.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/OperandType.cs
index 4d2da734..7dbd9d25 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/OperandType.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/OperandType.cs
@@ -8,6 +8,6 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
Label,
LocalVariable,
Register,
- Undefined
+ Undefined,
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Operation.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Operation.cs
index 425cfd90..f5396a88 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Operation.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/Operation.cs
@@ -62,7 +62,7 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
public Operation(Instruction inst, int index, Operand[] dests, Operand[] sources) : this(sources)
{
- Inst = inst;
+ Inst = inst;
Index = index;
if (dests != null)
@@ -286,4 +286,4 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
}
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/PhiNode.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/PhiNode.cs
index 8fa25ae9..6c95c7bd 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/PhiNode.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/PhiNode.cs
@@ -15,21 +15,21 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
public int DestsCount => _dest != null ? 1 : 0;
- private HashSet<BasicBlock> _blocks;
+ private readonly HashSet<BasicBlock> _blocks;
private class PhiSource
{
- public BasicBlock Block { get; }
- public Operand Operand { get; set; }
+ public BasicBlock Block { get; }
+ public Operand Operand { get; set; }
public PhiSource(BasicBlock block, Operand operand)
{
- Block = block;
+ Block = block;
Operand = operand;
}
}
- private List<PhiSource> _sources;
+ private readonly List<PhiSource> _sources;
public int SourcesCount => _sources.Count;
@@ -104,4 +104,4 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
_sources[index].Operand = source;
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/StorageKind.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/StorageKind.cs
index 20576a45..669c1281 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/StorageKind.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/StorageKind.cs
@@ -17,7 +17,7 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
GlobalMemoryS8, // TODO: Remove this and store type as a field on the Operation class itself.
GlobalMemoryS16, // TODO: Remove this and store type as a field on the Operation class itself.
GlobalMemoryU8, // TODO: Remove this and store type as a field on the Operation class itself.
- GlobalMemoryU16 // TODO: Remove this and store type as a field on the Operation class itself.
+ GlobalMemoryU16, // TODO: Remove this and store type as a field on the Operation class itself.
}
static class StorageKindExtensions
@@ -42,4 +42,4 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
storageKind == StorageKind.OutputPerPatch;
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/TextureFlags.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/TextureFlags.cs
index 6c20e856..51ff09cf 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/TextureFlags.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/TextureFlags.cs
@@ -1,32 +1,34 @@
using System;
+using System.Diagnostics.CodeAnalysis;
namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
{
[Flags]
+ [SuppressMessage("Design", "CA1069: Enums values should not be duplicated")]
enum TextureFlags
{
- None = 0,
- Bindless = 1 << 0,
- Gather = 1 << 1,
+ None = 0,
+ Bindless = 1 << 0,
+ Gather = 1 << 1,
Derivatives = 1 << 2,
- IntCoords = 1 << 3,
- LodBias = 1 << 4,
- LodLevel = 1 << 5,
- Offset = 1 << 6,
- Offsets = 1 << 7,
- Coherent = 1 << 8,
+ IntCoords = 1 << 3,
+ LodBias = 1 << 4,
+ LodLevel = 1 << 5,
+ Offset = 1 << 6,
+ Offsets = 1 << 7,
+ Coherent = 1 << 8,
- AtomicMask = 15 << 16,
+ AtomicMask = 15 << 16,
- Add = 0 << 16,
- Minimum = 1 << 16,
- Maximum = 2 << 16,
- Increment = 3 << 16,
- Decrement = 4 << 16,
- BitwiseAnd = 5 << 16,
- BitwiseOr = 6 << 16,
- BitwiseXor = 7 << 16,
- Swap = 8 << 16,
- CAS = 9 << 16
+ Add = 0 << 16,
+ Minimum = 1 << 16,
+ Maximum = 2 << 16,
+ Increment = 3 << 16,
+ Decrement = 4 << 16,
+ BitwiseAnd = 5 << 16,
+ BitwiseOr = 6 << 16,
+ BitwiseXor = 7 << 16,
+ Swap = 8 << 16,
+ CAS = 9 << 16,
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/TextureOperation.cs b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/TextureOperation.cs
index 6ab868cd..b467fe53 100644
--- a/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/TextureOperation.cs
+++ b/src/Ryujinx.Graphics.Shader/IntermediateRepresentation/TextureOperation.cs
@@ -66,4 +66,4 @@ namespace Ryujinx.Graphics.Shader.IntermediateRepresentation
Flags |= TextureFlags.LodLevel;
}
}
-} \ No newline at end of file
+}