aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/Kernel/SupervisorCall/ThreadContext.cs
diff options
context:
space:
mode:
authorMary <me@thog.eu>2022-01-29 22:18:03 +0100
committerGitHub <noreply@github.com>2022-01-29 22:18:03 +0100
commit20ce37dee6158ede18ad699338ecea083728423b (patch)
tree368333cced7160a272e1f29f92d99b9b48ae3199 /Ryujinx.HLE/HOS/Kernel/SupervisorCall/ThreadContext.cs
parentc52158b73361bd25364c23c2b39780d2e626c858 (diff)
kernel: A bit of refactoring and fix GetThreadContext3 correctness (#3042)1.1.12
* Start refactoring kernel a bit and import some changes from kernel decoupling PR * kernel: Put output always at the start in Syscall functions * kernel: Rewrite GetThreadContext3 to use a structure and to be accurate * kernel: make KernelTransfer use generic types and simplify * Fix some warning and do not use getters on MemoryInfo * Address gdkchan's comment * GetThreadContext3: use correct pause flag
Diffstat (limited to 'Ryujinx.HLE/HOS/Kernel/SupervisorCall/ThreadContext.cs')
-rw-r--r--Ryujinx.HLE/HOS/Kernel/SupervisorCall/ThreadContext.cs22
1 files changed, 22 insertions, 0 deletions
diff --git a/Ryujinx.HLE/HOS/Kernel/SupervisorCall/ThreadContext.cs b/Ryujinx.HLE/HOS/Kernel/SupervisorCall/ThreadContext.cs
new file mode 100644
index 00000000..b524406a
--- /dev/null
+++ b/Ryujinx.HLE/HOS/Kernel/SupervisorCall/ThreadContext.cs
@@ -0,0 +1,22 @@
+using ARMeilleure.State;
+using Ryujinx.Common.Memory;
+
+namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
+{
+ struct ThreadContext
+ {
+ public Array29<ulong> Registers;
+ public ulong Fp;
+ public ulong Lr;
+ public ulong Sp;
+ public ulong Pc;
+ public uint Pstate;
+#pragma warning disable CS0169
+ private uint _padding;
+#pragma warning restore CS0169
+ public Array32<V128> FpuRegisters;
+ public uint Fpcr;
+ public uint Fpsr;
+ public ulong Tpidr;
+ }
+}