Jelajahi Sumber

Removing shift by 0 (#5249)

* Integral numbers should not be shifted by zero or more than their number of bits-1

* more
Marco Carvalho 2 tahun lalu
induk
melakukan
86de288142

+ 50 - 50
src/Ryujinx.Graphics.Gpu/Engine/Compute/ComputeClassState.cs

@@ -100,22 +100,22 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
     {
 #pragma warning disable CS0649
         public uint SetObject;
-        public int SetObjectClassId => (int)((SetObject >> 0) & 0xFFFF);
+        public int SetObjectClassId => (int)(SetObject & 0xFFFF);
         public int SetObjectEngineId => (int)((SetObject >> 16) & 0x1F);
         public fixed uint Reserved04[63];
         public uint NoOperation;
         public uint SetNotifyA;
-        public int SetNotifyAAddressUpper => (int)((SetNotifyA >> 0) & 0xFF);
+        public int SetNotifyAAddressUpper => (int)(SetNotifyA & 0xFF);
         public uint SetNotifyB;
         public uint Notify;
         public NotifyType NotifyType => (NotifyType)(Notify);
         public uint WaitForIdle;
         public fixed uint Reserved114[7];
         public uint SetGlobalRenderEnableA;
-        public int SetGlobalRenderEnableAOffsetUpper => (int)((SetGlobalRenderEnableA >> 0) & 0xFF);
+        public int SetGlobalRenderEnableAOffsetUpper => (int)(SetGlobalRenderEnableA & 0xFF);
         public uint SetGlobalRenderEnableB;
         public uint SetGlobalRenderEnableC;
-        public int SetGlobalRenderEnableCMode => (int)((SetGlobalRenderEnableC >> 0) & 0x7);
+        public int SetGlobalRenderEnableCMode => (int)(SetGlobalRenderEnableC & 0x7);
         public uint SendGoIdle;
         public uint PmTrigger;
         public uint PmTriggerWfi;
@@ -126,11 +126,11 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public uint LineLengthIn;
         public uint LineCount;
         public uint OffsetOutUpper;
-        public int OffsetOutUpperValue => (int)((OffsetOutUpper >> 0) & 0xFF);
+        public int OffsetOutUpperValue => (int)(OffsetOutUpper & 0xFF);
         public uint OffsetOut;
         public uint PitchOut;
         public uint SetDstBlockSize;
-        public SetDstBlockSizeWidth SetDstBlockSizeWidth => (SetDstBlockSizeWidth)((SetDstBlockSize >> 0) & 0xF);
+        public SetDstBlockSizeWidth SetDstBlockSizeWidth => (SetDstBlockSizeWidth)(SetDstBlockSize & 0xF);
         public SetDstBlockSizeHeight SetDstBlockSizeHeight => (SetDstBlockSizeHeight)((SetDstBlockSize >> 4) & 0xF);
         public SetDstBlockSizeDepth SetDstBlockSizeDepth => (SetDstBlockSizeDepth)((SetDstBlockSize >> 8) & 0xF);
         public uint SetDstWidth;
@@ -138,11 +138,11 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public uint SetDstDepth;
         public uint SetDstLayer;
         public uint SetDstOriginBytesX;
-        public int SetDstOriginBytesXV => (int)((SetDstOriginBytesX >> 0) & 0xFFFFF);
+        public int SetDstOriginBytesXV => (int)(SetDstOriginBytesX & 0xFFFFF);
         public uint SetDstOriginSamplesY;
-        public int SetDstOriginSamplesYV => (int)((SetDstOriginSamplesY >> 0) & 0xFFFF);
+        public int SetDstOriginSamplesYV => (int)(SetDstOriginSamplesY & 0xFFFF);
         public uint LaunchDma;
-        public LaunchDmaDstMemoryLayout LaunchDmaDstMemoryLayout => (LaunchDmaDstMemoryLayout)((LaunchDma >> 0) & 0x1);
+        public LaunchDmaDstMemoryLayout LaunchDmaDstMemoryLayout => (LaunchDmaDstMemoryLayout)(LaunchDma & 0x1);
         public LaunchDmaCompletionType LaunchDmaCompletionType => (LaunchDmaCompletionType)((LaunchDma >> 4) & 0x3);
         public LaunchDmaInterruptType LaunchDmaInterruptType => (LaunchDmaInterruptType)((LaunchDma >> 8) & 0x3);
         public LaunchDmaSemaphoreStructSize LaunchDmaSemaphoreStructSize => (LaunchDmaSemaphoreStructSize)((LaunchDma >> 12) & 0x1);
@@ -153,7 +153,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public uint LoadInlineData;
         public fixed uint Reserved1B8[9];
         public uint SetI2mSemaphoreA;
-        public int SetI2mSemaphoreAOffsetUpper => (int)((SetI2mSemaphoreA >> 0) & 0xFF);
+        public int SetI2mSemaphoreAOffsetUpper => (int)(SetI2mSemaphoreA & 0xFF);
         public uint SetI2mSemaphoreB;
         public uint SetI2mSemaphoreC;
         public fixed uint Reserved1E8[2];
@@ -162,7 +162,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public uint SetI2mSpareNoop02;
         public uint SetI2mSpareNoop03;
         public uint SetValidSpanOverflowAreaA;
-        public int SetValidSpanOverflowAreaAAddressUpper => (int)((SetValidSpanOverflowAreaA >> 0) & 0xFF);
+        public int SetValidSpanOverflowAreaAAddressUpper => (int)(SetValidSpanOverflowAreaA & 0xFF);
         public uint SetValidSpanOverflowAreaB;
         public uint SetValidSpanOverflowAreaC;
         public uint SetCoalesceWaitingPeriodUnit;
@@ -185,12 +185,12 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public uint SetReservedSwMethod06;
         public uint SetReservedSwMethod07;
         public uint SetCwdControl;
-        public SetCwdControlSmSelection SetCwdControlSmSelection => (SetCwdControlSmSelection)((SetCwdControl >> 0) & 0x1);
+        public SetCwdControlSmSelection SetCwdControlSmSelection => (SetCwdControlSmSelection)(SetCwdControl & 0x1);
         public uint InvalidateTextureHeaderCacheNoWfi;
-        public InvalidateCacheLines InvalidateTextureHeaderCacheNoWfiLines => (InvalidateCacheLines)((InvalidateTextureHeaderCacheNoWfi >> 0) & 0x1);
+        public InvalidateCacheLines InvalidateTextureHeaderCacheNoWfiLines => (InvalidateCacheLines)(InvalidateTextureHeaderCacheNoWfi & 0x1);
         public int InvalidateTextureHeaderCacheNoWfiTag => (int)((InvalidateTextureHeaderCacheNoWfi >> 4) & 0x3FFFFF);
         public uint SetCwdRefCounter;
-        public int SetCwdRefCounterSelect => (int)((SetCwdRefCounter >> 0) & 0x3F);
+        public int SetCwdRefCounterSelect => (int)(SetCwdRefCounter & 0x3F);
         public int SetCwdRefCounterValue => (int)((SetCwdRefCounter >> 8) & 0xFFFF);
         public uint SetReservedSwMethod08;
         public uint SetReservedSwMethod09;
@@ -201,28 +201,28 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public uint SetReservedSwMethod14;
         public uint SetReservedSwMethod15;
         public uint SetGwcScgType;
-        public SetGwcScgTypeScgType SetGwcScgTypeScgType => (SetGwcScgTypeScgType)((SetGwcScgType >> 0) & 0x1);
+        public SetGwcScgTypeScgType SetGwcScgTypeScgType => (SetGwcScgTypeScgType)(SetGwcScgType & 0x1);
         public uint SetScgControl;
-        public int SetScgControlCompute1MaxSmCount => (int)((SetScgControl >> 0) & 0x1FF);
+        public int SetScgControlCompute1MaxSmCount => (int)(SetScgControl & 0x1FF);
         public uint InvalidateConstantBufferCacheA;
-        public int InvalidateConstantBufferCacheAAddressUpper => (int)((InvalidateConstantBufferCacheA >> 0) & 0xFF);
+        public int InvalidateConstantBufferCacheAAddressUpper => (int)(InvalidateConstantBufferCacheA & 0xFF);
         public uint InvalidateConstantBufferCacheB;
         public uint InvalidateConstantBufferCacheC;
-        public int InvalidateConstantBufferCacheCByteCount => (int)((InvalidateConstantBufferCacheC >> 0) & 0x1FFFF);
+        public int InvalidateConstantBufferCacheCByteCount => (int)(InvalidateConstantBufferCacheC & 0x1FFFF);
         public bool InvalidateConstantBufferCacheCThruL2 => (InvalidateConstantBufferCacheC & 0x80000000) != 0;
         public uint SetComputeClassVersion;
-        public int SetComputeClassVersionCurrent => (int)((SetComputeClassVersion >> 0) & 0xFFFF);
+        public int SetComputeClassVersionCurrent => (int)(SetComputeClassVersion & 0xFFFF);
         public int SetComputeClassVersionOldestSupported => (int)((SetComputeClassVersion >> 16) & 0xFFFF);
         public uint CheckComputeClassVersion;
-        public int CheckComputeClassVersionCurrent => (int)((CheckComputeClassVersion >> 0) & 0xFFFF);
+        public int CheckComputeClassVersionCurrent => (int)(CheckComputeClassVersion & 0xFFFF);
         public int CheckComputeClassVersionOldestSupported => (int)((CheckComputeClassVersion >> 16) & 0xFFFF);
         public uint SetQmdVersion;
-        public int SetQmdVersionCurrent => (int)((SetQmdVersion >> 0) & 0xFFFF);
+        public int SetQmdVersionCurrent => (int)(SetQmdVersion & 0xFFFF);
         public int SetQmdVersionOldestSupported => (int)((SetQmdVersion >> 16) & 0xFFFF);
         public uint SetWfiConfig;
         public bool SetWfiConfigEnableScgTypeWfi => (SetWfiConfig & 0x1) != 0;
         public uint CheckQmdVersion;
-        public int CheckQmdVersionCurrent => (int)((CheckQmdVersion >> 0) & 0xFFFF);
+        public int CheckQmdVersionCurrent => (int)(CheckQmdVersion & 0xFFFF);
         public int CheckQmdVersionOldestSupported => (int)((CheckQmdVersion >> 16) & 0xFFFF);
         public uint WaitForIdleScgType;
         public uint InvalidateSkedCaches;
@@ -231,28 +231,28 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public bool SetScgRenderEnableControlCompute1UsesRenderEnable => (SetScgRenderEnableControl & 0x1) != 0;
         public fixed uint Reserved2A0[4];
         public uint SetCwdSlotCount;
-        public int SetCwdSlotCountV => (int)((SetCwdSlotCount >> 0) & 0xFF);
+        public int SetCwdSlotCountV => (int)(SetCwdSlotCount & 0xFF);
         public uint SendPcasA;
         public uint SendPcasB;
-        public int SendPcasBFrom => (int)((SendPcasB >> 0) & 0xFFFFFF);
+        public int SendPcasBFrom => (int)(SendPcasB & 0xFFFFFF);
         public int SendPcasBDelta => (int)((SendPcasB >> 24) & 0xFF);
         public uint SendSignalingPcasB;
         public bool SendSignalingPcasBInvalidate => (SendSignalingPcasB & 0x1) != 0;
         public bool SendSignalingPcasBSchedule => (SendSignalingPcasB & 0x2) != 0;
         public fixed uint Reserved2C0[9];
         public uint SetShaderLocalMemoryNonThrottledA;
-        public int SetShaderLocalMemoryNonThrottledASizeUpper => (int)((SetShaderLocalMemoryNonThrottledA >> 0) & 0xFF);
+        public int SetShaderLocalMemoryNonThrottledASizeUpper => (int)(SetShaderLocalMemoryNonThrottledA & 0xFF);
         public uint SetShaderLocalMemoryNonThrottledB;
         public uint SetShaderLocalMemoryNonThrottledC;
-        public int SetShaderLocalMemoryNonThrottledCMaxSmCount => (int)((SetShaderLocalMemoryNonThrottledC >> 0) & 0x1FF);
+        public int SetShaderLocalMemoryNonThrottledCMaxSmCount => (int)(SetShaderLocalMemoryNonThrottledC & 0x1FF);
         public uint SetShaderLocalMemoryThrottledA;
-        public int SetShaderLocalMemoryThrottledASizeUpper => (int)((SetShaderLocalMemoryThrottledA >> 0) & 0xFF);
+        public int SetShaderLocalMemoryThrottledASizeUpper => (int)(SetShaderLocalMemoryThrottledA & 0xFF);
         public uint SetShaderLocalMemoryThrottledB;
         public uint SetShaderLocalMemoryThrottledC;
-        public int SetShaderLocalMemoryThrottledCMaxSmCount => (int)((SetShaderLocalMemoryThrottledC >> 0) & 0x1FF);
+        public int SetShaderLocalMemoryThrottledCMaxSmCount => (int)(SetShaderLocalMemoryThrottledC & 0x1FF);
         public fixed uint Reserved2FC[5];
         public uint SetSpaVersion;
-        public int SetSpaVersionMinor => (int)((SetSpaVersion >> 0) & 0xFF);
+        public int SetSpaVersionMinor => (int)(SetSpaVersion & 0xFF);
         public int SetSpaVersionMajor => (int)((SetSpaVersion >> 8) & 0xFF);
         public fixed uint Reserved314[123];
         public uint SetFalcon00;
@@ -291,14 +291,14 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public uint SetShaderLocalMemoryWindow;
         public fixed uint Reserved780[4];
         public uint SetShaderLocalMemoryA;
-        public int SetShaderLocalMemoryAAddressUpper => (int)((SetShaderLocalMemoryA >> 0) & 0xFF);
+        public int SetShaderLocalMemoryAAddressUpper => (int)(SetShaderLocalMemoryA & 0xFF);
         public uint SetShaderLocalMemoryB;
         public fixed uint Reserved798[383];
         public uint SetShaderCacheControl;
         public bool SetShaderCacheControlIcachePrefetchEnable => (SetShaderCacheControl & 0x1) != 0;
         public fixed uint ReservedD98[19];
         public uint SetSmTimeoutInterval;
-        public int SetSmTimeoutIntervalCounterBit => (int)((SetSmTimeoutInterval >> 0) & 0x3F);
+        public int SetSmTimeoutIntervalCounterBit => (int)(SetSmTimeoutInterval & 0x3F);
         public fixed uint ReservedDE8[87];
         public uint SetSpareNoop12;
         public uint SetSpareNoop13;
@@ -324,48 +324,48 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public bool InvalidateTextureHeaderCacheAllV => (InvalidateTextureHeaderCacheAll & 0x1) != 0;
         public fixed uint Reserved1214[29];
         public uint InvalidateTextureDataCacheNoWfi;
-        public InvalidateCacheLines InvalidateTextureDataCacheNoWfiLines => (InvalidateCacheLines)((InvalidateTextureDataCacheNoWfi >> 0) & 0x1);
+        public InvalidateCacheLines InvalidateTextureDataCacheNoWfiLines => (InvalidateCacheLines)(InvalidateTextureDataCacheNoWfi & 0x1);
         public int InvalidateTextureDataCacheNoWfiTag => (int)((InvalidateTextureDataCacheNoWfi >> 4) & 0x3FFFFF);
         public fixed uint Reserved128C[7];
         public uint ActivatePerfSettingsForComputeContext;
         public bool ActivatePerfSettingsForComputeContextAll => (ActivatePerfSettingsForComputeContext & 0x1) != 0;
         public fixed uint Reserved12AC[33];
         public uint InvalidateSamplerCache;
-        public InvalidateCacheLines InvalidateSamplerCacheLines => (InvalidateCacheLines)((InvalidateSamplerCache >> 0) & 0x1);
+        public InvalidateCacheLines InvalidateSamplerCacheLines => (InvalidateCacheLines)(InvalidateSamplerCache & 0x1);
         public int InvalidateSamplerCacheTag => (int)((InvalidateSamplerCache >> 4) & 0x3FFFFF);
         public uint InvalidateTextureHeaderCache;
-        public InvalidateCacheLines InvalidateTextureHeaderCacheLines => (InvalidateCacheLines)((InvalidateTextureHeaderCache >> 0) & 0x1);
+        public InvalidateCacheLines InvalidateTextureHeaderCacheLines => (InvalidateCacheLines)(InvalidateTextureHeaderCache & 0x1);
         public int InvalidateTextureHeaderCacheTag => (int)((InvalidateTextureHeaderCache >> 4) & 0x3FFFFF);
         public uint InvalidateTextureDataCache;
-        public InvalidateCacheLines InvalidateTextureDataCacheLines => (InvalidateCacheLines)((InvalidateTextureDataCache >> 0) & 0x1);
+        public InvalidateCacheLines InvalidateTextureDataCacheLines => (InvalidateCacheLines)(InvalidateTextureDataCache & 0x1);
         public int InvalidateTextureDataCacheTag => (int)((InvalidateTextureDataCache >> 4) & 0x3FFFFF);
         public fixed uint Reserved133C[58];
         public uint InvalidateSamplerCacheNoWfi;
-        public InvalidateCacheLines InvalidateSamplerCacheNoWfiLines => (InvalidateCacheLines)((InvalidateSamplerCacheNoWfi >> 0) & 0x1);
+        public InvalidateCacheLines InvalidateSamplerCacheNoWfiLines => (InvalidateCacheLines)(InvalidateSamplerCacheNoWfi & 0x1);
         public int InvalidateSamplerCacheNoWfiTag => (int)((InvalidateSamplerCacheNoWfi >> 4) & 0x3FFFFF);
         public fixed uint Reserved1428[64];
         public uint SetShaderExceptions;
         public bool SetShaderExceptionsEnable => (SetShaderExceptions & 0x1) != 0;
         public fixed uint Reserved152C[9];
         public uint SetRenderEnableA;
-        public int SetRenderEnableAOffsetUpper => (int)((SetRenderEnableA >> 0) & 0xFF);
+        public int SetRenderEnableAOffsetUpper => (int)(SetRenderEnableA & 0xFF);
         public uint SetRenderEnableB;
         public uint SetRenderEnableC;
-        public int SetRenderEnableCMode => (int)((SetRenderEnableC >> 0) & 0x7);
+        public int SetRenderEnableCMode => (int)(SetRenderEnableC & 0x7);
         public uint SetTexSamplerPoolA;
-        public int SetTexSamplerPoolAOffsetUpper => (int)((SetTexSamplerPoolA >> 0) & 0xFF);
+        public int SetTexSamplerPoolAOffsetUpper => (int)(SetTexSamplerPoolA & 0xFF);
         public uint SetTexSamplerPoolB;
         public uint SetTexSamplerPoolC;
-        public int SetTexSamplerPoolCMaximumIndex => (int)((SetTexSamplerPoolC >> 0) & 0xFFFFF);
+        public int SetTexSamplerPoolCMaximumIndex => (int)(SetTexSamplerPoolC & 0xFFFFF);
         public fixed uint Reserved1568[3];
         public uint SetTexHeaderPoolA;
-        public int SetTexHeaderPoolAOffsetUpper => (int)((SetTexHeaderPoolA >> 0) & 0xFF);
+        public int SetTexHeaderPoolAOffsetUpper => (int)(SetTexHeaderPoolA & 0xFF);
         public uint SetTexHeaderPoolB;
         public uint SetTexHeaderPoolC;
-        public int SetTexHeaderPoolCMaximumIndex => (int)((SetTexHeaderPoolC >> 0) & 0x3FFFFF);
+        public int SetTexHeaderPoolCMaximumIndex => (int)(SetTexHeaderPoolC & 0x3FFFFF);
         public fixed uint Reserved1580[34];
         public uint SetProgramRegionA;
-        public int SetProgramRegionAAddressUpper => (int)((SetProgramRegionA >> 0) & 0xFF);
+        public int SetProgramRegionAAddressUpper => (int)(SetProgramRegionA & 0xFF);
         public uint SetProgramRegionB;
         public fixed uint Reserved1610[34];
         public uint InvalidateShaderCachesNoWfi;
@@ -374,7 +374,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public bool InvalidateShaderCachesNoWfiConstant => (InvalidateShaderCachesNoWfi & 0x1000) != 0;
         public fixed uint Reserved169C[170];
         public uint SetRenderEnableOverride;
-        public SetRenderEnableOverrideMode SetRenderEnableOverrideMode => (SetRenderEnableOverrideMode)((SetRenderEnableOverride >> 0) & 0x3);
+        public SetRenderEnableOverrideMode SetRenderEnableOverrideMode => (SetRenderEnableOverrideMode)(SetRenderEnableOverride & 0x3);
         public fixed uint Reserved1948[57];
         public uint PipeNop;
         public uint SetSpare00;
@@ -383,11 +383,11 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public uint SetSpare03;
         public fixed uint Reserved1A40[48];
         public uint SetReportSemaphoreA;
-        public int SetReportSemaphoreAOffsetUpper => (int)((SetReportSemaphoreA >> 0) & 0xFF);
+        public int SetReportSemaphoreAOffsetUpper => (int)(SetReportSemaphoreA & 0xFF);
         public uint SetReportSemaphoreB;
         public uint SetReportSemaphoreC;
         public uint SetReportSemaphoreD;
-        public SetReportSemaphoreDOperation SetReportSemaphoreDOperation => (SetReportSemaphoreDOperation)((SetReportSemaphoreD >> 0) & 0x3);
+        public SetReportSemaphoreDOperation SetReportSemaphoreDOperation => (SetReportSemaphoreDOperation)(SetReportSemaphoreD & 0x3);
         public bool SetReportSemaphoreDAwakenEnable => (SetReportSemaphoreD & 0x100000) != 0;
         public SetReportSemaphoreDStructureSize SetReportSemaphoreDStructureSize => (SetReportSemaphoreDStructureSize)((SetReportSemaphoreD >> 28) & 0x1);
         public bool SetReportSemaphoreDFlushDisable => (SetReportSemaphoreD & 0x4) != 0;
@@ -396,7 +396,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public SetReportSemaphoreDReductionFormat SetReportSemaphoreDReductionFormat => (SetReportSemaphoreDReductionFormat)((SetReportSemaphoreD >> 17) & 0x3);
         public fixed uint Reserved1B10[702];
         public uint SetBindlessTexture;
-        public int SetBindlessTextureConstantBufferSlotSelect => (int)((SetBindlessTexture >> 0) & 0x7);
+        public int SetBindlessTextureConstantBufferSlotSelect => (int)(SetBindlessTexture & 0x7);
         public uint SetTrapHandler;
         public fixed uint Reserved2610[843];
         public Array8<uint> SetShaderPerformanceCounterValueUpper;
@@ -423,11 +423,11 @@ namespace Ryujinx.Graphics.Gpu.Engine.Compute
         public bool SetShaderPerformanceCounterControlBWindowed(int i) => (SetShaderPerformanceCounterControlB[i] & 0x8) != 0;
         public int SetShaderPerformanceCounterControlBFunc(int i) => (int)((SetShaderPerformanceCounterControlB[i] >> 4) & 0xFFFF);
         public uint SetShaderPerformanceCounterTrapControl;
-        public int SetShaderPerformanceCounterTrapControlMask => (int)((SetShaderPerformanceCounterTrapControl >> 0) & 0xFF);
+        public int SetShaderPerformanceCounterTrapControlMask => (int)(SetShaderPerformanceCounterTrapControl & 0xFF);
         public uint StartShaderPerformanceCounter;
-        public int StartShaderPerformanceCounterCounterMask => (int)((StartShaderPerformanceCounter >> 0) & 0xFF);
+        public int StartShaderPerformanceCounterCounterMask => (int)(StartShaderPerformanceCounter & 0xFF);
         public uint StopShaderPerformanceCounter;
-        public int StopShaderPerformanceCounterCounterMask => (int)((StopShaderPerformanceCounter >> 0) & 0xFF);
+        public int StopShaderPerformanceCounterCounterMask => (int)(StopShaderPerformanceCounter & 0xFF);
         public fixed uint Reserved33E8[6];
         public MmeShadowScratch SetMmeShadowScratch;
 #pragma warning restore CS0649

+ 13 - 13
src/Ryujinx.Graphics.Gpu/Engine/Dma/DmaClassState.cs

@@ -186,22 +186,22 @@ namespace Ryujinx.Graphics.Gpu.Engine.Dma
         public uint PmTrigger;
         public fixed uint Reserved144[63];
         public uint SetSemaphoreA;
-        public int SetSemaphoreAUpper => (int)((SetSemaphoreA >> 0) & 0xFF);
+        public int SetSemaphoreAUpper => (int)(SetSemaphoreA & 0xFF);
         public uint SetSemaphoreB;
         public uint SetSemaphorePayload;
         public fixed uint Reserved24C[2];
         public uint SetRenderEnableA;
-        public int SetRenderEnableAUpper => (int)((SetRenderEnableA >> 0) & 0xFF);
+        public int SetRenderEnableAUpper => (int)(SetRenderEnableA & 0xFF);
         public uint SetRenderEnableB;
         public uint SetRenderEnableC;
-        public int SetRenderEnableCMode => (int)((SetRenderEnableC >> 0) & 0x7);
+        public int SetRenderEnableCMode => (int)(SetRenderEnableC & 0x7);
         public uint SetSrcPhysMode;
-        public SetPhysModeTarget SetSrcPhysModeTarget => (SetPhysModeTarget)((SetSrcPhysMode >> 0) & 0x3);
+        public SetPhysModeTarget SetSrcPhysModeTarget => (SetPhysModeTarget)(SetSrcPhysMode & 0x3);
         public uint SetDstPhysMode;
-        public SetPhysModeTarget SetDstPhysModeTarget => (SetPhysModeTarget)((SetDstPhysMode >> 0) & 0x3);
+        public SetPhysModeTarget SetDstPhysModeTarget => (SetPhysModeTarget)(SetDstPhysMode & 0x3);
         public fixed uint Reserved268[38];
         public uint LaunchDma;
-        public LaunchDmaDataTransferType LaunchDmaDataTransferType => (LaunchDmaDataTransferType)((LaunchDma >> 0) & 0x3);
+        public LaunchDmaDataTransferType LaunchDmaDataTransferType => (LaunchDmaDataTransferType)(LaunchDma & 0x3);
         public bool LaunchDmaFlushEnable => (LaunchDma & 0x4) != 0;
         public LaunchDmaSemaphoreType LaunchDmaSemaphoreType => (LaunchDmaSemaphoreType)((LaunchDma >> 3) & 0x3);
         public LaunchDmaInterruptType LaunchDmaInterruptType => (LaunchDmaInterruptType)((LaunchDma >> 5) & 0x3);
@@ -218,10 +218,10 @@ namespace Ryujinx.Graphics.Gpu.Engine.Dma
         public LaunchDmaBypassL2 LaunchDmaBypassL2 => (LaunchDmaBypassL2)((LaunchDma >> 20) & 0x1);
         public fixed uint Reserved304[63];
         public uint OffsetInUpper;
-        public int OffsetInUpperUpper => (int)((OffsetInUpper >> 0) & 0xFF);
+        public int OffsetInUpperUpper => (int)(OffsetInUpper & 0xFF);
         public uint OffsetInLower;
         public uint OffsetOutUpper;
-        public int OffsetOutUpperUpper => (int)((OffsetOutUpper >> 0) & 0xFF);
+        public int OffsetOutUpperUpper => (int)(OffsetOutUpper & 0xFF);
         public uint OffsetOutLower;
         public uint PitchIn;
         public uint PitchOut;
@@ -231,7 +231,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.Dma
         public uint SetRemapConstA;
         public uint SetRemapConstB;
         public uint SetRemapComponents;
-        public SetRemapComponentsDst SetRemapComponentsDstX => (SetRemapComponentsDst)((SetRemapComponents >> 0) & 0x7);
+        public SetRemapComponentsDst SetRemapComponentsDstX => (SetRemapComponentsDst)(SetRemapComponents & 0x7);
         public SetRemapComponentsDst SetRemapComponentsDstY => (SetRemapComponentsDst)((SetRemapComponents >> 4) & 0x7);
         public SetRemapComponentsDst SetRemapComponentsDstZ => (SetRemapComponentsDst)((SetRemapComponents >> 8) & 0x7);
         public SetRemapComponentsDst SetRemapComponentsDstW => (SetRemapComponentsDst)((SetRemapComponents >> 12) & 0x7);
@@ -239,7 +239,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.Dma
         public SetRemapComponentsNumComponents SetRemapComponentsNumSrcComponents => (SetRemapComponentsNumComponents)((SetRemapComponents >> 20) & 0x3);
         public SetRemapComponentsNumComponents SetRemapComponentsNumDstComponents => (SetRemapComponentsNumComponents)((SetRemapComponents >> 24) & 0x3);
         public uint SetDstBlockSize;
-        public SetBlockSizeWidth SetDstBlockSizeWidth => (SetBlockSizeWidth)((SetDstBlockSize >> 0) & 0xF);
+        public SetBlockSizeWidth SetDstBlockSizeWidth => (SetBlockSizeWidth)(SetDstBlockSize & 0xF);
         public SetBlockSizeHeight SetDstBlockSizeHeight => (SetBlockSizeHeight)((SetDstBlockSize >> 4) & 0xF);
         public SetBlockSizeDepth SetDstBlockSizeDepth => (SetBlockSizeDepth)((SetDstBlockSize >> 8) & 0xF);
         public SetBlockSizeGobHeight SetDstBlockSizeGobHeight => (SetBlockSizeGobHeight)((SetDstBlockSize >> 12) & 0xF);
@@ -248,11 +248,11 @@ namespace Ryujinx.Graphics.Gpu.Engine.Dma
         public uint SetDstDepth;
         public uint SetDstLayer;
         public uint SetDstOrigin;
-        public int SetDstOriginX => (int)((SetDstOrigin >> 0) & 0xFFFF);
+        public int SetDstOriginX => (int)(SetDstOrigin & 0xFFFF);
         public int SetDstOriginY => (int)((SetDstOrigin >> 16) & 0xFFFF);
         public uint Reserved724;
         public uint SetSrcBlockSize;
-        public SetBlockSizeWidth SetSrcBlockSizeWidth => (SetBlockSizeWidth)((SetSrcBlockSize >> 0) & 0xF);
+        public SetBlockSizeWidth SetSrcBlockSizeWidth => (SetBlockSizeWidth)(SetSrcBlockSize & 0xF);
         public SetBlockSizeHeight SetSrcBlockSizeHeight => (SetBlockSizeHeight)((SetSrcBlockSize >> 4) & 0xF);
         public SetBlockSizeDepth SetSrcBlockSizeDepth => (SetBlockSizeDepth)((SetSrcBlockSize >> 8) & 0xF);
         public SetBlockSizeGobHeight SetSrcBlockSizeGobHeight => (SetBlockSizeGobHeight)((SetSrcBlockSize >> 12) & 0xF);
@@ -261,7 +261,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.Dma
         public uint SetSrcDepth;
         public uint SetSrcLayer;
         public uint SetSrcOrigin;
-        public int SetSrcOriginX => (int)((SetSrcOrigin >> 0) & 0xFFFF);
+        public int SetSrcOriginX => (int)(SetSrcOrigin & 0xFFFF);
         public int SetSrcOriginY => (int)((SetSrcOrigin >> 16) & 0xFFFF);
         public fixed uint Reserved740[629];
         public uint PmTriggerEnd;

+ 1 - 1
src/Ryujinx.Graphics.Gpu/Engine/GPFifo/CompressedMethod.cs

@@ -29,7 +29,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.GPFifo
         public uint Method;
 #pragma warning restore CS0649
         public int MethodAddressOld => (int)((Method >> 2) & 0x7FF);
-        public int MethodAddress => (int)((Method >> 0) & 0xFFF);
+        public int MethodAddress => (int)(Method & 0xFFF);
         public int SubdeviceMask => (int)((Method >> 4) & 0xFFF);
         public int MethodSubchannel => (int)((Method >> 13) & 0x7);
         public TertOp TertOp => (TertOp)((Method >> 16) & 0x3);

+ 3 - 3
src/Ryujinx.Graphics.Gpu/Engine/GPFifo/GPEntry.cs

@@ -39,17 +39,17 @@ namespace Ryujinx.Graphics.Gpu.Engine.GPFifo
 #pragma warning disable CS0649
         public uint Entry0;
 #pragma warning restore CS0649
-        public Entry0Fetch Entry0Fetch => (Entry0Fetch)((Entry0 >> 0) & 0x1);
+        public Entry0Fetch Entry0Fetch => (Entry0Fetch)(Entry0 & 0x1);
         public int Entry0Get => (int)((Entry0 >> 2) & 0x3FFFFFFF);
         public int Entry0Operand => (int)(Entry0);
 #pragma warning disable CS0649
         public uint Entry1;
 #pragma warning restore CS0649
-        public int Entry1GetHi => (int)((Entry1 >> 0) & 0xFF);
+        public int Entry1GetHi => (int)(Entry1 & 0xFF);
         public Entry1Priv Entry1Priv => (Entry1Priv)((Entry1 >> 8) & 0x1);
         public Entry1Level Entry1Level => (Entry1Level)((Entry1 >> 9) & 0x1);
         public int Entry1Length => (int)((Entry1 >> 10) & 0x1FFFFF);
         public Entry1Sync Entry1Sync => (Entry1Sync)((Entry1 >> 31) & 0x1);
-        public Entry1Opcode Entry1Opcode => (Entry1Opcode)((Entry1 >> 0) & 0xFF);
+        public Entry1Opcode Entry1Opcode => (Entry1Opcode)(Entry1 & 0xFF);
     }
 }

+ 9 - 9
src/Ryujinx.Graphics.Gpu/Engine/GPFifo/GPFifoClassState.cs

@@ -153,7 +153,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.GPFifo
     {
 #pragma warning disable CS0649
         public uint SetObject;
-        public int SetObjectNvclass => (int)((SetObject >> 0) & 0xFFFF);
+        public int SetObjectNvclass => (int)(SetObject & 0xFFFF);
         public int SetObjectEngine => (int)((SetObject >> 16) & 0x1F);
         public uint Illegal;
         public int IllegalHandle => (int)(Illegal);
@@ -161,13 +161,13 @@ namespace Ryujinx.Graphics.Gpu.Engine.GPFifo
         public int NopHandle => (int)(Nop);
         public uint Reserved0C;
         public uint Semaphorea;
-        public int SemaphoreaOffsetUpper => (int)((Semaphorea >> 0) & 0xFF);
+        public int SemaphoreaOffsetUpper => (int)(Semaphorea & 0xFF);
         public uint Semaphoreb;
         public int SemaphorebOffsetLower => (int)((Semaphoreb >> 2) & 0x3FFFFFFF);
         public uint Semaphorec;
         public int SemaphorecPayload => (int)(Semaphorec);
         public uint Semaphored;
-        public SemaphoredOperation SemaphoredOperation => (SemaphoredOperation)((Semaphored >> 0) & 0x1F);
+        public SemaphoredOperation SemaphoredOperation => (SemaphoredOperation)(Semaphored & 0x1F);
         public SemaphoredAcquireSwitch SemaphoredAcquireSwitch => (SemaphoredAcquireSwitch)((Semaphored >> 12) & 0x1);
         public SemaphoredReleaseWfi SemaphoredReleaseWfi => (SemaphoredReleaseWfi)((Semaphored >> 20) & 0x1);
         public SemaphoredReleaseSize SemaphoredReleaseSize => (SemaphoredReleaseSize)((Semaphored >> 24) & 0x1);
@@ -181,14 +181,14 @@ namespace Ryujinx.Graphics.Gpu.Engine.GPFifo
         public uint Reserved2C;
         public uint MemOpC;
         public int MemOpCOperandLow => (int)((MemOpC >> 2) & 0x3FFFFFFF);
-        public MemOpCTlbInvalidatePdb MemOpCTlbInvalidatePdb => (MemOpCTlbInvalidatePdb)((MemOpC >> 0) & 0x1);
+        public MemOpCTlbInvalidatePdb MemOpCTlbInvalidatePdb => (MemOpCTlbInvalidatePdb)(MemOpC & 0x1);
         public MemOpCTlbInvalidateGpc MemOpCTlbInvalidateGpc => (MemOpCTlbInvalidateGpc)((MemOpC >> 1) & 0x1);
         public MemOpCTlbInvalidateTarget MemOpCTlbInvalidateTarget => (MemOpCTlbInvalidateTarget)((MemOpC >> 10) & 0x3);
         public int MemOpCTlbInvalidateAddrLo => (int)((MemOpC >> 12) & 0xFFFFF);
         public uint MemOpD;
-        public int MemOpDOperandHigh => (int)((MemOpD >> 0) & 0xFF);
+        public int MemOpDOperandHigh => (int)(MemOpD & 0xFF);
         public MemOpDOperation MemOpDOperation => (MemOpDOperation)((MemOpD >> 27) & 0x1F);
-        public int MemOpDTlbInvalidateAddrHi => (int)((MemOpD >> 0) & 0xFF);
+        public int MemOpDTlbInvalidateAddrHi => (int)(MemOpD & 0xFF);
         public uint Reserved38;
         public uint Reserved3C;
         public uint Reserved40;
@@ -207,15 +207,15 @@ namespace Ryujinx.Graphics.Gpu.Engine.GPFifo
         public uint Syncpointa;
         public int SyncpointaPayload => (int)(Syncpointa);
         public uint Syncpointb;
-        public SyncpointbOperation SyncpointbOperation => (SyncpointbOperation)((Syncpointb >> 0) & 0x1);
+        public SyncpointbOperation SyncpointbOperation => (SyncpointbOperation)(Syncpointb & 0x1);
         public SyncpointbWaitSwitch SyncpointbWaitSwitch => (SyncpointbWaitSwitch)((Syncpointb >> 4) & 0x1);
         public int SyncpointbSyncptIndex => (int)((Syncpointb >> 8) & 0xFFF);
         public uint Wfi;
-        public WfiScope WfiScope => (WfiScope)((Wfi >> 0) & 0x1);
+        public WfiScope WfiScope => (WfiScope)(Wfi & 0x1);
         public uint CrcCheck;
         public int CrcCheckValue => (int)(CrcCheck);
         public uint Yield;
-        public YieldOp YieldOp => (YieldOp)((Yield >> 0) & 0x3);
+        public YieldOp YieldOp => (YieldOp)(Yield & 0x3);
         // TODO: Eventually move this to per-engine state.
         public Array31<uint> Reserved84;
         public uint NoOperation;

+ 10 - 10
src/Ryujinx.Graphics.Gpu/Engine/InlineToMemory/InlineToMemoryClassState.cs

@@ -113,22 +113,22 @@ namespace Ryujinx.Graphics.Gpu.Engine.InlineToMemory
     {
 #pragma warning disable CS0649
         public uint SetObject;
-        public int SetObjectClassId => (int)((SetObject >> 0) & 0xFFFF);
+        public int SetObjectClassId => (int)(SetObject & 0xFFFF);
         public int SetObjectEngineId => (int)((SetObject >> 16) & 0x1F);
         public fixed uint Reserved04[63];
         public uint NoOperation;
         public uint SetNotifyA;
-        public int SetNotifyAAddressUpper => (int)((SetNotifyA >> 0) & 0xFF);
+        public int SetNotifyAAddressUpper => (int)(SetNotifyA & 0xFF);
         public uint SetNotifyB;
         public uint Notify;
         public NotifyType NotifyType => (NotifyType)(Notify);
         public uint WaitForIdle;
         public fixed uint Reserved114[7];
         public uint SetGlobalRenderEnableA;
-        public int SetGlobalRenderEnableAOffsetUpper => (int)((SetGlobalRenderEnableA >> 0) & 0xFF);
+        public int SetGlobalRenderEnableAOffsetUpper => (int)(SetGlobalRenderEnableA & 0xFF);
         public uint SetGlobalRenderEnableB;
         public uint SetGlobalRenderEnableC;
-        public int SetGlobalRenderEnableCMode => (int)((SetGlobalRenderEnableC >> 0) & 0x7);
+        public int SetGlobalRenderEnableCMode => (int)(SetGlobalRenderEnableC & 0x7);
         public uint SendGoIdle;
         public uint PmTrigger;
         public uint PmTriggerWfi;
@@ -139,11 +139,11 @@ namespace Ryujinx.Graphics.Gpu.Engine.InlineToMemory
         public uint LineLengthIn;
         public uint LineCount;
         public uint OffsetOutUpper;
-        public int OffsetOutUpperValue => (int)((OffsetOutUpper >> 0) & 0xFF);
+        public int OffsetOutUpperValue => (int)(OffsetOutUpper & 0xFF);
         public uint OffsetOut;
         public uint PitchOut;
         public uint SetDstBlockSize;
-        public SetDstBlockSizeWidth SetDstBlockSizeWidth => (SetDstBlockSizeWidth)((SetDstBlockSize >> 0) & 0xF);
+        public SetDstBlockSizeWidth SetDstBlockSizeWidth => (SetDstBlockSizeWidth)(SetDstBlockSize & 0xF);
         public SetDstBlockSizeHeight SetDstBlockSizeHeight => (SetDstBlockSizeHeight)((SetDstBlockSize >> 4) & 0xF);
         public SetDstBlockSizeDepth SetDstBlockSizeDepth => (SetDstBlockSizeDepth)((SetDstBlockSize >> 8) & 0xF);
         public uint SetDstWidth;
@@ -151,11 +151,11 @@ namespace Ryujinx.Graphics.Gpu.Engine.InlineToMemory
         public uint SetDstDepth;
         public uint SetDstLayer;
         public uint SetDstOriginBytesX;
-        public int SetDstOriginBytesXV => (int)((SetDstOriginBytesX >> 0) & 0xFFFFF);
+        public int SetDstOriginBytesXV => (int)(SetDstOriginBytesX & 0xFFFFF);
         public uint SetDstOriginSamplesY;
-        public int SetDstOriginSamplesYV => (int)((SetDstOriginSamplesY >> 0) & 0xFFFF);
+        public int SetDstOriginSamplesYV => (int)(SetDstOriginSamplesY & 0xFFFF);
         public uint LaunchDma;
-        public LaunchDmaDstMemoryLayout LaunchDmaDstMemoryLayout => (LaunchDmaDstMemoryLayout)((LaunchDma >> 0) & 0x1);
+        public LaunchDmaDstMemoryLayout LaunchDmaDstMemoryLayout => (LaunchDmaDstMemoryLayout)(LaunchDma & 0x1);
         public LaunchDmaCompletionType LaunchDmaCompletionType => (LaunchDmaCompletionType)((LaunchDma >> 4) & 0x3);
         public LaunchDmaInterruptType LaunchDmaInterruptType => (LaunchDmaInterruptType)((LaunchDma >> 8) & 0x3);
         public LaunchDmaSemaphoreStructSize LaunchDmaSemaphoreStructSize => (LaunchDmaSemaphoreStructSize)((LaunchDma >> 12) & 0x1);
@@ -166,7 +166,7 @@ namespace Ryujinx.Graphics.Gpu.Engine.InlineToMemory
         public uint LoadInlineData;
         public fixed uint Reserved1B8[9];
         public uint SetI2mSemaphoreA;
-        public int SetI2mSemaphoreAOffsetUpper => (int)((SetI2mSemaphoreA >> 0) & 0xFF);
+        public int SetI2mSemaphoreAOffsetUpper => (int)(SetI2mSemaphoreA & 0xFF);
         public uint SetI2mSemaphoreB;
         public uint SetI2mSemaphoreC;
         public fixed uint Reserved1E8[2];

+ 10 - 10
src/Ryujinx.Graphics.Gpu/Engine/Threed/ThreedClassState.cs

@@ -746,12 +746,12 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed
     {
 #pragma warning disable CS0649
         public uint SetObject;
-        public int SetObjectClassId => (int)((SetObject >> 0) & 0xFFFF);
+        public int SetObjectClassId => (int)(SetObject & 0xFFFF);
         public int SetObjectEngineId => (int)((SetObject >> 16) & 0x1F);
         public fixed uint Reserved04[63];
         public uint NoOperation;
         public uint SetNotifyA;
-        public int SetNotifyAAddressUpper => (int)((SetNotifyA >> 0) & 0xFF);
+        public int SetNotifyAAddressUpper => (int)(SetNotifyA & 0xFF);
         public uint SetNotifyB;
         public uint Notify;
         public NotifyType NotifyType => (NotifyType)(Notify);
@@ -761,13 +761,13 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed
         public uint LoadMmeStartAddressRamPointer;
         public uint LoadMmeStartAddressRam;
         public uint SetMmeShadowRamControl;
-        public SetMmeShadowRamControlMode SetMmeShadowRamControlMode => (SetMmeShadowRamControlMode)((SetMmeShadowRamControl >> 0) & 0x3);
+        public SetMmeShadowRamControlMode SetMmeShadowRamControlMode => (SetMmeShadowRamControlMode)(SetMmeShadowRamControl & 0x3);
         public fixed uint Reserved128[2];
         public uint SetGlobalRenderEnableA;
-        public int SetGlobalRenderEnableAOffsetUpper => (int)((SetGlobalRenderEnableA >> 0) & 0xFF);
+        public int SetGlobalRenderEnableAOffsetUpper => (int)(SetGlobalRenderEnableA & 0xFF);
         public uint SetGlobalRenderEnableB;
         public uint SetGlobalRenderEnableC;
-        public int SetGlobalRenderEnableCMode => (int)((SetGlobalRenderEnableC >> 0) & 0x7);
+        public int SetGlobalRenderEnableCMode => (int)(SetGlobalRenderEnableC & 0x7);
         public uint SendGoIdle;
         public uint PmTrigger;
         public uint PmTriggerWfi;
@@ -778,11 +778,11 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed
         public uint LineLengthIn;
         public uint LineCount;
         public uint OffsetOutUpper;
-        public int OffsetOutUpperValue => (int)((OffsetOutUpper >> 0) & 0xFF);
+        public int OffsetOutUpperValue => (int)(OffsetOutUpper & 0xFF);
         public uint OffsetOut;
         public uint PitchOut;
         public uint SetDstBlockSize;
-        public SetDstBlockSizeWidth SetDstBlockSizeWidth => (SetDstBlockSizeWidth)((SetDstBlockSize >> 0) & 0xF);
+        public SetDstBlockSizeWidth SetDstBlockSizeWidth => (SetDstBlockSizeWidth)(SetDstBlockSize & 0xF);
         public SetDstBlockSizeHeight SetDstBlockSizeHeight => (SetDstBlockSizeHeight)((SetDstBlockSize >> 4) & 0xF);
         public SetDstBlockSizeDepth SetDstBlockSizeDepth => (SetDstBlockSizeDepth)((SetDstBlockSize >> 8) & 0xF);
         public uint SetDstWidth;
@@ -790,11 +790,11 @@ namespace Ryujinx.Graphics.Gpu.Engine.Threed
         public uint SetDstDepth;
         public uint SetDstLayer;
         public uint SetDstOriginBytesX;
-        public int SetDstOriginBytesXV => (int)((SetDstOriginBytesX >> 0) & 0xFFFFF);
+        public int SetDstOriginBytesXV => (int)(SetDstOriginBytesX & 0xFFFFF);
         public uint SetDstOriginSamplesY;
-        public int SetDstOriginSamplesYV => (int)((SetDstOriginSamplesY >> 0) & 0xFFFF);
+        public int SetDstOriginSamplesYV => (int)(SetDstOriginSamplesY & 0xFFFF);
         public uint LaunchDma;
-        public LaunchDmaDstMemoryLayout LaunchDmaDstMemoryLayout => (LaunchDmaDstMemoryLayout)((LaunchDma >> 0) & 0x1);
+        public LaunchDmaDstMemoryLayout LaunchDmaDstMemoryLayout => (LaunchDmaDstMemoryLayout)(LaunchDma & 0x1);
         public LaunchDmaCompletionType LaunchDmaCompletionType => (LaunchDmaCompletionType)((LaunchDma >> 4) & 0x3);
         public LaunchDmaInterruptType LaunchDmaInterruptType => (LaunchDmaInterruptType)((LaunchDma >> 8) & 0x3);
         public LaunchDmaSemaphoreStructSize LaunchDmaSemaphoreStructSize => (LaunchDmaSemaphoreStructSize)((LaunchDma >> 12) & 0x1);

+ 41 - 41
src/Ryujinx.Graphics.Gpu/Engine/Twod/TwodClassState.cs

@@ -499,12 +499,12 @@ namespace Ryujinx.Graphics.Gpu.Engine.Twod
     {
 #pragma warning disable CS0649
         public uint SetObject;
-        public int SetObjectClassId => (int)((SetObject >> 0) & 0xFFFF);
+        public int SetObjectClassId => (int)(SetObject & 0xFFFF);
         public int SetObjectEngineId => (int)((SetObject >> 16) & 0x1F);
         public fixed uint Reserved04[63];
         public uint NoOperation;
         public uint SetNotifyA;
-        public int SetNotifyAAddressUpper => (int)((SetNotifyA >> 0) & 0x1FFFFFF);
+        public int SetNotifyAAddressUpper => (int)(SetNotifyA & 0x1FFFFFF);
         public uint SetNotifyB;
         public uint Notify;
         public NotifyType NotifyType => (NotifyType)(Notify);
@@ -514,13 +514,13 @@ namespace Ryujinx.Graphics.Gpu.Engine.Twod
         public uint LoadMmeStartAddressRamPointer;
         public uint LoadMmeStartAddressRam;
         public uint SetMmeShadowRamControl;
-        public SetMmeShadowRamControlMode SetMmeShadowRamControlMode => (SetMmeShadowRamControlMode)((SetMmeShadowRamControl >> 0) & 0x3);
+        public SetMmeShadowRamControlMode SetMmeShadowRamControlMode => (SetMmeShadowRamControlMode)(SetMmeShadowRamControl & 0x3);
         public fixed uint Reserved128[2];
         public uint SetGlobalRenderEnableA;
-        public int SetGlobalRenderEnableAOffsetUpper => (int)((SetGlobalRenderEnableA >> 0) & 0xFF);
+        public int SetGlobalRenderEnableAOffsetUpper => (int)(SetGlobalRenderEnableA & 0xFF);
         public uint SetGlobalRenderEnableB;
         public uint SetGlobalRenderEnableC;
-        public int SetGlobalRenderEnableCMode => (int)((SetGlobalRenderEnableC >> 0) & 0x7);
+        public int SetGlobalRenderEnableCMode => (int)(SetGlobalRenderEnableC & 0x7);
         public uint SendGoIdle;
         public uint PmTrigger;
         public fixed uint Reserved144[3];
@@ -533,9 +533,9 @@ namespace Ryujinx.Graphics.Gpu.Engine.Twod
         public int SetMmeSwitchStateRestoreMacro => (int)((SetMmeSwitchState >> 12) & 0xFF);
         public fixed uint Reserved1F0[4];
         public uint SetDstFormat;
-        public SetDstFormatV SetDstFormatV => (SetDstFormatV)((SetDstFormat >> 0) & 0xFF);
+        public SetDstFormatV SetDstFormatV => (SetDstFormatV)(SetDstFormat & 0xFF);
         public uint SetDstMemoryLayout;
-        public SetDstMemoryLayoutV SetDstMemoryLayoutV => (SetDstMemoryLayoutV)((SetDstMemoryLayout >> 0) & 0x1);
+        public SetDstMemoryLayoutV SetDstMemoryLayoutV => (SetDstMemoryLayoutV)(SetDstMemoryLayout & 0x1);
         public uint SetDstBlockSize;
         public SetDstBlockSizeHeight SetDstBlockSizeHeight => (SetDstBlockSizeHeight)((SetDstBlockSize >> 4) & 0x7);
         public SetDstBlockSizeDepth SetDstBlockSizeDepth => (SetDstBlockSizeDepth)((SetDstBlockSize >> 8) & 0x7);
@@ -545,37 +545,37 @@ namespace Ryujinx.Graphics.Gpu.Engine.Twod
         public uint SetDstWidth;
         public uint SetDstHeight;
         public uint SetDstOffsetUpper;
-        public int SetDstOffsetUpperV => (int)((SetDstOffsetUpper >> 0) & 0xFF);
+        public int SetDstOffsetUpperV => (int)(SetDstOffsetUpper & 0xFF);
         public uint SetDstOffsetLower;
         public uint FlushAndInvalidateRopMiniCache;
         public bool FlushAndInvalidateRopMiniCacheV => (FlushAndInvalidateRopMiniCache & 0x1) != 0;
         public uint SetSpareNoop06;
         public uint SetSrcFormat;
-        public SetSrcFormatV SetSrcFormatV => (SetSrcFormatV)((SetSrcFormat >> 0) & 0xFF);
+        public SetSrcFormatV SetSrcFormatV => (SetSrcFormatV)(SetSrcFormat & 0xFF);
         public uint SetSrcMemoryLayout;
-        public SetSrcMemoryLayoutV SetSrcMemoryLayoutV => (SetSrcMemoryLayoutV)((SetSrcMemoryLayout >> 0) & 0x1);
+        public SetSrcMemoryLayoutV SetSrcMemoryLayoutV => (SetSrcMemoryLayoutV)(SetSrcMemoryLayout & 0x1);
         public uint SetSrcBlockSize;
         public SetSrcBlockSizeHeight SetSrcBlockSizeHeight => (SetSrcBlockSizeHeight)((SetSrcBlockSize >> 4) & 0x7);
         public SetSrcBlockSizeDepth SetSrcBlockSizeDepth => (SetSrcBlockSizeDepth)((SetSrcBlockSize >> 8) & 0x7);
         public uint SetSrcDepth;
         public uint TwodInvalidateTextureDataCache;
-        public TwodInvalidateTextureDataCacheV TwodInvalidateTextureDataCacheV => (TwodInvalidateTextureDataCacheV)((TwodInvalidateTextureDataCache >> 0) & 0x3);
+        public TwodInvalidateTextureDataCacheV TwodInvalidateTextureDataCacheV => (TwodInvalidateTextureDataCacheV)(TwodInvalidateTextureDataCache & 0x3);
         public uint SetSrcPitch;
         public uint SetSrcWidth;
         public uint SetSrcHeight;
         public uint SetSrcOffsetUpper;
-        public int SetSrcOffsetUpperV => (int)((SetSrcOffsetUpper >> 0) & 0xFF);
+        public int SetSrcOffsetUpperV => (int)(SetSrcOffsetUpper & 0xFF);
         public uint SetSrcOffsetLower;
         public uint SetPixelsFromMemorySectorPromotion;
-        public SetPixelsFromMemorySectorPromotionV SetPixelsFromMemorySectorPromotionV => (SetPixelsFromMemorySectorPromotionV)((SetPixelsFromMemorySectorPromotion >> 0) & 0x3);
+        public SetPixelsFromMemorySectorPromotionV SetPixelsFromMemorySectorPromotionV => (SetPixelsFromMemorySectorPromotionV)(SetPixelsFromMemorySectorPromotion & 0x3);
         public uint SetSpareNoop12;
         public uint SetNumProcessingClusters;
-        public SetNumProcessingClustersV SetNumProcessingClustersV => (SetNumProcessingClustersV)((SetNumProcessingClusters >> 0) & 0x1);
+        public SetNumProcessingClustersV SetNumProcessingClustersV => (SetNumProcessingClustersV)(SetNumProcessingClusters & 0x1);
         public uint SetRenderEnableA;
-        public int SetRenderEnableAOffsetUpper => (int)((SetRenderEnableA >> 0) & 0xFF);
+        public int SetRenderEnableAOffsetUpper => (int)(SetRenderEnableA & 0xFF);
         public uint SetRenderEnableB;
         public uint SetRenderEnableC;
-        public int SetRenderEnableCMode => (int)((SetRenderEnableC >> 0) & 0x7);
+        public int SetRenderEnableCMode => (int)(SetRenderEnableC & 0x7);
         public uint SetSpareNoop08;
         public uint SetSpareNoop01;
         public uint SetSpareNoop11;
@@ -587,25 +587,25 @@ namespace Ryujinx.Graphics.Gpu.Engine.Twod
         public uint SetClipEnable;
         public bool SetClipEnableV => (SetClipEnable & 0x1) != 0;
         public uint SetColorKeyFormat;
-        public SetColorKeyFormatV SetColorKeyFormatV => (SetColorKeyFormatV)((SetColorKeyFormat >> 0) & 0x7);
+        public SetColorKeyFormatV SetColorKeyFormatV => (SetColorKeyFormatV)(SetColorKeyFormat & 0x7);
         public uint SetColorKey;
         public uint SetColorKeyEnable;
         public bool SetColorKeyEnableV => (SetColorKeyEnable & 0x1) != 0;
         public uint SetRop;
-        public int SetRopV => (int)((SetRop >> 0) & 0xFF);
+        public int SetRopV => (int)(SetRop & 0xFF);
         public uint SetBeta1;
         public uint SetBeta4;
-        public int SetBeta4B => (int)((SetBeta4 >> 0) & 0xFF);
+        public int SetBeta4B => (int)(SetBeta4 & 0xFF);
         public int SetBeta4G => (int)((SetBeta4 >> 8) & 0xFF);
         public int SetBeta4R => (int)((SetBeta4 >> 16) & 0xFF);
         public int SetBeta4A => (int)((SetBeta4 >> 24) & 0xFF);
         public uint SetOperation;
-        public SetOperationV SetOperationV => (SetOperationV)((SetOperation >> 0) & 0x7);
+        public SetOperationV SetOperationV => (SetOperationV)(SetOperation & 0x7);
         public uint SetPatternOffset;
-        public int SetPatternOffsetX => (int)((SetPatternOffset >> 0) & 0x3F);
+        public int SetPatternOffsetX => (int)(SetPatternOffset & 0x3F);
         public int SetPatternOffsetY => (int)((SetPatternOffset >> 8) & 0x3F);
         public uint SetPatternSelect;
-        public SetPatternSelectV SetPatternSelectV => (SetPatternSelectV)((SetPatternSelect >> 0) & 0x3);
+        public SetPatternSelectV SetPatternSelectV => (SetPatternSelectV)(SetPatternSelect & 0x3);
         public uint SetDstColorRenderToZetaSurface;
         public bool SetDstColorRenderToZetaSurfaceV => (SetDstColorRenderToZetaSurface & 0x1) != 0;
         public uint SetSpareNoop04;
@@ -618,15 +618,15 @@ namespace Ryujinx.Graphics.Gpu.Engine.Twod
         public bool SetCompressionEnable => (SetCompression & 0x1) != 0;
         public uint SetSpareNoop09;
         public uint SetRenderEnableOverride;
-        public SetRenderEnableOverrideMode SetRenderEnableOverrideMode => (SetRenderEnableOverrideMode)((SetRenderEnableOverride >> 0) & 0x3);
+        public SetRenderEnableOverrideMode SetRenderEnableOverrideMode => (SetRenderEnableOverrideMode)(SetRenderEnableOverride & 0x3);
         public uint SetPixelsFromMemoryDirection;
-        public SetPixelsFromMemoryDirectionHorizontal SetPixelsFromMemoryDirectionHorizontal => (SetPixelsFromMemoryDirectionHorizontal)((SetPixelsFromMemoryDirection >> 0) & 0x3);
+        public SetPixelsFromMemoryDirectionHorizontal SetPixelsFromMemoryDirectionHorizontal => (SetPixelsFromMemoryDirectionHorizontal)(SetPixelsFromMemoryDirection & 0x3);
         public SetPixelsFromMemoryDirectionVertical SetPixelsFromMemoryDirectionVertical => (SetPixelsFromMemoryDirectionVertical)((SetPixelsFromMemoryDirection >> 4) & 0x3);
         public uint SetSpareNoop10;
         public uint SetMonochromePatternColorFormat;
-        public SetMonochromePatternColorFormatV SetMonochromePatternColorFormatV => (SetMonochromePatternColorFormatV)((SetMonochromePatternColorFormat >> 0) & 0x7);
+        public SetMonochromePatternColorFormatV SetMonochromePatternColorFormatV => (SetMonochromePatternColorFormatV)(SetMonochromePatternColorFormat & 0x7);
         public uint SetMonochromePatternFormat;
-        public SetMonochromePatternFormatV SetMonochromePatternFormatV => (SetMonochromePatternFormatV)((SetMonochromePatternFormat >> 0) & 0x1);
+        public SetMonochromePatternFormatV SetMonochromePatternFormatV => (SetMonochromePatternFormatV)(SetMonochromePatternFormat & 0x1);
         public uint SetMonochromePatternColor0;
         public uint SetMonochromePatternColor1;
         public uint SetMonochromePattern0;
@@ -662,26 +662,26 @@ namespace Ryujinx.Graphics.Gpu.Engine.Twod
         public uint SetRenderSolidPrimColor2;
         public uint SetRenderSolidPrimColor3;
         public uint SetMmeMemAddressA;
-        public int SetMmeMemAddressAUpper => (int)((SetMmeMemAddressA >> 0) & 0x1FFFFFF);
+        public int SetMmeMemAddressAUpper => (int)(SetMmeMemAddressA & 0x1FFFFFF);
         public uint SetMmeMemAddressB;
         public uint SetMmeDataRamAddress;
         public uint MmeDmaRead;
         public uint MmeDmaReadFifoed;
         public uint MmeDmaWrite;
         public uint MmeDmaReduction;
-        public MmeDmaReductionReductionOp MmeDmaReductionReductionOp => (MmeDmaReductionReductionOp)((MmeDmaReduction >> 0) & 0x7);
+        public MmeDmaReductionReductionOp MmeDmaReductionReductionOp => (MmeDmaReductionReductionOp)(MmeDmaReduction & 0x7);
         public MmeDmaReductionReductionFormat MmeDmaReductionReductionFormat => (MmeDmaReductionReductionFormat)((MmeDmaReduction >> 4) & 0x3);
         public MmeDmaReductionReductionSize MmeDmaReductionReductionSize => (MmeDmaReductionReductionSize)((MmeDmaReduction >> 8) & 0x1);
         public uint MmeDmaSysmembar;
         public bool MmeDmaSysmembarV => (MmeDmaSysmembar & 0x1) != 0;
         public uint MmeDmaSync;
         public uint SetMmeDataFifoConfig;
-        public SetMmeDataFifoConfigFifoSize SetMmeDataFifoConfigFifoSize => (SetMmeDataFifoConfigFifoSize)((SetMmeDataFifoConfig >> 0) & 0x7);
+        public SetMmeDataFifoConfigFifoSize SetMmeDataFifoConfigFifoSize => (SetMmeDataFifoConfigFifoSize)(SetMmeDataFifoConfig & 0x7);
         public fixed uint Reserved578[2];
         public uint RenderSolidPrimMode;
-        public RenderSolidPrimModeV RenderSolidPrimModeV => (RenderSolidPrimModeV)((RenderSolidPrimMode >> 0) & 0x7);
+        public RenderSolidPrimModeV RenderSolidPrimModeV => (RenderSolidPrimModeV)(RenderSolidPrimMode & 0x7);
         public uint SetRenderSolidPrimColorFormat;
-        public SetRenderSolidPrimColorFormatV SetRenderSolidPrimColorFormatV => (SetRenderSolidPrimColorFormatV)((SetRenderSolidPrimColorFormat >> 0) & 0xFF);
+        public SetRenderSolidPrimColorFormatV SetRenderSolidPrimColorFormatV => (SetRenderSolidPrimColorFormatV)(SetRenderSolidPrimColorFormat & 0xFF);
         public uint SetRenderSolidPrimColor;
         public uint SetRenderSolidLineTieBreakBits;
         public bool SetRenderSolidLineTieBreakBitsXmajXincYinc => (SetRenderSolidLineTieBreakBits & 0x1) != 0;
@@ -690,24 +690,24 @@ namespace Ryujinx.Graphics.Gpu.Engine.Twod
         public bool SetRenderSolidLineTieBreakBitsYmajXdecYinc => (SetRenderSolidLineTieBreakBits & 0x1000) != 0;
         public fixed uint Reserved590[20];
         public uint RenderSolidPrimPointXY;
-        public int RenderSolidPrimPointXYX => (int)((RenderSolidPrimPointXY >> 0) & 0xFFFF);
+        public int RenderSolidPrimPointXYX => (int)(RenderSolidPrimPointXY & 0xFFFF);
         public int RenderSolidPrimPointXYY => (int)((RenderSolidPrimPointXY >> 16) & 0xFFFF);
         public fixed uint Reserved5E4[7];
         public Array64<RenderSolidPrimPoint> RenderSolidPrimPoint;
         public uint SetPixelsFromCpuDataType;
-        public SetPixelsFromCpuDataTypeV SetPixelsFromCpuDataTypeV => (SetPixelsFromCpuDataTypeV)((SetPixelsFromCpuDataType >> 0) & 0x1);
+        public SetPixelsFromCpuDataTypeV SetPixelsFromCpuDataTypeV => (SetPixelsFromCpuDataTypeV)(SetPixelsFromCpuDataType & 0x1);
         public uint SetPixelsFromCpuColorFormat;
-        public SetPixelsFromCpuColorFormatV SetPixelsFromCpuColorFormatV => (SetPixelsFromCpuColorFormatV)((SetPixelsFromCpuColorFormat >> 0) & 0xFF);
+        public SetPixelsFromCpuColorFormatV SetPixelsFromCpuColorFormatV => (SetPixelsFromCpuColorFormatV)(SetPixelsFromCpuColorFormat & 0xFF);
         public uint SetPixelsFromCpuIndexFormat;
-        public SetPixelsFromCpuIndexFormatV SetPixelsFromCpuIndexFormatV => (SetPixelsFromCpuIndexFormatV)((SetPixelsFromCpuIndexFormat >> 0) & 0x3);
+        public SetPixelsFromCpuIndexFormatV SetPixelsFromCpuIndexFormatV => (SetPixelsFromCpuIndexFormatV)(SetPixelsFromCpuIndexFormat & 0x3);
         public uint SetPixelsFromCpuMonoFormat;
-        public SetPixelsFromCpuMonoFormatV SetPixelsFromCpuMonoFormatV => (SetPixelsFromCpuMonoFormatV)((SetPixelsFromCpuMonoFormat >> 0) & 0x1);
+        public SetPixelsFromCpuMonoFormatV SetPixelsFromCpuMonoFormatV => (SetPixelsFromCpuMonoFormatV)(SetPixelsFromCpuMonoFormat & 0x1);
         public uint SetPixelsFromCpuWrap;
-        public SetPixelsFromCpuWrapV SetPixelsFromCpuWrapV => (SetPixelsFromCpuWrapV)((SetPixelsFromCpuWrap >> 0) & 0x3);
+        public SetPixelsFromCpuWrapV SetPixelsFromCpuWrapV => (SetPixelsFromCpuWrapV)(SetPixelsFromCpuWrap & 0x3);
         public uint SetPixelsFromCpuColor0;
         public uint SetPixelsFromCpuColor1;
         public uint SetPixelsFromCpuMonoOpacity;
-        public SetPixelsFromCpuMonoOpacityV SetPixelsFromCpuMonoOpacityV => (SetPixelsFromCpuMonoOpacityV)((SetPixelsFromCpuMonoOpacity >> 0) & 0x1);
+        public SetPixelsFromCpuMonoOpacityV SetPixelsFromCpuMonoOpacityV => (SetPixelsFromCpuMonoOpacityV)(SetPixelsFromCpuMonoOpacity & 0x1);
         public fixed uint Reserved820[6];
         public uint SetPixelsFromCpuSrcWidth;
         public uint SetPixelsFromCpuSrcHeight;
@@ -753,13 +753,13 @@ namespace Ryujinx.Graphics.Gpu.Engine.Twod
         public bool SetBigEndianControlOverride => (SetBigEndianControl & 0x10000000) != 0;
         public fixed uint Reserved874[3];
         public uint SetPixelsFromMemoryBlockShape;
-        public SetPixelsFromMemoryBlockShapeV SetPixelsFromMemoryBlockShapeV => (SetPixelsFromMemoryBlockShapeV)((SetPixelsFromMemoryBlockShape >> 0) & 0x7);
+        public SetPixelsFromMemoryBlockShapeV SetPixelsFromMemoryBlockShapeV => (SetPixelsFromMemoryBlockShapeV)(SetPixelsFromMemoryBlockShape & 0x7);
         public uint SetPixelsFromMemoryCorralSize;
-        public int SetPixelsFromMemoryCorralSizeV => (int)((SetPixelsFromMemoryCorralSize >> 0) & 0x3FF);
+        public int SetPixelsFromMemoryCorralSizeV => (int)(SetPixelsFromMemoryCorralSize & 0x3FF);
         public uint SetPixelsFromMemorySafeOverlap;
         public bool SetPixelsFromMemorySafeOverlapV => (SetPixelsFromMemorySafeOverlap & 0x1) != 0;
         public uint SetPixelsFromMemorySampleMode;
-        public SetPixelsFromMemorySampleModeOrigin SetPixelsFromMemorySampleModeOrigin => (SetPixelsFromMemorySampleModeOrigin)((SetPixelsFromMemorySampleMode >> 0) & 0x1);
+        public SetPixelsFromMemorySampleModeOrigin SetPixelsFromMemorySampleModeOrigin => (SetPixelsFromMemorySampleModeOrigin)(SetPixelsFromMemorySampleMode & 0x1);
         public SetPixelsFromMemorySampleModeFilter SetPixelsFromMemorySampleModeFilter => (SetPixelsFromMemorySampleModeFilter)((SetPixelsFromMemorySampleMode >> 4) & 0x1);
         public fixed uint Reserved890[8];
         public uint SetPixelsFromMemoryDstX0;

File diff ditekan karena terlalu besar
+ 112 - 112
src/Ryujinx.Graphics.Shader/Decoders/InstDecoders.cs


+ 1 - 1
src/Ryujinx.Graphics.Shader/TextureHandle.cs

@@ -61,7 +61,7 @@ namespace Ryujinx.Graphics.Shader
         [MethodImpl(MethodImplOptions.AggressiveInlining)]
         public static int UnpackTextureId(int packedId)
         {
-            return (packedId >> 0) & 0xfffff;
+            return packedId & 0xfffff;
         }
 
         /// <summary>

+ 1 - 1
src/Ryujinx.Graphics.Vulkan/PipelineUid.cs

@@ -25,7 +25,7 @@ namespace Ryujinx.Graphics.Vulkan
         private uint VertexAttributeDescriptionsCount => (byte)((Id6 >> 38) & 0xFF);
         private uint VertexBindingDescriptionsCount => (byte)((Id6 >> 46) & 0xFF);
         private uint ViewportsCount => (byte)((Id6 >> 54) & 0xFF);
-        private uint ScissorsCount => (byte)((Id7 >> 0) & 0xFF);
+        private uint ScissorsCount => (byte)(Id7 & 0xFF);
         private uint ColorBlendAttachmentStateCount => (byte)((Id7 >> 8) & 0xFF);
         private bool HasDepthStencil => ((Id7 >> 63) & 0x1) != 0UL;
 

+ 1 - 1
src/Ryujinx.HLE/HOS/Kernel/Process/KHandleTable.cs

@@ -137,7 +137,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Process
 
         public void CancelHandleReservation(int handle)
         {
-            int index = (handle >> 0) & 0x7fff;
+            int index = handle & 0x7fff;
 
             lock (_table)
             {

Beberapa file tidak ditampilkan karena terlalu banyak file yang berubah dalam diff ini