diff options
| author | gdkchan <gab.dark.100@gmail.com> | 2020-04-21 20:35:28 -0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-04-22 09:35:28 +1000 |
| commit | 03711dd7b5d44e20fb45c728803ea6b9599dec87 (patch) | |
| tree | 2930956a377d9f79df2750aa06ce1f1928cd30e6 /Ryujinx.Graphics.Shader/CodeGen/Glsl/Instructions/InstGen.cs | |
| parent | 4738113f293ac2477a553225a24b6c489c6855f1 (diff) | |
Implement SULD shader instruction (#1117)
* Implement SULD shader instruction
* Some nits
Diffstat (limited to 'Ryujinx.Graphics.Shader/CodeGen/Glsl/Instructions/InstGen.cs')
| -rw-r--r-- | Ryujinx.Graphics.Shader/CodeGen/Glsl/Instructions/InstGen.cs | 36 |
1 files changed, 20 insertions, 16 deletions
diff --git a/Ryujinx.Graphics.Shader/CodeGen/Glsl/Instructions/InstGen.cs b/Ryujinx.Graphics.Shader/CodeGen/Glsl/Instructions/InstGen.cs index fe982770..f1537c3d 100644 --- a/Ryujinx.Graphics.Shader/CodeGen/Glsl/Instructions/InstGen.cs +++ b/Ryujinx.Graphics.Shader/CodeGen/Glsl/Instructions/InstGen.cs @@ -4,6 +4,7 @@ using System; using static Ryujinx.Graphics.Shader.CodeGen.Glsl.Instructions.InstGenHelper; using static Ryujinx.Graphics.Shader.CodeGen.Glsl.Instructions.InstGenMemory; +using static Ryujinx.Graphics.Shader.CodeGen.Glsl.Instructions.InstGenPacking; using static Ryujinx.Graphics.Shader.StructuredIr.InstructionInfo; namespace Ryujinx.Graphics.Shader.CodeGen.Glsl.Instructions @@ -115,53 +116,56 @@ namespace Ryujinx.Graphics.Shader.CodeGen.Glsl.Instructions { switch (inst) { + case Instruction.ImageLoad: + return ImageLoadOrStore(context, operation); + case Instruction.ImageStore: - return InstGenMemory.ImageStore(context, operation); + return ImageLoadOrStore(context, operation); case Instruction.LoadAttribute: - return InstGenMemory.LoadAttribute(context, operation); + return LoadAttribute(context, operation); case Instruction.LoadConstant: - return InstGenMemory.LoadConstant(context, operation); + return LoadConstant(context, operation); case Instruction.LoadLocal: - return InstGenMemory.LoadLocal(context, operation); + return LoadLocal(context, operation); case Instruction.LoadShared: - return InstGenMemory.LoadShared(context, operation); + return LoadShared(context, operation); case Instruction.LoadStorage: - return InstGenMemory.LoadStorage(context, operation); + return LoadStorage(context, operation); case Instruction.Lod: - return InstGenMemory.Lod(context, operation); + return Lod(context, operation); case Instruction.PackDouble2x32: - return InstGenPacking.PackDouble2x32(context, operation); + return PackDouble2x32(context, operation); case Instruction.PackHalf2x16: - return InstGenPacking.PackHalf2x16(context, operation); + return PackHalf2x16(context, operation); case Instruction.StoreLocal: - return InstGenMemory.StoreLocal(context, operation); + return StoreLocal(context, operation); case Instruction.StoreShared: - return InstGenMemory.StoreShared(context, operation); + return StoreShared(context, operation); case Instruction.StoreStorage: - return InstGenMemory.StoreStorage(context, operation); + return StoreStorage(context, operation); case Instruction.TextureSample: - return InstGenMemory.TextureSample(context, operation); + return TextureSample(context, operation); case Instruction.TextureSize: - return InstGenMemory.TextureSize(context, operation); + return TextureSize(context, operation); case Instruction.UnpackDouble2x32: - return InstGenPacking.UnpackDouble2x32(context, operation); + return UnpackDouble2x32(context, operation); case Instruction.UnpackHalf2x16: - return InstGenPacking.UnpackHalf2x16(context, operation); + return UnpackHalf2x16(context, operation); } } |
