.NET Core 3.0 is here! (#784)
* .NET Core 3.0 is here!
* Remove IMemoryManager.cs and its references.
* Add T Math/F.FusedMultiplyAdd(T, T, T). Nits.
* Nit.
* Update appveyor.yml
* Revert "Resolve Visual Studio build issues"
This reverts commit 1772128ce0
.
* Update SvcTable.cs
This commit is contained in:
parent
35443bac5a
commit
eee639d6ba
208 changed files with 138 additions and 27346 deletions
|
@ -14,7 +14,7 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
|
||||
private static Dictionary<int, string> _svcFuncs64;
|
||||
|
||||
private static Action<SvcHandler, IExecutionContext>[] _svcTable64;
|
||||
private static Action<SvcHandler, ExecutionContext>[] _svcTable64;
|
||||
|
||||
static SvcTable()
|
||||
{
|
||||
|
@ -77,10 +77,10 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
{ 0x78, nameof(SvcHandler.UnmapProcessCodeMemory64) }
|
||||
};
|
||||
|
||||
_svcTable64 = new Action<SvcHandler, IExecutionContext>[0x80];
|
||||
_svcTable64 = new Action<SvcHandler, ExecutionContext>[0x80];
|
||||
}
|
||||
|
||||
public static Action<SvcHandler, IExecutionContext> GetSvcFunc(int svcId)
|
||||
public static Action<SvcHandler, ExecutionContext> GetSvcFunc(int svcId)
|
||||
{
|
||||
if (_svcTable64[svcId] != null)
|
||||
{
|
||||
|
@ -95,9 +95,9 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
return null;
|
||||
}
|
||||
|
||||
private static Action<SvcHandler, IExecutionContext> GenerateMethod(string svcName)
|
||||
private static Action<SvcHandler, ExecutionContext> GenerateMethod(string svcName)
|
||||
{
|
||||
Type[] argTypes = new Type[] { typeof(SvcHandler), typeof(IExecutionContext) };
|
||||
Type[] argTypes = new Type[] { typeof(SvcHandler), typeof(ExecutionContext) };
|
||||
|
||||
DynamicMethod method = new DynamicMethod(svcName, null, argTypes);
|
||||
|
||||
|
@ -188,7 +188,7 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
generator.Emit(OpCodes.Ldarg_1);
|
||||
generator.Emit(OpCodes.Ldc_I4, byRefArgsCount + index);
|
||||
|
||||
MethodInfo info = typeof(IExecutionContext).GetMethod(nameof(IExecutionContext.GetX));
|
||||
MethodInfo info = typeof(ExecutionContext).GetMethod(nameof(ExecutionContext.GetX));
|
||||
|
||||
generator.Emit(OpCodes.Call, info);
|
||||
|
||||
|
@ -234,7 +234,7 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
generator.Emit(OpCodes.Ldarg_1);
|
||||
generator.Emit(OpCodes.Ldc_I4, index);
|
||||
|
||||
MethodInfo info = typeof(IExecutionContext).GetMethod(nameof(IExecutionContext.GetX));
|
||||
MethodInfo info = typeof(ExecutionContext).GetMethod(nameof(ExecutionContext.GetX));
|
||||
|
||||
generator.Emit(OpCodes.Call, info);
|
||||
|
||||
|
@ -250,7 +250,7 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
generator.Emit(OpCodes.Ldarg_1);
|
||||
generator.Emit(OpCodes.Ldc_I4, byRefArgsCount + index);
|
||||
|
||||
MethodInfo info = typeof(IExecutionContext).GetMethod(nameof(IExecutionContext.GetX));
|
||||
MethodInfo info = typeof(ExecutionContext).GetMethod(nameof(ExecutionContext.GetX));
|
||||
|
||||
generator.Emit(OpCodes.Call, info);
|
||||
|
||||
|
@ -288,7 +288,7 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
|
||||
ConvertToFieldType(retType);
|
||||
|
||||
MethodInfo info = typeof(IExecutionContext).GetMethod(nameof(IExecutionContext.SetX));
|
||||
MethodInfo info = typeof(ExecutionContext).GetMethod(nameof(ExecutionContext.SetX));
|
||||
|
||||
generator.Emit(OpCodes.Call, info);
|
||||
}
|
||||
|
@ -301,7 +301,7 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
|
||||
ConvertToFieldType(locals[index].LocalType);
|
||||
|
||||
MethodInfo info = typeof(IExecutionContext).GetMethod(nameof(IExecutionContext.SetX));
|
||||
MethodInfo info = typeof(ExecutionContext).GetMethod(nameof(ExecutionContext.SetX));
|
||||
|
||||
generator.Emit(OpCodes.Call, info);
|
||||
}
|
||||
|
@ -313,14 +313,14 @@ namespace Ryujinx.HLE.HOS.Kernel.SupervisorCall
|
|||
generator.Emit(OpCodes.Ldc_I4, outRegIndex++);
|
||||
generator.Emit(OpCodes.Ldc_I8, 0L);
|
||||
|
||||
MethodInfo info = typeof(IExecutionContext).GetMethod(nameof(IExecutionContext.SetX));
|
||||
MethodInfo info = typeof(ExecutionContext).GetMethod(nameof(ExecutionContext.SetX));
|
||||
|
||||
generator.Emit(OpCodes.Call, info);
|
||||
}
|
||||
|
||||
generator.Emit(OpCodes.Ret);
|
||||
|
||||
return (Action<SvcHandler, IExecutionContext>)method.CreateDelegate(typeof(Action<SvcHandler, IExecutionContext>));
|
||||
return (Action<SvcHandler, ExecutionContext>)method.CreateDelegate(typeof(Action<SvcHandler, ExecutionContext>));
|
||||
}
|
||||
|
||||
private static void CheckIfTypeIsSupported(Type type, string svcName)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue