@@ -162,33 +162,33 @@ let generate_prelude ~out_file =
162162 in
163163 let context = Generate. start () in
164164 let debug = Parse_bytecode.Debug. create ~include_cmis: false false in
165- let _ =
165+ let _, generated_js =
166166 Generate. f
167167 ~context
168- ~unit_name: (Some " prelude " )
168+ ~unit_name: (Some " wasmoo_prelude " )
169169 ~live_vars: variable_uses
170170 ~in_cps
171171 ~deadcode_sentinal
172172 ~debug
173173 program
174174 in
175175 Generate. output ch ~context ;
176- uinfo.provides
176+ uinfo.provides, generated_js
177177
178178let build_prelude z =
179179 Fs. with_intermediate_file (Filename. temp_file " prelude" " .wasm" )
180180 @@ fun prelude_file ->
181181 Fs. with_intermediate_file (Filename. temp_file " prelude_file" " .wasm" )
182182 @@ fun tmp_prelude_file ->
183- let predefined_exceptions = generate_prelude ~out_file: prelude_file in
183+ let info = generate_prelude ~out_file: prelude_file in
184184 Binaryen. optimize
185185 ~profile: (Driver. profile 1 )
186186 ~input_file: prelude_file
187187 ~output_file: tmp_prelude_file
188188 ~opt_input_sourcemap: None
189189 ~opt_output_sourcemap: None ;
190190 Zip. add_file z ~name: " prelude.wasm" ~file: tmp_prelude_file;
191- predefined_exceptions
191+ info
192192
193193let build_js_runtime ~primitives ?runtime_arguments () =
194194 let always_required_js, primitives =
@@ -364,12 +364,18 @@ let run
364364 let z = Zip. open_out tmp_output_file in
365365 Zip. add_file z ~name: " runtime.wasm" ~file: tmp_wasm_file;
366366 Zip. add_entry z ~name: " runtime.js" ~contents: js_runtime;
367- let predefined_exceptions = build_prelude z in
367+ let predefined_exceptions, (strings, fragments) = build_prelude z in
368368 Link. add_info
369369 z
370370 ~predefined_exceptions
371371 ~build_info: (Build_info. create `Runtime )
372- ~unit_data: []
372+ ~unit_data:
373+ [ { Link. unit_name = " wasmoo_prelude"
374+ ; unit_info = Unit_info. empty
375+ ; strings
376+ ; fragments
377+ }
378+ ]
373379 () ;
374380 Zip. close_out z)
375381 else
0 commit comments