GotoStatement.cs 596 B

1234567891011121314151617181920212223
  1. using Ryujinx.Graphics.Shader.IntermediateRepresentation;
  2. namespace Ryujinx.Graphics.Shader.StructuredIr
  3. {
  4. class GotoStatement
  5. {
  6. public AstOperation Goto { get; }
  7. public AstAssignment Label { get; }
  8. public IAstNode Condition => Label.Destination;
  9. public bool IsLoop { get; set; }
  10. public bool IsUnconditional => Goto.Inst == Instruction.Branch;
  11. public GotoStatement(AstOperation branch, AstAssignment label, bool isLoop)
  12. {
  13. Goto = branch;
  14. Label = label;
  15. IsLoop = isLoop;
  16. }
  17. }
  18. }