ComputeClassState.cs 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435
  1. // This file was auto-generated from NVIDIA official Maxwell definitions.
  2. using Ryujinx.Common.Memory;
  3. using Ryujinx.Graphics.Gpu.Engine.InlineToMemory;
  4. namespace Ryujinx.Graphics.Gpu.Engine.Compute
  5. {
  6. /// <summary>
  7. /// Notify type.
  8. /// </summary>
  9. enum NotifyType
  10. {
  11. WriteOnly = 0,
  12. WriteThenAwaken = 1,
  13. }
  14. /// <summary>
  15. /// CWD control SM selection.
  16. /// </summary>
  17. enum SetCwdControlSmSelection
  18. {
  19. LoadBalanced = 0,
  20. RoundRobin = 1,
  21. }
  22. /// <summary>
  23. /// Cache lines to invalidate.
  24. /// </summary>
  25. enum InvalidateCacheLines
  26. {
  27. All = 0,
  28. One = 1,
  29. }
  30. /// <summary>
  31. /// GWC SCG type.
  32. /// </summary>
  33. enum SetGwcScgTypeScgType
  34. {
  35. GraphicsCompute0 = 0,
  36. Compute1 = 1,
  37. }
  38. /// <summary>
  39. /// Render enable override mode.
  40. /// </summary>
  41. enum SetRenderEnableOverrideMode
  42. {
  43. UseRenderEnable = 0,
  44. AlwaysRender = 1,
  45. NeverRender = 2,
  46. }
  47. /// <summary>
  48. /// Semaphore report operation.
  49. /// </summary>
  50. enum SetReportSemaphoreDOperation
  51. {
  52. Release = 0,
  53. Trap = 3,
  54. }
  55. /// <summary>
  56. /// Semaphore report structure size.
  57. /// </summary>
  58. enum SetReportSemaphoreDStructureSize
  59. {
  60. FourWords = 0,
  61. OneWord = 1,
  62. }
  63. /// <summary>
  64. /// Semaphore report reduction operation.
  65. /// </summary>
  66. enum SetReportSemaphoreDReductionOp
  67. {
  68. RedAdd = 0,
  69. RedMin = 1,
  70. RedMax = 2,
  71. RedInc = 3,
  72. RedDec = 4,
  73. RedAnd = 5,
  74. RedOr = 6,
  75. RedXor = 7,
  76. }
  77. /// <summary>
  78. /// Semaphore report reduction format.
  79. /// </summary>
  80. enum SetReportSemaphoreDReductionFormat
  81. {
  82. Unsigned32 = 0,
  83. Signed32 = 1,
  84. }
  85. /// <summary>
  86. /// Compute class state.
  87. /// </summary>
  88. unsafe struct ComputeClassState
  89. {
  90. #pragma warning disable CS0649
  91. public uint SetObject;
  92. public int SetObjectClassId => (int)((SetObject >> 0) & 0xFFFF);
  93. public int SetObjectEngineId => (int)((SetObject >> 16) & 0x1F);
  94. public fixed uint Reserved04[63];
  95. public uint NoOperation;
  96. public uint SetNotifyA;
  97. public int SetNotifyAAddressUpper => (int)((SetNotifyA >> 0) & 0xFF);
  98. public uint SetNotifyB;
  99. public uint Notify;
  100. public NotifyType NotifyType => (NotifyType)(Notify);
  101. public uint WaitForIdle;
  102. public fixed uint Reserved114[7];
  103. public uint SetGlobalRenderEnableA;
  104. public int SetGlobalRenderEnableAOffsetUpper => (int)((SetGlobalRenderEnableA >> 0) & 0xFF);
  105. public uint SetGlobalRenderEnableB;
  106. public uint SetGlobalRenderEnableC;
  107. public int SetGlobalRenderEnableCMode => (int)((SetGlobalRenderEnableC >> 0) & 0x7);
  108. public uint SendGoIdle;
  109. public uint PmTrigger;
  110. public uint PmTriggerWfi;
  111. public fixed uint Reserved148[2];
  112. public uint SetInstrumentationMethodHeader;
  113. public uint SetInstrumentationMethodData;
  114. public fixed uint Reserved158[10];
  115. public uint LineLengthIn;
  116. public uint LineCount;
  117. public uint OffsetOutUpper;
  118. public int OffsetOutUpperValue => (int)((OffsetOutUpper >> 0) & 0xFF);
  119. public uint OffsetOut;
  120. public uint PitchOut;
  121. public uint SetDstBlockSize;
  122. public SetDstBlockSizeWidth SetDstBlockSizeWidth => (SetDstBlockSizeWidth)((SetDstBlockSize >> 0) & 0xF);
  123. public SetDstBlockSizeHeight SetDstBlockSizeHeight => (SetDstBlockSizeHeight)((SetDstBlockSize >> 4) & 0xF);
  124. public SetDstBlockSizeDepth SetDstBlockSizeDepth => (SetDstBlockSizeDepth)((SetDstBlockSize >> 8) & 0xF);
  125. public uint SetDstWidth;
  126. public uint SetDstHeight;
  127. public uint SetDstDepth;
  128. public uint SetDstLayer;
  129. public uint SetDstOriginBytesX;
  130. public int SetDstOriginBytesXV => (int)((SetDstOriginBytesX >> 0) & 0xFFFFF);
  131. public uint SetDstOriginSamplesY;
  132. public int SetDstOriginSamplesYV => (int)((SetDstOriginSamplesY >> 0) & 0xFFFF);
  133. public uint LaunchDma;
  134. public LaunchDmaDstMemoryLayout LaunchDmaDstMemoryLayout => (LaunchDmaDstMemoryLayout)((LaunchDma >> 0) & 0x1);
  135. public LaunchDmaCompletionType LaunchDmaCompletionType => (LaunchDmaCompletionType)((LaunchDma >> 4) & 0x3);
  136. public LaunchDmaInterruptType LaunchDmaInterruptType => (LaunchDmaInterruptType)((LaunchDma >> 8) & 0x3);
  137. public LaunchDmaSemaphoreStructSize LaunchDmaSemaphoreStructSize => (LaunchDmaSemaphoreStructSize)((LaunchDma >> 12) & 0x1);
  138. public bool LaunchDmaReductionEnable => (LaunchDma & 0x2) != 0;
  139. public LaunchDmaReductionOp LaunchDmaReductionOp => (LaunchDmaReductionOp)((LaunchDma >> 13) & 0x7);
  140. public LaunchDmaReductionFormat LaunchDmaReductionFormat => (LaunchDmaReductionFormat)((LaunchDma >> 2) & 0x3);
  141. public bool LaunchDmaSysmembarDisable => (LaunchDma & 0x40) != 0;
  142. public uint LoadInlineData;
  143. public fixed uint Reserved1B8[9];
  144. public uint SetI2mSemaphoreA;
  145. public int SetI2mSemaphoreAOffsetUpper => (int)((SetI2mSemaphoreA >> 0) & 0xFF);
  146. public uint SetI2mSemaphoreB;
  147. public uint SetI2mSemaphoreC;
  148. public fixed uint Reserved1E8[2];
  149. public uint SetI2mSpareNoop00;
  150. public uint SetI2mSpareNoop01;
  151. public uint SetI2mSpareNoop02;
  152. public uint SetI2mSpareNoop03;
  153. public uint SetValidSpanOverflowAreaA;
  154. public int SetValidSpanOverflowAreaAAddressUpper => (int)((SetValidSpanOverflowAreaA >> 0) & 0xFF);
  155. public uint SetValidSpanOverflowAreaB;
  156. public uint SetValidSpanOverflowAreaC;
  157. public uint SetCoalesceWaitingPeriodUnit;
  158. public uint PerfmonTransfer;
  159. public uint SetShaderSharedMemoryWindow;
  160. public uint SetSelectMaxwellTextureHeaders;
  161. public bool SetSelectMaxwellTextureHeadersV => (SetSelectMaxwellTextureHeaders & 0x1) != 0;
  162. public uint InvalidateShaderCaches;
  163. public bool InvalidateShaderCachesInstruction => (InvalidateShaderCaches & 0x1) != 0;
  164. public bool InvalidateShaderCachesData => (InvalidateShaderCaches & 0x10) != 0;
  165. public bool InvalidateShaderCachesConstant => (InvalidateShaderCaches & 0x1000) != 0;
  166. public bool InvalidateShaderCachesLocks => (InvalidateShaderCaches & 0x2) != 0;
  167. public bool InvalidateShaderCachesFlushData => (InvalidateShaderCaches & 0x4) != 0;
  168. public uint SetReservedSwMethod00;
  169. public uint SetReservedSwMethod01;
  170. public uint SetReservedSwMethod02;
  171. public uint SetReservedSwMethod03;
  172. public uint SetReservedSwMethod04;
  173. public uint SetReservedSwMethod05;
  174. public uint SetReservedSwMethod06;
  175. public uint SetReservedSwMethod07;
  176. public uint SetCwdControl;
  177. public SetCwdControlSmSelection SetCwdControlSmSelection => (SetCwdControlSmSelection)((SetCwdControl >> 0) & 0x1);
  178. public uint InvalidateTextureHeaderCacheNoWfi;
  179. public InvalidateCacheLines InvalidateTextureHeaderCacheNoWfiLines => (InvalidateCacheLines)((InvalidateTextureHeaderCacheNoWfi >> 0) & 0x1);
  180. public int InvalidateTextureHeaderCacheNoWfiTag => (int)((InvalidateTextureHeaderCacheNoWfi >> 4) & 0x3FFFFF);
  181. public uint SetCwdRefCounter;
  182. public int SetCwdRefCounterSelect => (int)((SetCwdRefCounter >> 0) & 0x3F);
  183. public int SetCwdRefCounterValue => (int)((SetCwdRefCounter >> 8) & 0xFFFF);
  184. public uint SetReservedSwMethod08;
  185. public uint SetReservedSwMethod09;
  186. public uint SetReservedSwMethod10;
  187. public uint SetReservedSwMethod11;
  188. public uint SetReservedSwMethod12;
  189. public uint SetReservedSwMethod13;
  190. public uint SetReservedSwMethod14;
  191. public uint SetReservedSwMethod15;
  192. public uint SetGwcScgType;
  193. public SetGwcScgTypeScgType SetGwcScgTypeScgType => (SetGwcScgTypeScgType)((SetGwcScgType >> 0) & 0x1);
  194. public uint SetScgControl;
  195. public int SetScgControlCompute1MaxSmCount => (int)((SetScgControl >> 0) & 0x1FF);
  196. public uint InvalidateConstantBufferCacheA;
  197. public int InvalidateConstantBufferCacheAAddressUpper => (int)((InvalidateConstantBufferCacheA >> 0) & 0xFF);
  198. public uint InvalidateConstantBufferCacheB;
  199. public uint InvalidateConstantBufferCacheC;
  200. public int InvalidateConstantBufferCacheCByteCount => (int)((InvalidateConstantBufferCacheC >> 0) & 0x1FFFF);
  201. public bool InvalidateConstantBufferCacheCThruL2 => (InvalidateConstantBufferCacheC & 0x80000000) != 0;
  202. public uint SetComputeClassVersion;
  203. public int SetComputeClassVersionCurrent => (int)((SetComputeClassVersion >> 0) & 0xFFFF);
  204. public int SetComputeClassVersionOldestSupported => (int)((SetComputeClassVersion >> 16) & 0xFFFF);
  205. public uint CheckComputeClassVersion;
  206. public int CheckComputeClassVersionCurrent => (int)((CheckComputeClassVersion >> 0) & 0xFFFF);
  207. public int CheckComputeClassVersionOldestSupported => (int)((CheckComputeClassVersion >> 16) & 0xFFFF);
  208. public uint SetQmdVersion;
  209. public int SetQmdVersionCurrent => (int)((SetQmdVersion >> 0) & 0xFFFF);
  210. public int SetQmdVersionOldestSupported => (int)((SetQmdVersion >> 16) & 0xFFFF);
  211. public uint SetWfiConfig;
  212. public bool SetWfiConfigEnableScgTypeWfi => (SetWfiConfig & 0x1) != 0;
  213. public uint CheckQmdVersion;
  214. public int CheckQmdVersionCurrent => (int)((CheckQmdVersion >> 0) & 0xFFFF);
  215. public int CheckQmdVersionOldestSupported => (int)((CheckQmdVersion >> 16) & 0xFFFF);
  216. public uint WaitForIdleScgType;
  217. public uint InvalidateSkedCaches;
  218. public bool InvalidateSkedCachesV => (InvalidateSkedCaches & 0x1) != 0;
  219. public uint SetScgRenderEnableControl;
  220. public bool SetScgRenderEnableControlCompute1UsesRenderEnable => (SetScgRenderEnableControl & 0x1) != 0;
  221. public fixed uint Reserved2A0[4];
  222. public uint SetCwdSlotCount;
  223. public int SetCwdSlotCountV => (int)((SetCwdSlotCount >> 0) & 0xFF);
  224. public uint SendPcasA;
  225. public uint SendPcasB;
  226. public int SendPcasBFrom => (int)((SendPcasB >> 0) & 0xFFFFFF);
  227. public int SendPcasBDelta => (int)((SendPcasB >> 24) & 0xFF);
  228. public uint SendSignalingPcasB;
  229. public bool SendSignalingPcasBInvalidate => (SendSignalingPcasB & 0x1) != 0;
  230. public bool SendSignalingPcasBSchedule => (SendSignalingPcasB & 0x2) != 0;
  231. public fixed uint Reserved2C0[9];
  232. public uint SetShaderLocalMemoryNonThrottledA;
  233. public int SetShaderLocalMemoryNonThrottledASizeUpper => (int)((SetShaderLocalMemoryNonThrottledA >> 0) & 0xFF);
  234. public uint SetShaderLocalMemoryNonThrottledB;
  235. public uint SetShaderLocalMemoryNonThrottledC;
  236. public int SetShaderLocalMemoryNonThrottledCMaxSmCount => (int)((SetShaderLocalMemoryNonThrottledC >> 0) & 0x1FF);
  237. public uint SetShaderLocalMemoryThrottledA;
  238. public int SetShaderLocalMemoryThrottledASizeUpper => (int)((SetShaderLocalMemoryThrottledA >> 0) & 0xFF);
  239. public uint SetShaderLocalMemoryThrottledB;
  240. public uint SetShaderLocalMemoryThrottledC;
  241. public int SetShaderLocalMemoryThrottledCMaxSmCount => (int)((SetShaderLocalMemoryThrottledC >> 0) & 0x1FF);
  242. public fixed uint Reserved2FC[5];
  243. public uint SetSpaVersion;
  244. public int SetSpaVersionMinor => (int)((SetSpaVersion >> 0) & 0xFF);
  245. public int SetSpaVersionMajor => (int)((SetSpaVersion >> 8) & 0xFF);
  246. public fixed uint Reserved314[123];
  247. public uint SetFalcon00;
  248. public uint SetFalcon01;
  249. public uint SetFalcon02;
  250. public uint SetFalcon03;
  251. public uint SetFalcon04;
  252. public uint SetFalcon05;
  253. public uint SetFalcon06;
  254. public uint SetFalcon07;
  255. public uint SetFalcon08;
  256. public uint SetFalcon09;
  257. public uint SetFalcon10;
  258. public uint SetFalcon11;
  259. public uint SetFalcon12;
  260. public uint SetFalcon13;
  261. public uint SetFalcon14;
  262. public uint SetFalcon15;
  263. public uint SetFalcon16;
  264. public uint SetFalcon17;
  265. public uint SetFalcon18;
  266. public uint SetFalcon19;
  267. public uint SetFalcon20;
  268. public uint SetFalcon21;
  269. public uint SetFalcon22;
  270. public uint SetFalcon23;
  271. public uint SetFalcon24;
  272. public uint SetFalcon25;
  273. public uint SetFalcon26;
  274. public uint SetFalcon27;
  275. public uint SetFalcon28;
  276. public uint SetFalcon29;
  277. public uint SetFalcon30;
  278. public uint SetFalcon31;
  279. public fixed uint Reserved580[127];
  280. public uint SetShaderLocalMemoryWindow;
  281. public fixed uint Reserved780[4];
  282. public uint SetShaderLocalMemoryA;
  283. public int SetShaderLocalMemoryAAddressUpper => (int)((SetShaderLocalMemoryA >> 0) & 0xFF);
  284. public uint SetShaderLocalMemoryB;
  285. public fixed uint Reserved798[383];
  286. public uint SetShaderCacheControl;
  287. public bool SetShaderCacheControlIcachePrefetchEnable => (SetShaderCacheControl & 0x1) != 0;
  288. public fixed uint ReservedD98[19];
  289. public uint SetSmTimeoutInterval;
  290. public int SetSmTimeoutIntervalCounterBit => (int)((SetSmTimeoutInterval >> 0) & 0x3F);
  291. public fixed uint ReservedDE8[87];
  292. public uint SetSpareNoop12;
  293. public uint SetSpareNoop13;
  294. public uint SetSpareNoop14;
  295. public uint SetSpareNoop15;
  296. public fixed uint ReservedF54[59];
  297. public uint SetSpareNoop00;
  298. public uint SetSpareNoop01;
  299. public uint SetSpareNoop02;
  300. public uint SetSpareNoop03;
  301. public uint SetSpareNoop04;
  302. public uint SetSpareNoop05;
  303. public uint SetSpareNoop06;
  304. public uint SetSpareNoop07;
  305. public uint SetSpareNoop08;
  306. public uint SetSpareNoop09;
  307. public uint SetSpareNoop10;
  308. public uint SetSpareNoop11;
  309. public fixed uint Reserved1070[103];
  310. public uint InvalidateSamplerCacheAll;
  311. public bool InvalidateSamplerCacheAllV => (InvalidateSamplerCacheAll & 0x1) != 0;
  312. public uint InvalidateTextureHeaderCacheAll;
  313. public bool InvalidateTextureHeaderCacheAllV => (InvalidateTextureHeaderCacheAll & 0x1) != 0;
  314. public fixed uint Reserved1214[29];
  315. public uint InvalidateTextureDataCacheNoWfi;
  316. public InvalidateCacheLines InvalidateTextureDataCacheNoWfiLines => (InvalidateCacheLines)((InvalidateTextureDataCacheNoWfi >> 0) & 0x1);
  317. public int InvalidateTextureDataCacheNoWfiTag => (int)((InvalidateTextureDataCacheNoWfi >> 4) & 0x3FFFFF);
  318. public fixed uint Reserved128C[7];
  319. public uint ActivatePerfSettingsForComputeContext;
  320. public bool ActivatePerfSettingsForComputeContextAll => (ActivatePerfSettingsForComputeContext & 0x1) != 0;
  321. public fixed uint Reserved12AC[33];
  322. public uint InvalidateSamplerCache;
  323. public InvalidateCacheLines InvalidateSamplerCacheLines => (InvalidateCacheLines)((InvalidateSamplerCache >> 0) & 0x1);
  324. public int InvalidateSamplerCacheTag => (int)((InvalidateSamplerCache >> 4) & 0x3FFFFF);
  325. public uint InvalidateTextureHeaderCache;
  326. public InvalidateCacheLines InvalidateTextureHeaderCacheLines => (InvalidateCacheLines)((InvalidateTextureHeaderCache >> 0) & 0x1);
  327. public int InvalidateTextureHeaderCacheTag => (int)((InvalidateTextureHeaderCache >> 4) & 0x3FFFFF);
  328. public uint InvalidateTextureDataCache;
  329. public InvalidateCacheLines InvalidateTextureDataCacheLines => (InvalidateCacheLines)((InvalidateTextureDataCache >> 0) & 0x1);
  330. public int InvalidateTextureDataCacheTag => (int)((InvalidateTextureDataCache >> 4) & 0x3FFFFF);
  331. public fixed uint Reserved133C[58];
  332. public uint InvalidateSamplerCacheNoWfi;
  333. public InvalidateCacheLines InvalidateSamplerCacheNoWfiLines => (InvalidateCacheLines)((InvalidateSamplerCacheNoWfi >> 0) & 0x1);
  334. public int InvalidateSamplerCacheNoWfiTag => (int)((InvalidateSamplerCacheNoWfi >> 4) & 0x3FFFFF);
  335. public fixed uint Reserved1428[64];
  336. public uint SetShaderExceptions;
  337. public bool SetShaderExceptionsEnable => (SetShaderExceptions & 0x1) != 0;
  338. public fixed uint Reserved152C[9];
  339. public uint SetRenderEnableA;
  340. public int SetRenderEnableAOffsetUpper => (int)((SetRenderEnableA >> 0) & 0xFF);
  341. public uint SetRenderEnableB;
  342. public uint SetRenderEnableC;
  343. public int SetRenderEnableCMode => (int)((SetRenderEnableC >> 0) & 0x7);
  344. public uint SetTexSamplerPoolA;
  345. public int SetTexSamplerPoolAOffsetUpper => (int)((SetTexSamplerPoolA >> 0) & 0xFF);
  346. public uint SetTexSamplerPoolB;
  347. public uint SetTexSamplerPoolC;
  348. public int SetTexSamplerPoolCMaximumIndex => (int)((SetTexSamplerPoolC >> 0) & 0xFFFFF);
  349. public fixed uint Reserved1568[3];
  350. public uint SetTexHeaderPoolA;
  351. public int SetTexHeaderPoolAOffsetUpper => (int)((SetTexHeaderPoolA >> 0) & 0xFF);
  352. public uint SetTexHeaderPoolB;
  353. public uint SetTexHeaderPoolC;
  354. public int SetTexHeaderPoolCMaximumIndex => (int)((SetTexHeaderPoolC >> 0) & 0x3FFFFF);
  355. public fixed uint Reserved1580[34];
  356. public uint SetProgramRegionA;
  357. public int SetProgramRegionAAddressUpper => (int)((SetProgramRegionA >> 0) & 0xFF);
  358. public uint SetProgramRegionB;
  359. public fixed uint Reserved1610[34];
  360. public uint InvalidateShaderCachesNoWfi;
  361. public bool InvalidateShaderCachesNoWfiInstruction => (InvalidateShaderCachesNoWfi & 0x1) != 0;
  362. public bool InvalidateShaderCachesNoWfiGlobalData => (InvalidateShaderCachesNoWfi & 0x10) != 0;
  363. public bool InvalidateShaderCachesNoWfiConstant => (InvalidateShaderCachesNoWfi & 0x1000) != 0;
  364. public fixed uint Reserved169C[170];
  365. public uint SetRenderEnableOverride;
  366. public SetRenderEnableOverrideMode SetRenderEnableOverrideMode => (SetRenderEnableOverrideMode)((SetRenderEnableOverride >> 0) & 0x3);
  367. public fixed uint Reserved1948[57];
  368. public uint PipeNop;
  369. public uint SetSpare00;
  370. public uint SetSpare01;
  371. public uint SetSpare02;
  372. public uint SetSpare03;
  373. public fixed uint Reserved1A40[48];
  374. public uint SetReportSemaphoreA;
  375. public int SetReportSemaphoreAOffsetUpper => (int)((SetReportSemaphoreA >> 0) & 0xFF);
  376. public uint SetReportSemaphoreB;
  377. public uint SetReportSemaphoreC;
  378. public uint SetReportSemaphoreD;
  379. public SetReportSemaphoreDOperation SetReportSemaphoreDOperation => (SetReportSemaphoreDOperation)((SetReportSemaphoreD >> 0) & 0x3);
  380. public bool SetReportSemaphoreDAwakenEnable => (SetReportSemaphoreD & 0x100000) != 0;
  381. public SetReportSemaphoreDStructureSize SetReportSemaphoreDStructureSize => (SetReportSemaphoreDStructureSize)((SetReportSemaphoreD >> 28) & 0x1);
  382. public bool SetReportSemaphoreDFlushDisable => (SetReportSemaphoreD & 0x4) != 0;
  383. public bool SetReportSemaphoreDReductionEnable => (SetReportSemaphoreD & 0x8) != 0;
  384. public SetReportSemaphoreDReductionOp SetReportSemaphoreDReductionOp => (SetReportSemaphoreDReductionOp)((SetReportSemaphoreD >> 9) & 0x7);
  385. public SetReportSemaphoreDReductionFormat SetReportSemaphoreDReductionFormat => (SetReportSemaphoreDReductionFormat)((SetReportSemaphoreD >> 17) & 0x3);
  386. public fixed uint Reserved1B10[702];
  387. public uint SetBindlessTexture;
  388. public int SetBindlessTextureConstantBufferSlotSelect => (int)((SetBindlessTexture >> 0) & 0x7);
  389. public uint SetTrapHandler;
  390. public fixed uint Reserved2610[843];
  391. public Array8<uint> SetShaderPerformanceCounterValueUpper;
  392. public Array8<uint> SetShaderPerformanceCounterValue;
  393. public Array8<uint> SetShaderPerformanceCounterEvent;
  394. public int SetShaderPerformanceCounterEventEvent(int i) => (int)((SetShaderPerformanceCounterEvent[i] >> 0) & 0xFF);
  395. public Array8<uint> SetShaderPerformanceCounterControlA;
  396. public int SetShaderPerformanceCounterControlAEvent0(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 0) & 0x3);
  397. public int SetShaderPerformanceCounterControlABitSelect0(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 2) & 0x7);
  398. public int SetShaderPerformanceCounterControlAEvent1(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 5) & 0x3);
  399. public int SetShaderPerformanceCounterControlABitSelect1(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 7) & 0x7);
  400. public int SetShaderPerformanceCounterControlAEvent2(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 10) & 0x3);
  401. public int SetShaderPerformanceCounterControlABitSelect2(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 12) & 0x7);
  402. public int SetShaderPerformanceCounterControlAEvent3(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 15) & 0x3);
  403. public int SetShaderPerformanceCounterControlABitSelect3(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 17) & 0x7);
  404. public int SetShaderPerformanceCounterControlAEvent4(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 20) & 0x3);
  405. public int SetShaderPerformanceCounterControlABitSelect4(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 22) & 0x7);
  406. public int SetShaderPerformanceCounterControlAEvent5(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 25) & 0x3);
  407. public int SetShaderPerformanceCounterControlABitSelect5(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 27) & 0x7);
  408. public int SetShaderPerformanceCounterControlASpare(int i) => (int)((SetShaderPerformanceCounterControlA[i] >> 30) & 0x3);
  409. public Array8<uint> SetShaderPerformanceCounterControlB;
  410. public bool SetShaderPerformanceCounterControlBEdge(int i) => (SetShaderPerformanceCounterControlB[i] & 0x1) != 0;
  411. public int SetShaderPerformanceCounterControlBMode(int i) => (int)((SetShaderPerformanceCounterControlB[i] >> 1) & 0x3);
  412. public bool SetShaderPerformanceCounterControlBWindowed(int i) => (SetShaderPerformanceCounterControlB[i] & 0x8) != 0;
  413. public int SetShaderPerformanceCounterControlBFunc(int i) => (int)((SetShaderPerformanceCounterControlB[i] >> 4) & 0xFFFF);
  414. public uint SetShaderPerformanceCounterTrapControl;
  415. public int SetShaderPerformanceCounterTrapControlMask => (int)((SetShaderPerformanceCounterTrapControl >> 0) & 0xFF);
  416. public uint StartShaderPerformanceCounter;
  417. public int StartShaderPerformanceCounterCounterMask => (int)((StartShaderPerformanceCounter >> 0) & 0xFF);
  418. public uint StopShaderPerformanceCounter;
  419. public int StopShaderPerformanceCounterCounterMask => (int)((StopShaderPerformanceCounter >> 0) & 0xFF);
  420. public fixed uint Reserved33E8[6];
  421. public MmeShadowScratch SetMmeShadowScratch;
  422. #pragma warning restore CS0649
  423. }
  424. }