@grain/binaryen.ml 0.18.0 → 0.20.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.
Files changed (85) hide show
  1. binaryen-archive/CHANGELOG.md +54 -0
  2. binaryen-archive/README.md +0 -16
  3. binaryen-archive/binaryen.opam +5 -5
  4. binaryen-archive/dune-project +1 -1
  5. binaryen-archive/dune-workspace +1 -1
  6. binaryen-archive/esy.lock/index.json +422 -372
  7. binaryen-archive/esy.lock/opam/{base.v0.14.3 → base.v0.15.1}/opam +4 -4
  8. binaryen-archive/esy.lock/opam/camlp-streams.5.0.1/opam +59 -0
  9. binaryen-archive/esy.lock/opam/chrome-trace.3.6.1/opam +39 -0
  10. binaryen-archive/esy.lock/opam/{dune-build-info.3.3.1 → dune-build-info.3.6.1}/opam +6 -6
  11. binaryen-archive/esy.lock/opam/{dune-configurator.3.3.1 → dune-configurator.3.6.1}/opam +5 -5
  12. binaryen-archive/esy.lock/opam/{dune-rpc.3.3.1 → dune-rpc.3.6.1}/opam +5 -5
  13. binaryen-archive/esy.lock/opam/{dune.3.3.1 → dune.3.6.1}/opam +6 -6
  14. binaryen-archive/esy.lock/opam/{dyn.3.3.1 → dyn.3.6.1}/opam +5 -5
  15. binaryen-archive/esy.lock/opam/{fiber.3.3.1 → fiber.3.6.1}/opam +5 -5
  16. binaryen-archive/esy.lock/opam/{js_of_ocaml-compiler.4.0.0 → js_of_ocaml-compiler.4.1.0}/opam +9 -10
  17. binaryen-archive/esy.lock/opam/menhir.20220210/opam +1 -1
  18. binaryen-archive/esy.lock/opam/menhirLib.20220210/opam +1 -1
  19. binaryen-archive/esy.lock/opam/menhirSdk.20220210/opam +1 -1
  20. binaryen-archive/esy.lock/opam/{ocaml-lsp-server.1.12.2 → ocaml-lsp-server.1.12.4}/opam +7 -6
  21. binaryen-archive/esy.lock/opam/{ocaml-version.3.4.0 → ocaml-version.3.5.0}/opam +4 -4
  22. binaryen-archive/esy.lock/opam/{ocamlbuild.0.14.1 → ocamlbuild.0.14.2}/opam +3 -3
  23. binaryen-archive/esy.lock/opam/ocamlfind.1.9.5/files/0001-Fix-bug-when-installing-with-a-system-compiler.patch +26 -0
  24. binaryen-archive/esy.lock/opam/ocamlfind.1.9.5/opam +2 -0
  25. binaryen-archive/esy.lock/opam/{ocamlformat-rpc-lib.0.22.4 → ocamlformat-rpc-lib.0.24.1}/opam +4 -4
  26. binaryen-archive/esy.lock/opam/{ocamlformat.0.20.1 → ocamlformat.0.24.1}/opam +12 -12
  27. binaryen-archive/esy.lock/opam/{odoc-parser.1.0.0 → odoc-parser.2.0.0}/opam +6 -5
  28. binaryen-archive/esy.lock/opam/omd.1.3.2/opam +50 -0
  29. binaryen-archive/esy.lock/opam/{ordering.3.3.1 → ordering.3.6.1}/opam +5 -5
  30. binaryen-archive/esy.lock/opam/{ppxlib.0.27.0 → ppxlib.0.28.0}/opam +5 -5
  31. binaryen-archive/esy.lock/opam/{sexplib0.v0.14.0 → sexplib0.v0.15.1}/opam +3 -3
  32. binaryen-archive/esy.lock/opam/{stdio.v0.14.0 → stdio.v0.15.0}/opam +4 -4
  33. binaryen-archive/esy.lock/opam/{stdune.3.3.1 → stdune.3.6.1}/opam +5 -5
  34. binaryen-archive/esy.lock/opam/{topkg.1.0.5 → topkg.1.0.6}/opam +22 -19
  35. binaryen-archive/esy.lock/opam/uucp.15.0.0/opam +55 -0
  36. binaryen-archive/esy.lock/opam/{uuseg.14.0.0 → uuseg.15.0.0}/opam +39 -25
  37. binaryen-archive/esy.lock/opam/{xdg.3.3.1 → xdg.3.6.1}/opam +5 -5
  38. binaryen-archive/esy.lock/opam/{yojson.2.0.0 → yojson.2.0.2}/opam +5 -5
  39. binaryen-archive/esy.lock/overrides/{opam__s__ocamlbuild_opam__c__0.14.1_opam_override → opam__s__ocamlbuild_opam__c__0.14.2_opam_override}/files/winpatch.patch +0 -0
  40. binaryen-archive/esy.lock/overrides/{opam__s__ocamlbuild_opam__c__0.14.1_opam_override → opam__s__ocamlbuild_opam__c__0.14.2_opam_override}/package.json +0 -0
  41. binaryen-archive/package.json +8 -8
  42. binaryen-archive/src/binaryen_stubs_expressions.c +43 -33
  43. binaryen-archive/src/binaryen_stubs_expressions.js +221 -42
  44. binaryen-archive/src/binaryen_stubs_features.c +6 -0
  45. binaryen-archive/src/binaryen_stubs_features.js +6 -0
  46. binaryen-archive/src/binaryen_stubs_heap_types.c +95 -0
  47. binaryen-archive/src/binaryen_stubs_heap_types.js +65 -0
  48. binaryen-archive/src/binaryen_stubs_imports.c +16 -0
  49. binaryen-archive/src/binaryen_stubs_imports.js +14 -0
  50. binaryen-archive/src/binaryen_stubs_memory.c +83 -4
  51. binaryen-archive/src/binaryen_stubs_memory.js +95 -5
  52. binaryen-archive/src/binaryen_stubs_modules.c +22 -0
  53. binaryen-archive/src/binaryen_stubs_modules.js +17 -0
  54. binaryen-archive/src/binaryen_stubs_packed_types.c +26 -0
  55. binaryen-archive/src/binaryen_stubs_packed_types.js +17 -0
  56. binaryen-archive/src/binaryen_stubs_type_system.c +40 -0
  57. binaryen-archive/src/binaryen_stubs_type_system.js +29 -0
  58. binaryen-archive/src/binaryen_stubs_types.c +44 -0
  59. binaryen-archive/src/binaryen_stubs_types.js +36 -0
  60. binaryen-archive/src/dune +35 -12
  61. binaryen-archive/src/expression.ml +21 -24
  62. binaryen-archive/src/expression.mli +9 -9
  63. binaryen-archive/src/heap_type.ml +15 -0
  64. binaryen-archive/src/heap_type.mli +12 -0
  65. binaryen-archive/src/import.ml +6 -0
  66. binaryen-archive/src/import.mli +2 -0
  67. binaryen-archive/src/memory.ml +24 -0
  68. binaryen-archive/src/memory.mli +10 -1
  69. binaryen-archive/src/module.ml +12 -0
  70. binaryen-archive/src/module.mli +3 -0
  71. binaryen-archive/src/ocaml_helpers.h +1 -0
  72. binaryen-archive/src/packed_type.ml +13 -0
  73. binaryen-archive/src/packed_type.mli +5 -0
  74. binaryen-archive/src/passes.ml +6 -0
  75. binaryen-archive/src/passes.mli +6 -0
  76. binaryen-archive/src/type.ml +19 -0
  77. binaryen-archive/src/type.mli +7 -0
  78. binaryen-archive/src/type_system.ml +7 -0
  79. binaryen-archive/src/type_system.mli +7 -0
  80. binaryen-archive/test/dune +19 -20
  81. binaryen-archive/test/test.expected +64 -4
  82. binaryen-archive/test/test.ml +49 -5
  83. binaryen-archive/esy.lock/opam/omd.1.3.1/opam +0 -39
  84. binaryen-archive/esy.lock/opam/uucp.14.0.0/opam +0 -41
  85. binaryen-archive/esy.lock/overrides/opam__s__js__of__ocaml_compiler_opam__c__4.0.0_opam_override/package.json +0 -3
@@ -1,5 +1,59 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.20.0](https://github.com/grain-lang/binaryen.ml/compare/v0.19.0...v0.20.0) (2023-01-13)
4
+
5
+
6
+ ### ⚠ BREAKING CHANGES
7
+
8
+ * Require dune 3.0 to better support js_of_ocaml
9
+ * Update memory operations to require memory name
10
+ * Remove RttCanon and RttSub expression kinds
11
+ * Add optimize argument to StackIR emitting functions
12
+ * Require js_of_ocaml 4.1 to ensure optimization fix
13
+ * Upgrade to libbinaryen v110 ([#173](https://github.com/grain-lang/binaryen.ml/issues/173))
14
+ * Properly accept the size argument to Memory_init.make ([#171](https://github.com/grain-lang/binaryen.ml/issues/171))
15
+
16
+ ### Features
17
+
18
+ * Add functions for converting between Types and Heap Types ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
19
+ * Add operations on Heap Types ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
20
+ * Add operations on Packed Types ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
21
+ * Add operations on the Type System ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
22
+ * Add optimize argument to StackIR emitting functions ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
23
+ * Add Stringref and Stringview Types ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
24
+ * Add strings feature ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
25
+ * Support querying data segments ([#176](https://github.com/grain-lang/binaryen.ml/issues/176)) ([5a6141c](https://github.com/grain-lang/binaryen.ml/commit/5a6141cd585e5030f74ebdaaee1e664b4339c17e))
26
+ * Update memory operations to require memory name ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
27
+ * Upgrade to libbinaryen v110 ([#173](https://github.com/grain-lang/binaryen.ml/issues/173)) ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
28
+
29
+
30
+ ### Bug Fixes
31
+
32
+ * Properly accept the size argument to Memory_init.make ([#171](https://github.com/grain-lang/binaryen.ml/issues/171)) ([9ea20fe](https://github.com/grain-lang/binaryen.ml/commit/9ea20fe141f4f39697382c786c8d7f13290ff26d))
33
+
34
+
35
+ ### Miscellaneous Chores
36
+
37
+ * Remove RttCanon and RttSub expression kinds ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
38
+ * Require dune 3.0 to better support js_of_ocaml ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
39
+ * Require js_of_ocaml 4.1 to ensure optimization fix ([474e5cd](https://github.com/grain-lang/binaryen.ml/commit/474e5cd49b276b5becc54e6f1bf4d9c044ef5b76))
40
+
41
+ ## [0.19.0](https://github.com/grain-lang/binaryen.ml/compare/v0.18.0...v0.19.0) (2022-11-19)
42
+
43
+
44
+ ### ⚠ BREAKING CHANGES
45
+
46
+ * Upgrade to libbinaryen v109 (#165)
47
+
48
+ ### Features
49
+
50
+ * Add `Import.memory_import_get_module` and `Import.memory_import_get_base` functions ([b584500](https://github.com/grain-lang/binaryen.ml/commit/b5845005bd20c3813db11bebb9b47ad616c01c5d))
51
+ * Add function to print StackIR ([b584500](https://github.com/grain-lang/binaryen.ml/commit/b5845005bd20c3813db11bebb9b47ad616c01c5d))
52
+ * Add function to write StackIR ([b584500](https://github.com/grain-lang/binaryen.ml/commit/b5845005bd20c3813db11bebb9b47ad616c01c5d))
53
+ * Add gsi & spill_pointers passes ([b584500](https://github.com/grain-lang/binaryen.ml/commit/b5845005bd20c3813db11bebb9b47ad616c01c5d))
54
+ * Add operations on memory ([b584500](https://github.com/grain-lang/binaryen.ml/commit/b5845005bd20c3813db11bebb9b47ad616c01c5d))
55
+ * Upgrade to libbinaryen v109 ([#165](https://github.com/grain-lang/binaryen.ml/issues/165)) ([b584500](https://github.com/grain-lang/binaryen.ml/commit/b5845005bd20c3813db11bebb9b47ad616c01c5d))
56
+
3
57
  ## [0.18.0](https://github.com/grain-lang/binaryen.ml/compare/v0.17.1...v0.18.0) (2022-07-05)
4
58
 
5
59
 
@@ -76,22 +76,6 @@ If you are planning to create portable binaries for Windows, it will try to find
76
76
 
77
77
  These flags might not work on other operating systems (like MacOS), so you'll probably need to use `dune-configurator` to vary the flags per platform.
78
78
 
79
- ## JavaScript
80
-
81
- When compiling to JavaScript with `js_of_ocaml`, you'll need to add the `--disable share` flag. This is needed until we can depend on the bug fix from [ocsigen/js_of_ocaml#1249](https://github.com/ocsigen/js_of_ocaml/pull/1249). In the meantime, you can change your dune file:
82
-
83
- ```diff
84
- (executable
85
- (name example)
86
- (public_name example)
87
- (modes
88
- (byte js))
89
- + (js_of_ocaml
90
- + (flags --disable share))
91
- (modules example)
92
- (libraries binaryen))
93
- ```
94
-
95
79
  ## Contributing
96
80
 
97
81
  You'll need Node.js and [`esy`](https://esy.sh/docs/en/getting-started.html#install-esy) to build this project.
@@ -1,5 +1,5 @@
1
1
  opam-version: "2.0"
2
- version: "0.18.0"
2
+ version: "0.20.0"
3
3
  synopsis: "OCaml bindings for Binaryen"
4
4
  maintainer: "oscar@grain-lang.org"
5
5
  author: "Oscar Spencer"
@@ -13,8 +13,8 @@ build: [
13
13
  ]
14
14
  depends: [
15
15
  "ocaml" {>= "4.12.0"}
16
- "dune" {>= "2.9.1"}
17
- "dune-configurator" {>= "2.9.1"}
18
- "js_of_ocaml-compiler" {>= "3.10.0"}
19
- "libbinaryen" {>= "108.0.0" < "109.0.0"}
16
+ "dune" {>= "3.0.0"}
17
+ "dune-configurator" {>= "3.0.0"}
18
+ "js_of_ocaml-compiler" {>= "4.1.0" < "5.0.0"}
19
+ "libbinaryen" {>= "110.0.0" < "111.0.0"}
20
20
  ]
@@ -1,3 +1,3 @@
1
- (lang dune 2.7)
1
+ (lang dune 3.0)
2
2
 
3
3
  (name binaryen)
@@ -1,3 +1,3 @@
1
- (lang dune 2.7)
1
+ (lang dune 3.0)
2
2
 
3
3
  (profile release)