From 08831eecf77cedd3c4192ebab5a9c485fb15d51e Mon Sep 17 00:00:00 2001
From: gdkchan <gab.dark.100@gmail.com>
Date: Wed, 4 Jan 2023 19:15:45 -0300
Subject: IPC refactor part 3+4: New server HIPC message processor (#4188)

* IPC refactor part 3 + 4: New server HIPC message processor with source generator based serialization

* Make types match on calls to AlignUp/AlignDown

* Formatting

* Address some PR feedback

* Move BitfieldExtensions to Ryujinx.Common.Utilities and consolidate implementations

* Rename Reader/Writer to SpanReader/SpanWriter and move to Ryujinx.Common.Memory

* Implement EventType

* Address more PR feedback

* Log request processing errors since they are not normal

* Rename waitable to multiwait and add missing lock

* PR feedback

* Ac_K PR feedback
---
 .../HOS/Kernel/Process/ProcessExecutionContext.cs      | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

(limited to 'Ryujinx.HLE/HOS/Kernel/Process/ProcessExecutionContext.cs')

diff --git a/Ryujinx.HLE/HOS/Kernel/Process/ProcessExecutionContext.cs b/Ryujinx.HLE/HOS/Kernel/Process/ProcessExecutionContext.cs
index a0841252..77fcdf33 100644
--- a/Ryujinx.HLE/HOS/Kernel/Process/ProcessExecutionContext.cs
+++ b/Ryujinx.HLE/HOS/Kernel/Process/ProcessExecutionContext.cs
@@ -7,23 +7,25 @@ namespace Ryujinx.HLE.HOS.Kernel.Process
     {
         public ulong Pc => 0UL;
 
-        public ulong CntfrqEl0 { get => 0; set { } }
+        public ulong CntfrqEl0 { get; set; }
         public ulong CntpctEl0 => 0UL;
 
-        public long TpidrEl0 { get => 0; set { } }
-        public long TpidrroEl0 { get => 0; set { } }
+        public long TpidrEl0 { get; set; }
+        public long TpidrroEl0 { get; set; }
 
-        public uint Pstate { get => 0; set { } }
+        public uint Pstate { get; set; }
 
-        public uint Fpcr { get => 0; set { } }
-        public uint Fpsr { get => 0; set { } }
+        public uint Fpcr { get; set; }
+        public uint Fpsr { get; set; }
 
         public bool IsAarch32 { get => false; set { } }
 
         public bool Running { get; private set; } = true;
 
-        public ulong GetX(int index) => 0UL;
-        public void SetX(int index, ulong value) { }
+        private readonly ulong[] _x = new ulong[32];
+
+        public ulong GetX(int index) => _x[index];
+        public void SetX(int index, ulong value) => _x[index] = value;
 
         public V128 GetV(int index) => default;
         public void SetV(int index, V128 value) { }
-- 
cgit v1.2.3-70-g09d2