ShaderDecodeSpecial.cs 748 B

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