From 2b77f6ae60cfaf3f3cbdcc4121e82a619b9372c3 Mon Sep 17 00:00:00 2001 From: Daniel Wirtz Date: Sat, 8 Feb 2020 00:52:15 +0100 Subject: Add C-/JS-APIs for lowMemoryUnused and pass arguments (#2639) Allows a user to enable/disable the `lowMemoryUnused` option and to get/set/clear arbitrary pass arguments when using the C- or JS-APIs. * binaryen.**getLowMemoryUnused**(): `boolean` * binaryen.**setLowMemoryUnused**(on: `boolean`): `void` * binaryen.**getPassArgument**(key: `string`): `string | null` * binaryen.**setPassArgument**(key: `string`, value: `string | null`): `void` * binaryen.**clearPassArguments**(): `void` --- test/binaryen.js/pass-arguments.js.txt | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 test/binaryen.js/pass-arguments.js.txt (limited to 'test/binaryen.js/pass-arguments.js.txt') diff --git a/test/binaryen.js/pass-arguments.js.txt b/test/binaryen.js/pass-arguments.js.txt new file mode 100644 index 000000000..f877b2248 --- /dev/null +++ b/test/binaryen.js/pass-arguments.js.txt @@ -0,0 +1,25 @@ +// beginning a Binaryen API trace +#include +#include +#include "binaryen-c.h" +int main() { + std::map expressions; + std::map functions; + std::map globals; + std::map events; + std::map exports; + std::map relooperBlocks; + BinaryenModuleRef the_module = NULL; + RelooperRef the_relooper = NULL; + BinaryenGetPassArgument("theKey"); + BinaryenSetPassArgument("theKey", "theValue"); + BinaryenGetPassArgument("theKey"); + BinaryenSetPassArgument("theKey", NULL); + BinaryenGetPassArgument("theKey"); + BinaryenSetPassArgument("theKey", "theValue2"); + BinaryenGetPassArgument("theKey"); + BinaryenClearPassArguments(); + BinaryenGetPassArgument("theKey"); + return 0; +} +// ending a Binaryen API trace -- cgit v1.2.3