FlowControl.cs 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. // FlowControl.cs
  2. //
  3. // (C) 2001 Ximian, Inc. http://www.ximian.com
  4. namespace System.Reflection.Emit {
  5. /// <summary>
  6. /// Describes how an instruction alters the flow of control.
  7. /// </summary>
  8. public enum FlowControl {
  9. /// <summary>
  10. /// Branch instruction (ex: br, leave).
  11. /// </summary>
  12. Branch = 0,
  13. /// <summary>
  14. /// Break instruction (ex: break).
  15. /// </summary>
  16. Break = 1,
  17. /// <summary>
  18. /// Call instruction (ex: jmp, call, callvirt).
  19. /// </summary>
  20. Call = 2,
  21. /// <summary>
  22. /// Conditional branch instruction (ex: brtrue, brfalse).
  23. /// </summary>
  24. Cond_Branch = 3,
  25. /// <summary>
  26. /// Changes the behaviour of or provides additional
  27. /// about a subsequent instruction.
  28. /// (ex: prefixes such as volatile, unaligned).
  29. /// </summary>
  30. Meta = 4,
  31. /// <summary>
  32. /// Transition to the next instruction.
  33. /// </summary>
  34. Next = 5,
  35. /// <summary>
  36. /// Annotation for ann.phi instruction.
  37. /// </summary>
  38. Phi = 6,
  39. /// <summary>
  40. /// Return instruction.
  41. /// </summary>
  42. Return = 7,
  43. /// <summary>
  44. /// Throw instruction.
  45. /// </summary>
  46. Throw = 8
  47. }
  48. }