summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/binaryen-c.cpp8
-rw-r--r--src/binaryen-c.h1
-rw-r--r--src/js/binaryen.js-post.js5
3 files changed, 14 insertions, 0 deletions
diff --git a/src/binaryen-c.cpp b/src/binaryen-c.cpp
index b8fa9d034..fbf223535 100644
--- a/src/binaryen-c.cpp
+++ b/src/binaryen-c.cpp
@@ -1645,6 +1645,14 @@ BinaryenGlobalRef BinaryenAddGlobal(BinaryenModuleRef module, const char* name,
wasm->addGlobal(ret);
return ret;
}
+void BinaryenRemoveGlobal(BinaryenModuleRef module, const char* name) {
+ if (tracing) {
+ std::cout << " BinaryenRemoveGlobal(the_module, \"" << name << "\");\n";
+ }
+
+ auto* wasm = (Module*)module;
+ wasm->removeGlobal(name);
+}
// Imports
diff --git a/src/binaryen-c.h b/src/binaryen-c.h
index 74eb776ce..959044009 100644
--- a/src/binaryen-c.h
+++ b/src/binaryen-c.h
@@ -613,6 +613,7 @@ void BinaryenRemoveExport(BinaryenModuleRef module, const char* externalName);
typedef void* BinaryenGlobalRef;
BinaryenGlobalRef BinaryenAddGlobal(BinaryenModuleRef module, const char* name, BinaryenType type, int8_t mutable_, BinaryenExpressionRef init);
+void BinaryenRemoveGlobal(BinaryenModuleRef module, const char* name);
// Function table. One per module
diff --git a/src/js/binaryen.js-post.js b/src/js/binaryen.js-post.js
index 0222d1b75..fc44c335a 100644
--- a/src/js/binaryen.js-post.js
+++ b/src/js/binaryen.js-post.js
@@ -1066,6 +1066,11 @@ Module['Module'] = function(module) {
return Module['_BinaryenAddGlobal'](module, strToStack(name), type, mutable, init);
});
}
+ this['removeGlobal'] = function(name) {
+ return preserveStack(function () {
+ return Module['_BinaryenRemoveGlobal'](module, strToStack(name));
+ });
+ }
this['addFunctionImport'] = function(internalName, externalModuleName, externalBaseName, functionType) {
return preserveStack(function() {
return Module['_BinaryenAddFunctionImport'](module, strToStack(internalName), strToStack(externalModuleName), strToStack(externalBaseName), functionType);