summaryrefslogtreecommitdiff
path: root/bytecomp/emitcode.mli
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>2006-05-11 15:50:53 +0000
committerXavier Leroy <xavier.leroy@inria.fr>2006-05-11 15:50:53 +0000
commit09921987cc807443c13b598ce5dccab6cc2bd74f (patch)
tree4753409042cf178cd974b731c129dbbe302f87d2 /bytecomp/emitcode.mli
parent7e41567e69cc6a219a51334c94da89c2fd9b52bd (diff)
downloadocaml-09921987cc807443c13b598ce5dccab6cc2bd74f.tar.gz
Deplacement des infos de format des .cmo et .cma dans Cmo_format
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@7422 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'bytecomp/emitcode.mli')
-rw-r--r--bytecomp/emitcode.mli47
1 files changed, 1 insertions, 46 deletions
diff --git a/bytecomp/emitcode.mli b/bytecomp/emitcode.mli
index 226f869971..fa20de1816 100644
--- a/bytecomp/emitcode.mli
+++ b/bytecomp/emitcode.mli
@@ -14,54 +14,9 @@
(* Generation of bytecode for .cmo files *)
-open Lambda
+open Cmo_format
open Instruct
-(* Relocation information *)
-
-type reloc_info =
- Reloc_literal of structured_constant (* structured constant *)
- | Reloc_getglobal of Ident.t (* reference to a global *)
- | Reloc_setglobal of Ident.t (* definition of a global *)
- | Reloc_primitive of string (* C primitive number *)
-
-(* Descriptor for compilation units *)
-
-type compilation_unit =
- { cu_name: string; (* Name of compilation unit *)
- mutable cu_pos: int; (* Absolute position in file *)
- cu_codesize: int; (* Size of code block *)
- cu_reloc: (reloc_info * int) list; (* Relocation information *)
- cu_imports: (string * Digest.t) list; (* Names and CRC of intfs imported *)
- cu_primitives: string list; (* Primitives declared inside *)
- mutable cu_force_link: bool; (* Must be linked even if unref'ed *)
- mutable cu_debug: int; (* Position of debugging info, or 0 *)
- cu_debugsize: int } (* Length of debugging info *)
-
-(* Format of a .cmo file:
- magic number (Config.cmo_magic_number)
- absolute offset of compilation unit descriptor
- block of relocatable bytecode
- debugging information if any
- compilation unit descriptor *)
-
-(* Descriptor for libraries *)
-
-type library =
- { lib_units: compilation_unit list; (* List of compilation units *)
- lib_custom: bool; (* Requires custom mode linking? *)
- lib_ccobjs: string list; (* C object files needed for -custom *)
- lib_ccopts: string list; (* Extra opts to C compiler *)
- lib_dllibs: string list } (* DLLs needed *)
-
-(* Format of a .cma file:
- magic number (Config.cma_magic_number)
- absolute offset of library descriptor
- object code for first library member
- ...
- object code for last library member
- library descriptor *)
-
val to_file: out_channel -> string -> instruction list -> unit
(* Arguments:
channel on output file