package ocaml-base-compiler

  1. Overview
  2. Docs
type compilation_env = {
  1. ce_stack : int Ident.tbl;
  2. ce_heap : int Ident.tbl;
  3. ce_rec : int Ident.tbl;
}
type debug_event = {
  1. mutable ev_pos : int;
  2. ev_module : string;
  3. ev_loc : Location.t;
  4. ev_kind : debug_event_kind;
  5. ev_info : debug_event_info;
  6. ev_typenv : Env.summary;
  7. ev_typsubst : Subst.t;
  8. ev_compenv : compilation_env;
  9. ev_stacksize : int;
  10. ev_repr : debug_event_repr;
}
and debug_event_kind =
  1. | Event_before
  2. | Event_after of Types.type_expr
  3. | Event_pseudo
and debug_event_info =
  1. | Event_function
  2. | Event_return of int
  3. | Event_other
and debug_event_repr =
  1. | Event_none
  2. | Event_parent of int ref
  3. | Event_child of int ref
type label = int
type instruction =
  1. | Klabel of label
  2. | Kacc of int
  3. | Kenvacc of int
  4. | Kpush
  5. | Kpop of int
  6. | Kassign of int
  7. | Kpush_retaddr of label
  8. | Kapply of int
  9. | Kappterm of int * int
  10. | Kreturn of int
  11. | Krestart
  12. | Kgrab of int
  13. | Kclosure of label * int
  14. | Kclosurerec of label list * int
  15. | Koffsetclosure of int
  16. | Kgetglobal of Ident.t
  17. | Ksetglobal of Ident.t
  18. | Kconst of Lambda.structured_constant
  19. | Kmakeblock of int * int
  20. | Kmakefloatblock of int
  21. | Kgetfield of int
  22. | Ksetfield of int
  23. | Kgetfloatfield of int
  24. | Ksetfloatfield of int
  25. | Kvectlength
  26. | Kgetvectitem
  27. | Ksetvectitem
  28. | Kgetstringchar
  29. | Kgetbyteschar
  30. | Ksetbyteschar
  31. | Kbranch of label
  32. | Kbranchif of label
  33. | Kbranchifnot of label
  34. | Kstrictbranchif of label
  35. | Kstrictbranchifnot of label
  36. | Kswitch of label array * label array
  37. | Kboolnot
  38. | Kpushtrap of label
  39. | Kpoptrap
  40. | Kraise of Lambda.raise_kind
  41. | Kcheck_signals
  42. | Kccall of string * int
  43. | Knegint
  44. | Kaddint
  45. | Ksubint
  46. | Kmulint
  47. | Kdivint
  48. | Kmodint
  49. | Kandint
  50. | Korint
  51. | Kxorint
  52. | Klslint
  53. | Klsrint
  54. | Kasrint
  55. | Kintcomp of Lambda.integer_comparison
  56. | Koffsetint of int
  57. | Koffsetref of int
  58. | Kisint
  59. | Kisout
  60. | Kgetmethod
  61. | Kgetpubmet of int
  62. | Kgetdynmet
  63. | Kevent of debug_event
  64. | Kstop
val immed_min : int
val immed_max : int