diff options
| author | gdkchan <gab.dark.100@gmail.com> | 2019-01-31 09:43:24 -0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-01-31 09:43:24 -0300 |
| commit | e10ff17e2d87b818d340947367d2d1a4276a0d06 (patch) | |
| tree | 3b07aa92c5d8acff81d43ddb1ded48c4c7917b72 /Ryujinx.Graphics/Gal/Shader/ShaderIrOperGpr.cs | |
| parent | c81abdde4c48c607669580ef769776623b86dcc7 (diff) | |
Initial support for shader half float instructions (#507)
Diffstat (limited to 'Ryujinx.Graphics/Gal/Shader/ShaderIrOperGpr.cs')
| -rw-r--r-- | Ryujinx.Graphics/Gal/Shader/ShaderIrOperGpr.cs | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/Ryujinx.Graphics/Gal/Shader/ShaderIrOperGpr.cs b/Ryujinx.Graphics/Gal/Shader/ShaderIrOperGpr.cs index 9dd196e6..b4a5cab4 100644 --- a/Ryujinx.Graphics/Gal/Shader/ShaderIrOperGpr.cs +++ b/Ryujinx.Graphics/Gal/Shader/ShaderIrOperGpr.cs @@ -6,13 +6,26 @@ namespace Ryujinx.Graphics.Gal.Shader public bool IsConst => Index == ZRIndex; - public bool IsValidRegister => (Index <= ZRIndex); + public bool IsValidRegister => (uint)Index <= ZRIndex; - public int Index { get; set; } + public int Index { get; set; } + public int HalfPart { get; set; } + + public ShaderRegisterSize RegisterSize { get; private set; } public ShaderIrOperGpr(int Index) { this.Index = Index; + + RegisterSize = ShaderRegisterSize.Single; + } + + public ShaderIrOperGpr(int Index, int HalfPart) + { + this.Index = Index; + this.HalfPart = HalfPart; + + RegisterSize = ShaderRegisterSize.Half; } public static ShaderIrOperGpr MakeTemporary(int Index = 0) |
