@@ -253,9 +253,19 @@ let _ =
253
253
| `Cps -> " --effects=cps"
254
254
| `Double_translation -> " --effects=double-translation" ))
255
255
in
256
+ let compile_wasmoo ?(effects = `None ) opts =
257
+ compile
258
+ (Format. sprintf
259
+ " wasm_of_ocaml -q %s %s"
260
+ opts
261
+ (match effects with
262
+ | `None -> " "
263
+ | `Cps -> " --effects=cps" ))
264
+ in
256
265
Format. eprintf " Compile@." ;
257
266
compile " ocamlc" src Spec. ml code Spec. byte;
258
267
compile " ocamlopt" src Spec. ml code Spec. opt;
268
+ compile_wasmoo " " code Spec. byte code Spec. wasm_of_ocaml;
259
269
compile_jsoo " " code Spec. byte code Spec. js_of_ocaml;
260
270
compile_jsoo " --opt=3" code Spec. byte code Spec. js_of_ocaml_o3;
261
271
compile_jsoo " --enable=use-js-string" code Spec. byte code Spec. js_of_ocaml_js_string;
@@ -278,6 +288,7 @@ let _ =
278
288
ml_size param src Spec. ml sizes Spec. ml;
279
289
file_size param code Spec. byte sizes Spec. byte;
280
290
file_size param code Spec. js_of_ocaml sizes (Spec. sub_spec Spec. js_of_ocaml " full" );
291
+ file_size param code Spec. wasm_of_ocaml sizes (Spec. sub_spec Spec. wasm_of_ocaml " full" );
281
292
compr_file_size
282
293
param
283
294
code
@@ -296,6 +307,12 @@ let _ =
296
307
Spec. js_of_ocaml_effects_double_translation
297
308
sizes
298
309
(Spec. sub_spec Spec. js_of_ocaml_effects_double_translation " gzipped" );
310
+ compr_file_size
311
+ param
312
+ code
313
+ Spec. wasm_of_ocaml
314
+ sizes
315
+ (Spec. sub_spec Spec. wasm_of_ocaml " gzipped" );
299
316
bzip2_file_size
300
317
param
301
318
code
@@ -314,6 +331,12 @@ let _ =
314
331
Spec. js_of_ocaml
315
332
sizes
316
333
(Spec. sub_spec Spec. js_of_ocaml " bzip2" );
334
+ bzip2_file_size
335
+ param
336
+ code
337
+ Spec. wasm_of_ocaml
338
+ sizes
339
+ (Spec. sub_spec Spec. wasm_of_ocaml " bzip2" );
317
340
runtime_size
318
341
param
319
342
code
@@ -354,6 +377,7 @@ let _ =
354
377
; Some Spec. js_of_ocaml_call
355
378
; Some Spec. js_of_ocaml_effects_cps
356
379
; Some Spec. js_of_ocaml_effects_double_translation
380
+ ; Some Spec. wasm_of_ocaml
357
381
] )
358
382
else if effects
359
383
then
@@ -368,7 +392,7 @@ let _ =
368
392
( (match interpreters with
369
393
| i :: _ -> [ i ]
370
394
| [] -> [] )
371
- , [ Some Spec. js_of_ocaml ] )
395
+ , [ Some Spec. js_of_ocaml; Some Spec. wasm_of_ocaml ] )
372
396
in
373
397
List. iter compilers ~f: (fun (comp , dir ) ->
374
398
measure param src (Filename. concat times dir) Spec. js comp;
0 commit comments