@grain/binaryen.ml 0.20.1 → 0.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- binaryen-archive/CHANGELOG.md +64 -0
- binaryen-archive/binaryen.opam +3 -3
- binaryen-archive/esy.lock/index.json +491 -426
- binaryen-archive/esy.lock/opam/{base.v0.15.1 → base.v0.16.1}/opam +7 -4
- binaryen-archive/esy.lock/opam/{chrome-trace.3.6.1 → chrome-trace.3.9.1}/opam +4 -4
- binaryen-archive/esy.lock/opam/{cmdliner.1.1.1 → cmdliner.1.2.0}/opam +2 -2
- binaryen-archive/esy.lock/opam/{csexp.1.5.1 → csexp.1.5.2}/opam +7 -9
- binaryen-archive/esy.lock/opam/{dune-build-info.3.6.1 → dune-build-info.3.9.1}/opam +4 -4
- binaryen-archive/esy.lock/opam/{dune-configurator.3.6.1 → dune-configurator.3.9.1}/opam +4 -4
- binaryen-archive/esy.lock/opam/{dune-rpc.3.6.1 → dune-rpc.3.9.1}/opam +4 -4
- binaryen-archive/esy.lock/opam/{dune.3.6.1 → dune.3.9.1}/opam +5 -5
- binaryen-archive/esy.lock/opam/{dyn.3.6.1 → dyn.3.9.1}/opam +4 -4
- binaryen-archive/esy.lock/opam/fiber.3.7.0/opam +39 -0
- binaryen-archive/esy.lock/opam/{fix.20220121 → fix.20230505}/opam +3 -3
- binaryen-archive/esy.lock/opam/gen.1.1/opam +31 -0
- binaryen-archive/esy.lock/opam/{js_of_ocaml-compiler.4.1.0 → js_of_ocaml-compiler.5.4.0}/opam +10 -10
- binaryen-archive/esy.lock/opam/{menhir.20220210 → menhir.20230608}/opam +4 -4
- binaryen-archive/esy.lock/opam/{menhirLib.20220210 → menhirLib.20230608}/opam +4 -4
- binaryen-archive/esy.lock/opam/{menhirSdk.20220210 → menhirSdk.20230608}/opam +4 -4
- binaryen-archive/esy.lock/opam/{ocamlbuild.0.14.2 → ocamlbuild.0.14.2+win}/opam +13 -14
- binaryen-archive/esy.lock/opam/ocamlfind.1.9.6/files/0001-Harden-test-for-OCaml-5.patch +12 -0
- binaryen-archive/esy.lock/opam/{ocamlfind.1.9.5 → ocamlfind.1.9.6}/opam +8 -7
- binaryen-archive/esy.lock/opam/{ocamlformat-rpc-lib.0.24.1 → ocamlformat-rpc-lib.0.25.1}/opam +4 -4
- binaryen-archive/esy.lock/opam/ocamlformat.0.24.1/opam +1 -1
- binaryen-archive/esy.lock/opam/{ordering.3.6.1 → ordering.3.9.1}/opam +4 -4
- binaryen-archive/esy.lock/opam/{ppx_yojson_conv_lib.v0.15.0 → ppx_yojson_conv_lib.v0.16.0}/opam +3 -3
- binaryen-archive/esy.lock/opam/{ppxlib.0.28.0 → ppxlib.0.29.1}/opam +5 -5
- binaryen-archive/esy.lock/opam/sedlex.3.2/opam +48 -0
- binaryen-archive/esy.lock/opam/{sexplib0.v0.15.1 → sexplib0.v0.16.0}/opam +3 -3
- binaryen-archive/esy.lock/opam/{stdio.v0.15.0 → stdio.v0.16.0}/opam +4 -4
- binaryen-archive/esy.lock/opam/{stdune.3.6.1 → stdune.3.9.1}/opam +4 -4
- binaryen-archive/esy.lock/opam/{topkg.1.0.6 → topkg.1.0.7}/opam +2 -2
- binaryen-archive/esy.lock/opam/{xdg.3.6.1 → xdg.3.9.1}/opam +4 -4
- binaryen-archive/esy.lock/opam/{yojson.2.0.2 → yojson.2.1.0}/opam +33 -23
- binaryen-archive/esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.2+win_opam_override/files/ocamlbuild-0.14.2.patch +0 -0
- binaryen-archive/esy.lock/overrides/opam__s__ocamlfind_opam__c__1.9.6_opam_override/files/findlib.patch +11 -0
- binaryen-archive/package.json +3 -3
- binaryen-archive/src/array_type.c +29 -0
- binaryen-archive/src/array_type.js +17 -0
- binaryen-archive/src/array_type.ml +8 -0
- binaryen-archive/src/array_type.mli +3 -0
- binaryen-archive/src/dune +38 -32
- binaryen-archive/src/{binaryen_stubs_exports.c → export.c} +0 -8
- binaryen-archive/src/{binaryen_stubs_expressions.c → expression.c} +24 -15
- binaryen-archive/src/{binaryen_stubs_expressions.js → expression.js} +20 -6
- binaryen-archive/src/expression.ml +14 -5
- binaryen-archive/src/expression.mli +10 -2
- binaryen-archive/src/{binaryen_stubs_functions.c → function.c} +0 -24
- binaryen-archive/src/{binaryen_stubs_globals.c → global.c} +0 -25
- binaryen-archive/src/heap_type.c +171 -0
- binaryen-archive/src/heap_type.js +131 -0
- binaryen-archive/src/heap_type.ml +12 -1
- binaryen-archive/src/heap_type.mli +12 -1
- binaryen-archive/src/{binaryen_stubs_literals.c → literal.c} +0 -9
- binaryen-archive/src/{binaryen_stubs_memory.c → memory.c} +15 -5
- binaryen-archive/src/{binaryen_stubs_memory.js → memory.js} +11 -1
- binaryen-archive/src/memory.ml +6 -3
- binaryen-archive/src/memory.mli +10 -1
- binaryen-archive/src/{binaryen_stubs_modules.c → module.c} +0 -9
- binaryen-archive/src/module.ml +4 -5
- binaryen-archive/src/module.mli +1 -1
- binaryen-archive/src/{binaryen_stubs_features.c → module_feature.c} +6 -6
- binaryen-archive/src/{binaryen_stubs_features.js → module_feature.js} +6 -6
- binaryen-archive/src/ocaml_helpers.c +87 -0
- binaryen-archive/src/ocaml_helpers.h +33 -0
- binaryen-archive/src/{binaryen_stubs_ops.c → op.c} +597 -333
- binaryen-archive/src/op.js +2129 -0
- binaryen-archive/src/op.ml +499 -352
- binaryen-archive/src/op.mli +46 -7
- binaryen-archive/src/passes.ml +46 -0
- binaryen-archive/src/passes.mli +45 -0
- binaryen-archive/src/signature_type.c +23 -0
- binaryen-archive/src/signature_type.js +11 -0
- binaryen-archive/src/signature_type.ml +5 -0
- binaryen-archive/src/signature_type.mli +2 -0
- binaryen-archive/src/struct_type.c +39 -0
- binaryen-archive/src/struct_type.js +23 -0
- binaryen-archive/src/struct_type.ml +11 -0
- binaryen-archive/src/struct_type.mli +4 -0
- binaryen-archive/src/{binaryen_stubs_tables.c → table.c} +0 -25
- binaryen-archive/src/{binaryen_stubs_types.c → type.c} +30 -12
- binaryen-archive/src/{binaryen_stubs_types.js → type.js} +31 -3
- binaryen-archive/src/type.ml +18 -2
- binaryen-archive/src/type.mli +5 -1
- binaryen-archive/src/{binaryen_stubs_type_system.c → type_system.c} +0 -6
- binaryen-archive/src/{binaryen_stubs_type_system.js → type_system.js} +0 -6
- binaryen-archive/src/type_system.ml +0 -1
- binaryen-archive/src/type_system.mli +0 -1
- binaryen-archive/test/test.expected +13 -13
- binaryen-archive/test/test.ml +11 -3
- binaryen-archive/esy.lock/opam/fiber.3.6.1/opam +0 -41
- binaryen-archive/esy.lock/opam/ocamlfind.1.9.5/files/0001-Fix-bug-when-installing-with-a-system-compiler.patch +0 -26
- binaryen-archive/esy.lock/overrides/opam__s__ocamlfind_opam__c__1.9.5_opam_override/files/findlib.patch +0 -485
- binaryen-archive/src/binaryen_stubs_heap_types.c +0 -95
- binaryen-archive/src/binaryen_stubs_heap_types.js +0 -65
- binaryen-archive/src/binaryen_stubs_ops.js +0 -1895
- /binaryen-archive/esy.lock/overrides/{opam__s__ocamlbuild_opam__c__0.14.2_opam_override → opam__s__ocamlbuild_opam__c__0.14.2+win_opam_override}/files/winpatch.patch +0 -0
- /binaryen-archive/esy.lock/overrides/{opam__s__ocamlbuild_opam__c__0.14.2_opam_override → opam__s__ocamlbuild_opam__c__0.14.2+win_opam_override}/package.json +0 -0
- /binaryen-archive/esy.lock/overrides/{opam__s__ocamlfind_opam__c__1.9.5_opam_override → opam__s__ocamlfind_opam__c__1.9.6_opam_override}/package.json +0 -0
- /binaryen-archive/src/{binaryen_stubs_exports.js → export.js} +0 -0
- /binaryen-archive/src/{binaryen_stubs_functions.js → function.js} +0 -0
- /binaryen-archive/src/{binaryen_stubs_globals.js → global.js} +0 -0
- /binaryen-archive/src/{binaryen_stubs_imports.c → import.c} +0 -0
- /binaryen-archive/src/{binaryen_stubs_imports.js → import.js} +0 -0
- /binaryen-archive/src/{binaryen_stubs_literals.js → literal.js} +0 -0
- /binaryen-archive/src/{binaryen_stubs_modules.js → module.js} +0 -0
- /binaryen-archive/src/{binaryen_stubs_packed_types.c → packed_type.c} +0 -0
- /binaryen-archive/src/{binaryen_stubs_packed_types.js → packed_type.js} +0 -0
- /binaryen-archive/src/{binaryen_stubs_settings.c → settings.c} +0 -0
- /binaryen-archive/src/{binaryen_stubs_settings.js → settings.js} +0 -0
- /binaryen-archive/src/{binaryen_stubs_tables.js → table.js} +0 -0
|
@@ -6,6 +6,93 @@
|
|
|
6
6
|
|
|
7
7
|
#include "ocaml_helpers.h"
|
|
8
8
|
|
|
9
|
+
/* Allocating an OCaml custom block to hold the given BinaryenFunctionRef */
|
|
10
|
+
value alloc_BinaryenFunctionRef(BinaryenFunctionRef fun)
|
|
11
|
+
{
|
|
12
|
+
value v = caml_alloc_custom(&binaryen_ops, sizeof(BinaryenFunctionRef), 0, 1);
|
|
13
|
+
BinaryenFunctionRef_val(v) = fun;
|
|
14
|
+
return v;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
/* Allocating an OCaml custom block to hold the given BinaryenExpressionRef */
|
|
18
|
+
value alloc_BinaryenExpressionRef(BinaryenExpressionRef exp)
|
|
19
|
+
{
|
|
20
|
+
value v = caml_alloc_custom(&binaryen_ops, sizeof(BinaryenExpressionRef), 0, 1);
|
|
21
|
+
BinaryenExpressionRef_val(v) = exp;
|
|
22
|
+
return v;
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
/* Allocating an OCaml custom block to hold the given BinaryenType */
|
|
26
|
+
value alloc_BinaryenType(BinaryenType typ)
|
|
27
|
+
{
|
|
28
|
+
value v = caml_alloc_custom(&binaryen_ops, sizeof(BinaryenType), 0, 1);
|
|
29
|
+
BinaryenType_val(v) = typ;
|
|
30
|
+
return v;
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
/* Allocating an OCaml custom block to hold the given BinaryenGlobalRef */
|
|
34
|
+
value alloc_BinaryenGlobalRef(BinaryenGlobalRef exp)
|
|
35
|
+
{
|
|
36
|
+
value v = caml_alloc_custom(&binaryen_ops, sizeof(BinaryenGlobalRef), 0, 1);
|
|
37
|
+
BinaryenGlobalRef_val(v) = exp;
|
|
38
|
+
return v;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
/* Allocating an OCaml custom block to hold the given BinaryenExportRef */
|
|
42
|
+
value alloc_BinaryenExportRef(BinaryenExportRef exp)
|
|
43
|
+
{
|
|
44
|
+
value v = caml_alloc_custom(&binaryen_ops, sizeof(BinaryenExportRef), 0, 1);
|
|
45
|
+
BinaryenExportRef_val(v) = exp;
|
|
46
|
+
return v;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
/* Allocating an OCaml custom block to hold the given BinaryenHeapType */
|
|
50
|
+
value alloc_BinaryenHeapType(BinaryenHeapType typ)
|
|
51
|
+
{
|
|
52
|
+
value v = caml_alloc_custom(&binaryen_ops, sizeof(BinaryenHeapType), 0, 1);
|
|
53
|
+
BinaryenHeapType_val(v) = typ;
|
|
54
|
+
return v;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/* Allocating an OCaml custom block to hold the given BinaryenLiteral */
|
|
58
|
+
value alloc_BinaryenLiteral(struct BinaryenLiteral op)
|
|
59
|
+
{
|
|
60
|
+
value v = caml_alloc_custom(&binaryen_ops, sizeof(struct BinaryenLiteral), 0, 1);
|
|
61
|
+
BinaryenLiteral_val(v) = op;
|
|
62
|
+
return v;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/* Allocating an OCaml custom block to hold the given BinaryenModuleRef */
|
|
66
|
+
value alloc_BinaryenModuleRef(BinaryenModuleRef typ)
|
|
67
|
+
{
|
|
68
|
+
value v = caml_alloc_custom(&binaryen_ops, sizeof(BinaryenModuleRef), 0, 1);
|
|
69
|
+
BinaryenModuleRef_val(v) = typ;
|
|
70
|
+
return v;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/* Allocating an OCaml custom block to hold the given BinaryenOp */
|
|
74
|
+
value alloc_BinaryenOp(BinaryenOp op)
|
|
75
|
+
{
|
|
76
|
+
value v = caml_alloc_custom(&binaryen_ops, sizeof(BinaryenOp), 0, 1);
|
|
77
|
+
BinaryenOp_val(v) = op;
|
|
78
|
+
return v;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
/* Allocating an OCaml custom block to hold the given BinaryenTableRef */
|
|
82
|
+
value alloc_BinaryenTableRef(BinaryenTableRef table)
|
|
83
|
+
{
|
|
84
|
+
value v = caml_alloc_custom(&binaryen_ops, sizeof(BinaryenTableRef), 0, 1);
|
|
85
|
+
BinaryenTableRef_val(v) = table;
|
|
86
|
+
return v;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/* Allocating an OCaml custom block to hold the given BinaryenElementSegmentRef */
|
|
90
|
+
value alloc_BinaryenElementSegmentRef(BinaryenElementSegmentRef elem)
|
|
91
|
+
{
|
|
92
|
+
value v = caml_alloc_custom(&binaryen_ops, sizeof(BinaryenElementSegmentRef), 0, 1);
|
|
93
|
+
BinaryenElementSegmentRef_val(v) = elem;
|
|
94
|
+
return v;
|
|
95
|
+
}
|
|
9
96
|
|
|
10
97
|
CAMLprim value
|
|
11
98
|
array_of_list(value list) {
|
|
@@ -41,6 +41,39 @@ static struct custom_operations binaryen_ops = {
|
|
|
41
41
|
|
|
42
42
|
#define Safe_String_val(v) ((char *)memcpy(malloc(caml_string_length(v) + 1), String_val(v), caml_string_length(v) + 1))
|
|
43
43
|
|
|
44
|
+
/* Allocating an OCaml custom block to hold the given BinaryenFunctionRef */
|
|
45
|
+
value alloc_BinaryenFunctionRef(BinaryenFunctionRef fun);
|
|
46
|
+
|
|
47
|
+
/* Allocating an OCaml custom block to hold the given BinaryenExpressionRef */
|
|
48
|
+
value alloc_BinaryenExpressionRef(BinaryenExpressionRef exp);
|
|
49
|
+
|
|
50
|
+
/* Allocating an OCaml custom block to hold the given BinaryenType */
|
|
51
|
+
value alloc_BinaryenType(BinaryenType typ);
|
|
52
|
+
|
|
53
|
+
/* Allocating an OCaml custom block to hold the given BinaryenGlobalRef */
|
|
54
|
+
value alloc_BinaryenGlobalRef(BinaryenGlobalRef exp);
|
|
55
|
+
|
|
56
|
+
/* Allocating an OCaml custom block to hold the given BinaryenExportRef */
|
|
57
|
+
value alloc_BinaryenExportRef(BinaryenExportRef exp);
|
|
58
|
+
|
|
59
|
+
/* Allocating an OCaml custom block to hold the given BinaryenHeapType */
|
|
60
|
+
value alloc_BinaryenHeapType(BinaryenHeapType typ);
|
|
61
|
+
|
|
62
|
+
/* Allocating an OCaml custom block to hold the given BinaryenLiteral */
|
|
63
|
+
value alloc_BinaryenLiteral(struct BinaryenLiteral op);
|
|
64
|
+
|
|
65
|
+
/* Allocating an OCaml custom block to hold the given BinaryenModuleRef */
|
|
66
|
+
value alloc_BinaryenModuleRef(BinaryenModuleRef typ);
|
|
67
|
+
|
|
68
|
+
/* Allocating an OCaml custom block to hold the given BinaryenOp */
|
|
69
|
+
value alloc_BinaryenOp(BinaryenOp op);
|
|
70
|
+
|
|
71
|
+
/* Allocating an OCaml custom block to hold the given BinaryenTableRef */
|
|
72
|
+
value alloc_BinaryenTableRef(BinaryenTableRef table);
|
|
73
|
+
|
|
74
|
+
/* Allocating an OCaml custom block to hold the given BinaryenElementSegmentRef */
|
|
75
|
+
value alloc_BinaryenElementSegmentRef(BinaryenElementSegmentRef elem);
|
|
76
|
+
|
|
44
77
|
CAMLprim value
|
|
45
78
|
array_of_list(value list);
|
|
46
79
|
|