From 326749498bed4360e5a4b11fc67d5ec7cb9a3076 Mon Sep 17 00:00:00 2001 From: TSRBerry <20988865+TSRBerry@users.noreply.github.com> Date: Sun, 16 Jul 2023 19:31:14 +0200 Subject: [Ryujinx.HLE] Address dotnet-format issues (#5380) * dotnet format style --severity info Some changes were manually reverted. * dotnet format analyzers --serverity info Some changes have been minimally adapted. * Restore a few unused methods and variables * Silence dotnet format IDE0060 warnings * Silence dotnet format IDE0052 warnings * Address or silence dotnet format IDE1006 warnings * Address dotnet format CA1816 warnings * Address or silence dotnet format CA2208 warnings * Address or silence dotnet format CA1806 and a few CA1854 warnings * Address dotnet format CA2211 warnings * Address dotnet format CA1822 warnings * Address or silence dotnet format CA1069 warnings * Make dotnet format succeed in style mode * Address or silence dotnet format CA2211 warnings * Address review comments * Address dotnet format CA2208 warnings properly * Make ProcessResult readonly * Address most dotnet format whitespace warnings * Apply dotnet format whitespace formatting A few of them have been manually reverted and the corresponding warning was silenced * Add previously silenced warnings back I have no clue how these disappeared * Revert formatting changes for while and for-loops * Format if-blocks correctly * Run dotnet format style after rebase * Run dotnet format whitespace after rebase * Run dotnet format style after rebase * Run dotnet format analyzers after rebase * Run dotnet format after rebase and remove unused usings - analyzers - style - whitespace * Disable 'prefer switch expression' rule * Add comments to disabled warnings * Fix a few disabled warnings * Fix naming rule violation, Convert shader properties to auto-property and convert values to const * Simplify properties and array initialization, Use const when possible, Remove trailing commas * Start working on disabled warnings * Fix and silence a few dotnet-format warnings again * Run dotnet format after rebase * Use using declaration instead of block syntax * Address IDE0251 warnings * Address a few disabled IDE0060 warnings * Silence IDE0060 in .editorconfig * Revert "Simplify properties and array initialization, Use const when possible, Remove trailing commas" This reverts commit 9462e4136c0a2100dc28b20cf9542e06790aa67e. * dotnet format whitespace after rebase * First dotnet format pass * Fix naming rule violations * Fix typo * Add trailing commas, use targeted new and use array initializer * Fix build issues * Fix remaining build issues * Remove SuppressMessage for CA1069 where possible * Address dotnet format issues * Address formatting issues Co-authored-by: Ac_K * Add GetHashCode implementation for RenderingSurfaceInfo * Explicitly silence CA1822 for every affected method in Syscall * Address formatting issues in Demangler.cs * Address review feedback Co-authored-by: Ac_K * Revert marking service methods as static * Next dotnet format pass * Address review feedback --------- Co-authored-by: Ac_K --- src/Ryujinx.HLE/HOS/Ipc/IpcBuffDesc.cs | 12 +- src/Ryujinx.HLE/HOS/Ipc/IpcHandleDesc.cs | 2 +- src/Ryujinx.HLE/HOS/Ipc/IpcMagic.cs | 2 +- src/Ryujinx.HLE/HOS/Ipc/IpcMessage.cs | 142 +++++++++++------------ src/Ryujinx.HLE/HOS/Ipc/IpcMessageType.cs | 12 +- src/Ryujinx.HLE/HOS/Ipc/IpcPtrBuffDesc.cs | 18 +-- src/Ryujinx.HLE/HOS/Ipc/IpcRecvListBuffDesc.cs | 6 +- src/Ryujinx.HLE/HOS/Ipc/ServiceProcessRequest.cs | 2 +- 8 files changed, 96 insertions(+), 100 deletions(-) (limited to 'src/Ryujinx.HLE/HOS/Ipc') diff --git a/src/Ryujinx.HLE/HOS/Ipc/IpcBuffDesc.cs b/src/Ryujinx.HLE/HOS/Ipc/IpcBuffDesc.cs index b61d5697..aa917435 100644 --- a/src/Ryujinx.HLE/HOS/Ipc/IpcBuffDesc.cs +++ b/src/Ryujinx.HLE/HOS/Ipc/IpcBuffDesc.cs @@ -5,8 +5,8 @@ namespace Ryujinx.HLE.HOS.Ipc struct IpcBuffDesc { public ulong Position { get; private set; } - public ulong Size { get; private set; } - public byte Flags { get; private set; } + public ulong Size { get; private set; } + public byte Flags { get; private set; } public IpcBuffDesc(BinaryReader reader) { @@ -14,14 +14,14 @@ namespace Ryujinx.HLE.HOS.Ipc ulong word1 = reader.ReadUInt32(); ulong word2 = reader.ReadUInt32(); - Position = word1; - Position |= (word2 << 4) & 0x0f00000000; + Position = word1; + Position |= (word2 << 4) & 0x0f00000000; Position |= (word2 << 34) & 0x7000000000; - Size = word0; + Size = word0; Size |= (word2 << 8) & 0xf00000000; Flags = (byte)(word2 & 3); } } -} \ No newline at end of file +} diff --git a/src/Ryujinx.HLE/HOS/Ipc/IpcHandleDesc.cs b/src/Ryujinx.HLE/HOS/Ipc/IpcHandleDesc.cs index c7ef7e9c..887fe28e 100644 --- a/src/Ryujinx.HLE/HOS/Ipc/IpcHandleDesc.cs +++ b/src/Ryujinx.HLE/HOS/Ipc/IpcHandleDesc.cs @@ -90,4 +90,4 @@ namespace Ryujinx.HLE.HOS.Ipc return ms; } } -} \ No newline at end of file +} diff --git a/src/Ryujinx.HLE/HOS/Ipc/IpcMagic.cs b/src/Ryujinx.HLE/HOS/Ipc/IpcMagic.cs index 72770b90..05d60907 100644 --- a/src/Ryujinx.HLE/HOS/Ipc/IpcMagic.cs +++ b/src/Ryujinx.HLE/HOS/Ipc/IpcMagic.cs @@ -5,4 +5,4 @@ namespace Ryujinx.HLE.HOS.Ipc public const long Sfci = 'S' << 0 | 'F' << 8 | 'C' << 16 | 'I' << 24; public const long Sfco = 'S' << 0 | 'F' << 8 | 'C' << 16 | 'O' << 24; } -} \ No newline at end of file +} diff --git a/src/Ryujinx.HLE/HOS/Ipc/IpcMessage.cs b/src/Ryujinx.HLE/HOS/Ipc/IpcMessage.cs index 21630c42..feba09fe 100644 --- a/src/Ryujinx.HLE/HOS/Ipc/IpcMessage.cs +++ b/src/Ryujinx.HLE/HOS/Ipc/IpcMessage.cs @@ -2,7 +2,6 @@ using Microsoft.IO; using Ryujinx.Common; using Ryujinx.Common.Memory; using System; -using System.Buffers; using System.Collections.Generic; using System.Diagnostics; using System.IO; @@ -15,10 +14,10 @@ namespace Ryujinx.HLE.HOS.Ipc public IpcHandleDesc HandleDesc { get; set; } - public List PtrBuff { get; private set; } - public List SendBuff { get; private set; } - public List ReceiveBuff { get; private set; } - public List ExchangeBuff { get; private set; } + public List PtrBuff { get; private set; } + public List SendBuff { get; private set; } + public List ReceiveBuff { get; private set; } + public List ExchangeBuff { get; private set; } public List RecvListBuff { get; private set; } public List ObjectIds { get; private set; } @@ -27,9 +26,9 @@ namespace Ryujinx.HLE.HOS.Ipc public IpcMessage() { - PtrBuff = new List(0); - SendBuff = new List(0); - ReceiveBuff = new List(0); + PtrBuff = new List(0); + SendBuff = new List(0); + ReceiveBuff = new List(0); ExchangeBuff = new List(0); RecvListBuff = new List(0); @@ -38,93 +37,92 @@ namespace Ryujinx.HLE.HOS.Ipc public IpcMessage(ReadOnlySpan data, long cmdPtr) { - using (RecyclableMemoryStream ms = MemoryStreamManager.Shared.GetStream(data)) - { - BinaryReader reader = new BinaryReader(ms); + using RecyclableMemoryStream ms = MemoryStreamManager.Shared.GetStream(data); - int word0 = reader.ReadInt32(); - int word1 = reader.ReadInt32(); + BinaryReader reader = new(ms); - Type = (IpcMessageType)(word0 & 0xffff); + int word0 = reader.ReadInt32(); + int word1 = reader.ReadInt32(); - int ptrBuffCount = (word0 >> 16) & 0xf; - int sendBuffCount = (word0 >> 20) & 0xf; - int recvBuffCount = (word0 >> 24) & 0xf; - int xchgBuffCount = (word0 >> 28) & 0xf; + Type = (IpcMessageType)(word0 & 0xffff); - int rawDataSize = (word1 >> 0) & 0x3ff; - int recvListFlags = (word1 >> 10) & 0xf; - bool hndDescEnable = ((word1 >> 31) & 0x1) != 0; + int ptrBuffCount = (word0 >> 16) & 0xf; + int sendBuffCount = (word0 >> 20) & 0xf; + int recvBuffCount = (word0 >> 24) & 0xf; + int xchgBuffCount = (word0 >> 28) & 0xf; - if (hndDescEnable) - { - HandleDesc = new IpcHandleDesc(reader); - } + int rawDataSize = (word1 >> 0) & 0x3ff; + int recvListFlags = (word1 >> 10) & 0xf; + bool hndDescEnable = ((word1 >> 31) & 0x1) != 0; - PtrBuff = new List(ptrBuffCount); + if (hndDescEnable) + { + HandleDesc = new IpcHandleDesc(reader); + } - for (int index = 0; index < ptrBuffCount; index++) - { - PtrBuff.Add(new IpcPtrBuffDesc(reader)); - } + PtrBuff = new List(ptrBuffCount); - static List ReadBuff(BinaryReader reader, int count) + for (int index = 0; index < ptrBuffCount; index++) + { + PtrBuff.Add(new IpcPtrBuffDesc(reader)); + } + + static List ReadBuff(BinaryReader reader, int count) + { + List buff = new(count); + + for (int index = 0; index < count; index++) { - List buff = new List(count); - - for (int index = 0; index < count; index++) - { - buff.Add(new IpcBuffDesc(reader)); - } - - return buff; + buff.Add(new IpcBuffDesc(reader)); } - SendBuff = ReadBuff(reader, sendBuffCount); - ReceiveBuff = ReadBuff(reader, recvBuffCount); - ExchangeBuff = ReadBuff(reader, xchgBuffCount); + return buff; + } + + SendBuff = ReadBuff(reader, sendBuffCount); + ReceiveBuff = ReadBuff(reader, recvBuffCount); + ExchangeBuff = ReadBuff(reader, xchgBuffCount); - rawDataSize *= 4; + rawDataSize *= 4; - long recvListPos = reader.BaseStream.Position + rawDataSize; + long recvListPos = reader.BaseStream.Position + rawDataSize; // Only CMIF has the padding requirements. if (Type < IpcMessageType.TipcCloseSession) { long pad0 = GetPadSize16(reader.BaseStream.Position + cmdPtr); - if (rawDataSize != 0) - { - rawDataSize -= (int)pad0; - } - - reader.BaseStream.Seek(pad0, SeekOrigin.Current); + if (rawDataSize != 0) + { + rawDataSize -= (int)pad0; } - int recvListCount = recvListFlags - 2; + reader.BaseStream.Seek(pad0, SeekOrigin.Current); + } - if (recvListCount == 0) - { - recvListCount = 1; - } - else if (recvListCount < 0) - { - recvListCount = 0; - } + int recvListCount = recvListFlags - 2; - RawData = reader.ReadBytes(rawDataSize); + if (recvListCount == 0) + { + recvListCount = 1; + } + else if (recvListCount < 0) + { + recvListCount = 0; + } - reader.BaseStream.Seek(recvListPos, SeekOrigin.Begin); + RawData = reader.ReadBytes(rawDataSize); - RecvListBuff = new List(recvListCount); + reader.BaseStream.Seek(recvListPos, SeekOrigin.Begin); - for (int index = 0; index < recvListCount; index++) - { - RecvListBuff.Add(new IpcRecvListBuffDesc(reader.ReadUInt64())); - } + RecvListBuff = new List(recvListCount); - ObjectIds = new List(0); + for (int index = 0; index < recvListCount; index++) + { + RecvListBuff.Add(new IpcRecvListBuffDesc(reader.ReadUInt64())); } + + ObjectIds = new List(0); } public RecyclableMemoryStream GetStream(long cmdPtr, ulong recvListAddr) @@ -134,10 +132,10 @@ namespace Ryujinx.HLE.HOS.Ipc int word0; int word1; - word0 = (int)Type; - word0 |= (PtrBuff.Count & 0xf) << 16; - word0 |= (SendBuff.Count & 0xf) << 20; - word0 |= (ReceiveBuff.Count & 0xf) << 24; + word0 = (int)Type; + word0 |= (PtrBuff.Count & 0xf) << 16; + word0 |= (SendBuff.Count & 0xf) << 20; + word0 |= (ReceiveBuff.Count & 0xf) << 24; word0 |= (ExchangeBuff.Count & 0xf) << 28; using RecyclableMemoryStream handleDataStream = HandleDesc?.GetStream(); @@ -238,7 +236,7 @@ namespace Ryujinx.HLE.HOS.Ipc return ms; } - private long GetPadSize16(long position) + private static long GetPadSize16(long position) { if ((position & 0xf) != 0) { diff --git a/src/Ryujinx.HLE/HOS/Ipc/IpcMessageType.cs b/src/Ryujinx.HLE/HOS/Ipc/IpcMessageType.cs index 1c862248..1391569c 100644 --- a/src/Ryujinx.HLE/HOS/Ipc/IpcMessageType.cs +++ b/src/Ryujinx.HLE/HOS/Ipc/IpcMessageType.cs @@ -2,12 +2,12 @@ namespace Ryujinx.HLE.HOS.Ipc { enum IpcMessageType { - CmifResponse = 0, - CmifCloseSession = 2, - CmifRequest = 4, - CmifControl = 5, + CmifResponse = 0, + CmifCloseSession = 2, + CmifRequest = 4, + CmifControl = 5, CmifRequestWithContext = 6, CmifControlWithContext = 7, - TipcCloseSession = 0xF + TipcCloseSession = 0xF, } -} \ No newline at end of file +} diff --git a/src/Ryujinx.HLE/HOS/Ipc/IpcPtrBuffDesc.cs b/src/Ryujinx.HLE/HOS/Ipc/IpcPtrBuffDesc.cs index 05798fe1..7ea2af0a 100644 --- a/src/Ryujinx.HLE/HOS/Ipc/IpcPtrBuffDesc.cs +++ b/src/Ryujinx.HLE/HOS/Ipc/IpcPtrBuffDesc.cs @@ -5,8 +5,8 @@ namespace Ryujinx.HLE.HOS.Ipc struct IpcPtrBuffDesc { public ulong Position { get; private set; } - public uint Index { get; private set; } - public ulong Size { get; private set; } + public uint Index { get; private set; } + public ulong Size { get; private set; } public IpcPtrBuffDesc(ulong position, uint index, ulong size) { @@ -20,26 +20,26 @@ namespace Ryujinx.HLE.HOS.Ipc ulong word0 = reader.ReadUInt32(); ulong word1 = reader.ReadUInt32(); - Position = word1; + Position = word1; Position |= (word0 << 20) & 0x0f00000000; Position |= (word0 << 30) & 0x7000000000; - Index = ((uint)word0 >> 0) & 0x03f; + Index = ((uint)word0 >> 0) & 0x03f; Index |= ((uint)word0 >> 3) & 0x1c0; Size = (ushort)(word0 >> 16); } - public IpcPtrBuffDesc WithSize(ulong size) + public readonly IpcPtrBuffDesc WithSize(ulong size) { return new IpcPtrBuffDesc(Position, Index, size); } - public uint GetWord0() + public readonly uint GetWord0() { uint word0; - word0 = (uint)((Position & 0x0f00000000) >> 20); + word0 = (uint)((Position & 0x0f00000000) >> 20); word0 |= (uint)((Position & 0x7000000000) >> 30); word0 |= (Index & 0x03f) << 0; @@ -50,9 +50,9 @@ namespace Ryujinx.HLE.HOS.Ipc return word0; } - public uint GetWord1() + public readonly uint GetWord1() { return (uint)Position; } } -} \ No newline at end of file +} diff --git a/src/Ryujinx.HLE/HOS/Ipc/IpcRecvListBuffDesc.cs b/src/Ryujinx.HLE/HOS/Ipc/IpcRecvListBuffDesc.cs index bcc9d8f8..f74f81c7 100644 --- a/src/Ryujinx.HLE/HOS/Ipc/IpcRecvListBuffDesc.cs +++ b/src/Ryujinx.HLE/HOS/Ipc/IpcRecvListBuffDesc.cs @@ -1,11 +1,9 @@ -using System.IO; - namespace Ryujinx.HLE.HOS.Ipc { struct IpcRecvListBuffDesc { public ulong Position { get; private set; } - public ulong Size { get; private set; } + public ulong Size { get; private set; } public IpcRecvListBuffDesc(ulong position, ulong size) { @@ -20,4 +18,4 @@ namespace Ryujinx.HLE.HOS.Ipc Size = (ushort)(packedValue >> 48); } } -} \ No newline at end of file +} diff --git a/src/Ryujinx.HLE/HOS/Ipc/ServiceProcessRequest.cs b/src/Ryujinx.HLE/HOS/Ipc/ServiceProcessRequest.cs index b3aaa219..556b3df4 100644 --- a/src/Ryujinx.HLE/HOS/Ipc/ServiceProcessRequest.cs +++ b/src/Ryujinx.HLE/HOS/Ipc/ServiceProcessRequest.cs @@ -1,4 +1,4 @@ namespace Ryujinx.HLE.HOS.Ipc { delegate long ServiceProcessRequest(ServiceCtx context); -} \ No newline at end of file +} -- cgit v1.2.3