diff options
author | Daniel Wirtz <dcode@dcode.io> | 2018-09-29 00:10:28 +0200 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2018-09-28 15:10:28 -0700 |
commit | f7db9e9760ea39d77433766e299f29a3084c948c (patch) | |
tree | 3b629c4d3a376310ec334566217cdb79c5f5492f /src/binaryen-c.cpp | |
parent | ad9152e4973afa83d093600dda0d925f5c7cf714 (diff) | |
download | binaryen-f7db9e9760ea39d77433766e299f29a3084c948c.tar.gz binaryen-f7db9e9760ea39d77433766e299f29a3084c948c.tar.bz2 binaryen-f7db9e9760ea39d77433766e299f29a3084c948c.zip |
Add initial/maximum table size parameters to C/JS API (#1687)
Diffstat (limited to 'src/binaryen-c.cpp')
-rw-r--r-- | src/binaryen-c.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/binaryen-c.cpp b/src/binaryen-c.cpp index 2d082c088..b8fa9d034 100644 --- a/src/binaryen-c.cpp +++ b/src/binaryen-c.cpp @@ -1778,7 +1778,7 @@ void BinaryenRemoveExport(BinaryenModuleRef module, const char* externalName) { // Function table. One per module -void BinaryenSetFunctionTable(BinaryenModuleRef module, const char** funcNames, BinaryenIndex numFuncNames) { +void BinaryenSetFunctionTable(BinaryenModuleRef module, BinaryenIndex initial, BinaryenIndex maximum, const char** funcNames, BinaryenIndex numFuncNames) { if (tracing) { std::cout << " {\n"; std::cout << " const char* funcNames[] = { "; @@ -1787,18 +1787,19 @@ void BinaryenSetFunctionTable(BinaryenModuleRef module, const char** funcNames, std::cout << "\"" << funcNames[i] << "\""; } std::cout << " };\n"; - std::cout << " BinaryenSetFunctionTable(the_module, funcNames, " << numFuncNames << ");\n"; + std::cout << " BinaryenSetFunctionTable(the_module, " << initial << ", " << maximum << ", funcNames, " << numFuncNames << ");\n"; std::cout << " }\n"; } auto* wasm = (Module*)module; - wasm->table.exists = true; Table::Segment segment(wasm->allocator.alloc<Const>()->set(Literal(int32_t(0)))); for (BinaryenIndex i = 0; i < numFuncNames; i++) { segment.data.push_back(funcNames[i]); } + wasm->table.initial = initial; + wasm->table.max = maximum; + wasm->table.exists = true; wasm->table.segments.push_back(segment); - wasm->table.initial = wasm->table.max = numFuncNames; } // Memory. One per module |