Jit_backendJIT backend dispatch - architecture-independent interface for JIT. This module allows jit.ml to register a callback without knowing about architecture-specific emitters.
module String_map : Map.S with type key = stringtype packed_sections = | Packed : {emitter : (module Binary_emitter_intf.S
with type Assembled_section.t = 'a
and type Relocation.t = 'r);sections : 'a String_map.t;} -> packed_sectionsPacked sections with their Binary_emitter.S module, hiding the architecture-specific types using an existential.
type callback = packed_sections -> unitval register : callback -> unitRegister a JIT callback. When code is generated, the callback will be invoked with the assembled sections packed with their emitter module. This handles architecture dispatch internally.