aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.Gpu/Engine/MmeShadowScratch.cs
blob: a32956168b5333b13d9c08e13510670cf9e4b90e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
using System;
using System.Runtime.InteropServices;

namespace Ryujinx.Graphics.Gpu.Engine
{
    /// <summary>
    /// Represents temporary storage used by macros.
    /// </summary>
    [StructLayout(LayoutKind.Sequential, Size = 1024)]
    struct MmeShadowScratch
    {
#pragma warning disable CS0169
        private uint _e0;
#pragma warning restore CS0169
        public ref uint this[int index] => ref ToSpan()[index];
        public Span<uint> ToSpan() => MemoryMarshal.CreateSpan(ref _e0, 256);
    }
}