@@ -227,25 +227,25 @@ let generate_prelude ~out_file =
227227 in
228228 let context = Generate. start () in
229229 let debug = Parse_bytecode.Debug. create ~include_cmis: false false in
230- let _ =
230+ let _, generated_js =
231231 Generate. f
232232 ~context
233- ~unit_name: (Some " prelude " )
233+ ~unit_name: (Some " wasmoo_prelude " )
234234 ~live_vars: variable_uses
235235 ~in_cps
236236 ~deadcode_sentinal
237237 ~debug
238238 program
239239 in
240240 Generate. output ch ~context ;
241- uinfo.provides
241+ uinfo.provides, generated_js
242242
243243let build_prelude z =
244244 Fs. with_intermediate_file (Filename. temp_file " prelude" " .wasm" )
245245 @@ fun prelude_file ->
246246 Fs. with_intermediate_file (Filename. temp_file " prelude_file" " .wasm" )
247247 @@ fun tmp_prelude_file ->
248- let predefined_exceptions = generate_prelude ~out_file: prelude_file in
248+ let info = generate_prelude ~out_file: prelude_file in
249249 Binaryen. optimize
250250 ~profile: (Driver. profile 1 )
251251 ~input_file: prelude_file
@@ -254,7 +254,7 @@ let build_prelude z =
254254 ~opt_output_sourcemap: None
255255 () ;
256256 Zip. add_file z ~name: " prelude.wasm" ~file: tmp_prelude_file;
257- predefined_exceptions
257+ info
258258
259259let build_js_runtime ~primitives ?runtime_arguments () =
260260 let always_required_js, primitives =
@@ -432,12 +432,18 @@ let run
432432 let z = Zip. open_out tmp_output_file in
433433 Zip. add_file z ~name: " runtime.wasm" ~file: tmp_wasm_file;
434434 Zip. add_entry z ~name: " runtime.js" ~contents: js_runtime;
435- let predefined_exceptions = build_prelude z in
435+ let predefined_exceptions, (strings, fragments) = build_prelude z in
436436 Link. add_info
437437 z
438438 ~predefined_exceptions
439439 ~build_info: (Build_info. create `Runtime )
440- ~unit_data: []
440+ ~unit_data:
441+ [ { Link. unit_name = " wasmoo_prelude"
442+ ; unit_info = Unit_info. empty
443+ ; strings
444+ ; fragments
445+ }
446+ ]
441447 () ;
442448 Zip. close_out z)
443449 else
0 commit comments