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 AsSpan()[index]; public Span<uint> AsSpan() => MemoryMarshal.CreateSpan(ref _e0, 256); } }