summaryrefslogtreecommitdiff
path: root/bytecomp/symtable.ml
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>1997-06-13 15:48:53 +0000
committerXavier Leroy <xavier.leroy@inria.fr>1997-06-13 15:48:53 +0000
commit7ec8fce54c949f4b2fc59e8c05dbe170a42f2c6d (patch)
tree7681b437b63c3d1769effc5ea59cdf0ca564dac2 /bytecomp/symtable.ml
parent6a8924cbb4b9a7f4b5d79f55ab8154c99881ca38 (diff)
downloadocaml-7ec8fce54c949f4b2fc59e8c05dbe170a42f2c6d.tar.gz
Nouveau format d'executable.
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@1593 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'bytecomp/symtable.ml')
-rw-r--r--bytecomp/symtable.ml16
1 files changed, 13 insertions, 3 deletions
diff --git a/bytecomp/symtable.ml b/bytecomp/symtable.ml
index 6ba9278c6f..fa281da163 100644
--- a/bytecomp/symtable.ml
+++ b/bytecomp/symtable.ml
@@ -82,11 +82,21 @@ let num_of_prim name =
let require_primitive name =
if name.[0] <> '%' then begin num_of_prim name; () end
-open Printf
-
-let output_primitives outchan =
+let all_primitives () =
let prim = Array.create !c_prim_table.num_cnt "" in
Tbl.iter (fun name number -> prim.(number) <- name) !c_prim_table.num_tbl;
+ prim
+
+let output_primitive_names outchan =
+ let prim = all_primitives() in
+ for i = 0 to Array.length prim - 1 do
+ output_string outchan prim.(i); output_char outchan '\000'
+ done
+
+open Printf
+
+let output_primitive_table outchan =
+ let prim = all_primitives() in
for i = 0 to Array.length prim - 1 do
fprintf outchan "extern long %s();\n" prim.(i)
done;