OpCodePush.cs 796 B

123456789101112131415161718192021222324
  1. using Ryujinx.Graphics.Shader.Instructions;
  2. using Ryujinx.Graphics.Shader.IntermediateRepresentation;
  3. using System.Collections.Generic;
  4. namespace Ryujinx.Graphics.Shader.Decoders
  5. {
  6. class OpCodePush : OpCodeBranch
  7. {
  8. public Dictionary<OpCodeBranchPop, Operand> PopOps { get; }
  9. public new static OpCode Create(InstEmitter emitter, ulong address, long opCode) => new OpCodePush(emitter, address, opCode);
  10. public OpCodePush(InstEmitter emitter, ulong address, long opCode) : base(emitter, address, opCode)
  11. {
  12. PopOps = new Dictionary<OpCodeBranchPop, Operand>();
  13. Predicate = new Register(RegisterConsts.PredicateTrueIndex, RegisterType.Predicate);
  14. InvertPredicate = false;
  15. PushTarget = true;
  16. }
  17. }
  18. }