diff options
| author | jhorv <38920027+jhorv@users.noreply.github.com> | 2024-02-23 19:12:24 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-02-23 21:12:24 -0300 |
| commit | 08384ee5a8d7466bf83fbff6d7c9d1076e838dba (patch) | |
| tree | c817c6baec4b9226f2f742804a0e2b2e68c29796 /src/Ryujinx.Horizon/Sdk/Sf | |
| parent | d4d0a48bfe89d6e8e12ce16829bb2c440b56007c (diff) | |
IPC code gen improvements (#6352)
* HipcGenerator: skip do-nothing call to MemoryMarshal.Cast<byte, byte>() in generated code
* HipcGenerator: fix method name typos
* HipcGenerator: make generated methods use stackalloc for `isBufferMapAlias` bool array
* HipcGenerator: make generated GetCommandHandlers() method return a FrozenDictionary<int, CommandHandler>
* HipcGenerator: return `FrozenDictionary<,>.Empty` when there are no command implementations, otherwise create `FrozenDictionary` from a `IEnumerable<KeyValuePair<,>>`` instead of a `Dictionary<,>``
Diffstat (limited to 'src/Ryujinx.Horizon/Sdk/Sf')
| -rw-r--r-- | src/Ryujinx.Horizon/Sdk/Sf/HipcCommandProcessor.cs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/Ryujinx.Horizon/Sdk/Sf/HipcCommandProcessor.cs b/src/Ryujinx.Horizon/Sdk/Sf/HipcCommandProcessor.cs index f7694a74..dc34f791 100644 --- a/src/Ryujinx.Horizon/Sdk/Sf/HipcCommandProcessor.cs +++ b/src/Ryujinx.Horizon/Sdk/Sf/HipcCommandProcessor.cs @@ -127,7 +127,7 @@ namespace Ryujinx.Horizon.Sdk.Sf return _bufferRanges[argIndex]; } - public Result ProcessBuffers(ref ServiceDispatchContext context, bool[] isBufferMapAlias, ServerMessageRuntimeMetadata runtimeMetadata) + public Result ProcessBuffers(ref ServiceDispatchContext context, scoped Span<bool> isBufferMapAlias, ServerMessageRuntimeMetadata runtimeMetadata) { bool mapAliasBuffersValid = true; @@ -246,7 +246,7 @@ namespace Ryujinx.Horizon.Sdk.Sf return mode == HipcBufferMode.Normal; } - public void SetOutBuffers(HipcMessageData response, bool[] isBufferMapAlias) + public void SetOutBuffers(HipcMessageData response, ReadOnlySpan<bool> isBufferMapAlias) { int recvPointerIndex = 0; |
