diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/binaryen-c.cpp | 11 | ||||
-rw-r--r-- | src/binaryen-c.h | 8 |
2 files changed, 17 insertions, 2 deletions
diff --git a/src/binaryen-c.cpp b/src/binaryen-c.cpp index 21e650650..76a97e9da 100644 --- a/src/binaryen-c.cpp +++ b/src/binaryen-c.cpp @@ -1819,6 +1819,17 @@ BinaryenExpressionRef BinaryenArrayNew(BinaryenModuleRef module, Builder(*(Module*)module) .makeArrayNew(HeapType(type), (Expression*)size, (Expression*)init)); } +BinaryenExpressionRef BinaryenArrayNewData(BinaryenModuleRef module, + BinaryenHeapType type, + const char* name, + BinaryenExpressionRef offset, + BinaryenExpressionRef size) { + return static_cast<Expression*>( + Builder(*(Module*)module) + .makeArrayNewData( + HeapType(type), name, (Expression*)offset, (Expression*)size)); +} + BinaryenExpressionRef BinaryenArrayNewFixed(BinaryenModuleRef module, BinaryenHeapType type, BinaryenExpressionRef* values, diff --git a/src/binaryen-c.h b/src/binaryen-c.h index b12cdc213..b2c59cfbd 100644 --- a/src/binaryen-c.h +++ b/src/binaryen-c.h @@ -1073,8 +1073,12 @@ BINARYEN_API BinaryenExpressionRef BinaryenArrayNew(BinaryenModuleRef module, BinaryenExpressionRef size, BinaryenExpressionRef init); -// TODO: BinaryenArrayNewSeg - +BINARYEN_API BinaryenExpressionRef +BinaryenArrayNewData(BinaryenModuleRef module, + BinaryenHeapType type, + const char* name, + BinaryenExpressionRef offset, + BinaryenExpressionRef size); BINARYEN_API BinaryenExpressionRef BinaryenArrayNewFixed(BinaryenModuleRef module, BinaryenHeapType type, |