package binaryen

  1. Overview
  2. Docs
OCaml bindings for Binaryen

Install

Dune Dependency

Authors

Maintainers

Sources

binaryen-archive-v0.20.1.tar.gz
md5=168401594cb3a9d9c9eec2cc33521776
sha512=a4bc081fe373fdaff17b1f8550e949a2d44664c08db3df15cf2885ed386ec3ae6b2b91dfbb30e591dd5c8716d4c3659cc5ce140d3db2b33052cc02e6092c0fc6

CHANGELOG.md.html

Changelog

0.20.1 (2023-01-19)

Features

Bug Fixes

  • Properly handle load & store instructions in JS (#178) (becd3b8)

0.20.0 (2023-01-13)

⚠ BREAKING CHANGES

  • Require dune 3.0 to better support js_of_ocaml

  • Update memory operations to require memory name

  • Remove RttCanon and RttSub expression kinds

  • Add optimize argument to StackIR emitting functions

  • Require js_of_ocaml 4.1 to ensure optimization fix

  • Upgrade to libbinaryen v110 (#173)

  • Properly accept the size argument to Memory_init.make (#171)

Features

  • Add functions for converting between Types and Heap Types (474e5cd)

  • Add operations on Heap Types (474e5cd)

  • Add operations on Packed Types (474e5cd)

  • Add operations on the Type System (474e5cd)

  • Add optimize argument to StackIR emitting functions (474e5cd)

  • Add Stringref and Stringview Types (474e5cd)

  • Add strings feature (474e5cd)

  • Support querying data segments (#176) (5a6141c)

  • Update memory operations to require memory name (474e5cd)

  • Upgrade to libbinaryen v110 (#173) (474e5cd)

Bug Fixes

  • Properly accept the size argument to Memory_init.make (#171) (9ea20fe)

Miscellaneous Chores

  • Remove RttCanon and RttSub expression kinds (474e5cd)

  • Require dune 3.0 to better support js_of_ocaml (474e5cd)

  • Require js_of_ocaml 4.1 to ensure optimization fix (474e5cd)

0.19.0 (2022-11-19)

⚠ BREAKING CHANGES

  • Upgrade to libbinaryen v109 (#165)

Features

  • Add Import.memory_import_get_module and Import.memory_import_get_base functions (b584500)

  • Add function to print StackIR (b584500)

  • Add function to write StackIR (b584500)

  • Add gsi & spill_pointers passes (b584500)

  • Add operations on memory (b584500)

  • Upgrade to libbinaryen v109 (#165) (b584500)

0.18.0 (2022-07-05)

⚠ BREAKING CHANGES

  • Remove externref type

  • Update to libbinaryen v108 (#163)

  • Support passive memory segments (#158) (21857f7)

Features

Bug Fixes

  • Convert JSOO lists to JS arrays before working with them (#161) (e4931f0)

0.17.1 (2022-06-11)

Bug Fixes

0.17.0 (2022-05-11)

⚠ BREAKING CHANGES

  • Update libbinaryen to 107 (#152)

Features

0.16.0 (2022-05-11)

⚠ BREAKING CHANGES

  • Restrict OCaml < 4.14 temporarily

  • Update libbinaryen to 106 (#151)

  • Expression.Return.get_value can be null (#149)

Features

Bug Fixes

  • Expression.Return.get_value can be null (#149) (559341d)

Miscellaneous Chores

  • Restrict OCaml < 4.14 temporarily (453b9de)

0.15.0 (2022-03-16)

⚠ BREAKING CHANGES

  • Rename segment name to data (#146)

  • Add Passes module & require Passes.t in Module.run_passes (#145)

  • Remove virtual modules

  • Remove the "jsoo hack" API

  • Update libbinaryen to v105 (#142)

Features

  • Add Passes module & require Passes.t in Module.run_passes (#145) (c3e751c)

  • Remove the "jsoo hack" API (3c81209)

  • Remove unneeded js_of_ocaml & js_of_ocaml-ppx deps (3c81209)

  • Remove virtual modules (3c81209)

  • Rename segment name to data (#146) (d55e577)

  • Rewrite JS bindings as js_of_ocaml externals (3c81209)

  • Update libbinaryen to v105 (#142) (3c81209)

Bug Fixes

  • Make memory segments work with js_of_ocaml (3c81209)

0.14.1 (2022-03-08)

Bug Fixes

0.14.0 (2022-03-04)

⚠ BREAKING CHANGES

  • Update libbinaryen to v104 (#138)

Features

0.13.0 (2022-02-07)

Features

  • Add all Module.Features that were missing (09c5d30)

  • Add functions for ref & table expressions (09c5d30)

  • Upgrade to libbinaryen v103 (#134) (09c5d30)

Miscellaneous Chores

  • Use a upload-release-action that works (97dbcdc)

0.12.1 (2022-02-03)

Features

Bug Fixes

  • Restrict js_of_ocaml to version 3 (fa39480)

Miscellaneous Chores

0.12.0 (2022-01-26)

⚠ BREAKING CHANGES

  • Add table type to add_table signature

  • Rename Event to Tag to match Binaryen

Features

  • Add table type to add_table signature (5c50272)

  • Add update_maps function that Binaryen added (5c50272)

  • Rename Event to Tag to match Binaryen (5c50272)

  • Upgrade to libbinaryen v102 (#120) (5c50272)

0.11.2 (2022-01-24)

Bug Fixes

  • Handle JS global in non-node environments (#125) (74e94fe)

0.11.1 (2022-01-16)

Bug Fixes

0.11.0 (2022-01-13)

⚠ BREAKING CHANGES

  • Mention implicit python dependency in the docs

  • Switch to libbinaryen dependency (#113)

  • Remove MacOS-specific library flags (#111)

  • Require OCaml 4.12 (#108)

Features

Miscellaneous Chores

  • Mention implicit python dependency in the docs (59874ce)

0.10.0 (2021-05-09)

⚠ BREAKING CHANGES

  • Move expressions into namespaces

  • Move element segment into own module

  • Move Features into Module.Feature

  • Create Settings modules & move global functions

  • Convert some Settings from ints to bools

  • Remove SIMD methods that Binaryen replaced

  • Upgrade Binaryen to v101 (#99)

Features

  • Add Module.get_features (3de1b28)

  • Add Type.expandType (3de1b28)

  • Add operations on element segments (3de1b28)

  • Add operations on exports (3de1b28)

  • Add operations on expressions (3de1b28)

  • Add operations on functions (3de1b28)

  • Add operations on globals (3de1b28)

  • Add operations on imports (3de1b28)

  • Add support for reference types (#101) (5058492)

  • Build vendored Binaryen with GCC 7 instead of 9 (3de1b28)

  • Convert some Settings from ints to bools (3de1b28)

  • Create Settings modules & move global functions (3de1b28)

  • Move Features into Module.Feature (3de1b28)

  • Move element segment into own module (3de1b28)

  • Move expressions into namespaces (3de1b28)

  • Upgrade Binaryen to v101 (#99) (3de1b28)

Miscellaneous Chores

  • Remove SIMD methods that Binaryen replaced (3de1b28)

0.9.1 (2021-04-02)

Bug Fixes

  • Correct JS conversion of i64 & float64_bits literals (#96) (00b7093)

0.9.0 (2021-03-17)

Features

  • add Function_table.unlimited constant (#87) (0d2fcde)

  • write bindings for add_table (6dc0fa8)

Bug Fixes

  • js: cast the call_indirect string arguments to JS strings (7b4136a)

  • js: utilize JSOO externals to convert between uint8array & bytes (#85) (61d28c5)

  • return JS null value from Expression.null (#83) (61861e2)

Miscellaneous Chores

  • fix formatter & format the code (#80) (b9c485a)

  • set dune language to the version of dune we use (e9eb5c9)

  • use test file directly in one rule so ocaml-lsp works (34b7a13)

Documentation

  • cleanup Binaryen submodule & building language (closes #65) (3bdb23d)

0.8.1 (2021-03-09)

Bug Fixes

Continuous Integration

  • write opam CHANGES from environment var (#78) (4f25e0e)

0.8.0 (2021-03-05)

⚠ BREAKING CHANGES

  • Table name must now be provided to the Expression.call_indirect and Expression.return_call_indirect instructions.

Features

Continuous Integration

  • fix markdown escaping for opam release (#72) (a2e6052)

Miscellaneous Chores

0.7.0 (2021-02-24)

⚠ BREAKING CHANGES

  • memory_size and memory_grow are now toplevel functions in Expression.

  • removed Type.nullref, Type.exnref

  • removed Op.any_true_vec_i64x2 and Op.all_true_vec_i64x2

  • Bump to Binaryen 98

Features

Continuous Integration

  • add opam & npm releases to workflow (#69) (d339608)

  • run opam build on ubuntu 18 instead of 20 (#67) (7ee2009)

Miscellaneous Chores

  • memory_size and memory_grow are now toplevel functions in Expression. (9a52a07)

  • removed Op.any_true_vec_i64x2 and Op.all_true_vec_i64x2 (9a52a07)

  • removed Type.nullref, Type.exnref (9a52a07)

0.6.0 (2021-01-24)

Features

0.5.0 (2021-01-12)

Features

  • Allow optional return_type parameter when creating blocks (ab737bd)

Bug Fixes

  • add arch & os restrictions for opam (#41) (421b45d)

  • provide type to select instruction (#46) (2096a3c)

Documentation

Miscellaneous Chores

  • Add --no-browser flag to opam-publish (#43) (f47f2bb)

  • Switch back to official setup-opam action (#44) (f4338bd)

Continuous Integration