summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorXavier Leroy <xavier.leroy@inria.fr>1996-05-28 12:40:09 +0000
committerXavier Leroy <xavier.leroy@inria.fr>1996-05-28 12:40:09 +0000
commit7714c02c6802469aa3edab124086e9dbfcab081e (patch)
tree708189c6bb29072942b0955dceec024ff733739a
parent316027b91caa06dbe978866e8fdf5ef564506d47 (diff)
Remplacement de Meta.execute_bytecode par Meta.reify_bytecode.
Adaptation de Bytegen.compile_phrase en consequence. git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@843 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
-rw-r--r--bytecomp/bytegen.ml2
-rw-r--r--bytecomp/meta.ml3
-rw-r--r--bytecomp/meta.mli3
3 files changed, 5 insertions, 3 deletions
diff --git a/bytecomp/bytegen.ml b/bytecomp/bytegen.ml
index b412be4df..831f34b7b 100644
--- a/bytecomp/bytegen.ml
+++ b/bytecomp/bytegen.ml
@@ -480,7 +480,7 @@ let compile_phrase expr =
label_counter := 0;
lbl_staticfail := 0;
sz_staticfail := 0;
- let init_code = comp_expr empty_env expr 0 [Kstop] in
+ let init_code = comp_expr empty_env expr 1 [Kreturn 1] in
let fun_code = comp_remainder [] in
(init_code, fun_code)
diff --git a/bytecomp/meta.ml b/bytecomp/meta.ml
index 038ac3526..94a34bbaa 100644
--- a/bytecomp/meta.ml
+++ b/bytecomp/meta.ml
@@ -16,5 +16,6 @@ external realloc_global_data : int -> unit = "realloc_global"
external static_alloc : int -> string = "static_alloc"
external static_free : string -> unit = "static_free"
external static_resize : string -> int -> string = "static_resize"
-external execute_bytecode : string -> int -> Obj.t = "execute_bytecode"
+type closure = unit -> Obj.t
+external reify_bytecode : string -> int -> closure = "reify_bytecode"
external available_primitives : unit -> string array = "available_primitives"
diff --git a/bytecomp/meta.mli b/bytecomp/meta.mli
index ab4d161ab..677a53b44 100644
--- a/bytecomp/meta.mli
+++ b/bytecomp/meta.mli
@@ -18,5 +18,6 @@ external realloc_global_data : int -> unit = "realloc_global"
external static_alloc : int -> string = "static_alloc"
external static_free : string -> unit = "static_free"
external static_resize : string -> int -> string = "static_resize"
-external execute_bytecode : string -> int -> Obj.t = "execute_bytecode"
+type closure = unit -> Obj.t
+external reify_bytecode : string -> int -> closure = "reify_bytecode"
external available_primitives : unit -> string array = "available_primitives"