ShaderDecodeSpecial.cs 811 B

123456789101112131415161718192021222324252627
  1. using static Ryujinx.Graphics.Gal.Shader.ShaderDecodeHelper;
  2. namespace Ryujinx.Graphics.Gal.Shader
  3. {
  4. static partial class ShaderDecode
  5. {
  6. public static void Out_R(ShaderIrBlock Block, long OpCode, long Position)
  7. {
  8. //TODO: Those registers have to be used for something
  9. ShaderIrOperGpr Gpr0 = OpCode.Gpr0();
  10. ShaderIrOperGpr Gpr8 = OpCode.Gpr8();
  11. ShaderIrOperGpr Gpr20 = OpCode.Gpr20();
  12. int Type = OpCode.Read(39, 3);
  13. if ((Type & 1) != 0)
  14. {
  15. Block.AddNode(OpCode.PredNode(new ShaderIrOp(ShaderIrInst.Emit)));
  16. }
  17. if ((Type & 2) != 0)
  18. {
  19. Block.AddNode(OpCode.PredNode(new ShaderIrOp(ShaderIrInst.Cut)));
  20. }
  21. }
  22. }
  23. }