@@ -55,6 +55,10 @@ declare function _BinaryenSIMDReplaceId(): BinaryenExpressionId;
5555declare function _BinaryenSIMDShuffleId ( ) : BinaryenExpressionId ;
5656declare function _BinaryenSIMDBitselectId ( ) : BinaryenExpressionId ;
5757declare function _BinaryenSIMDShiftId ( ) : BinaryenExpressionId ;
58+ declare function _BinaryenMemoryInitId ( ) : BinaryenExpressionId ;
59+ declare function _BinaryenDataDropId ( ) : BinaryenExpressionId ;
60+ declare function _BinaryenMemoryCopyId ( ) : BinaryenExpressionId ;
61+ declare function _BinaryenMemoryFillId ( ) : BinaryenExpressionId ;
5862
5963declare type BinaryenModuleRef = usize ;
6064declare type v128ptr = usize ; // TODO: LLVM C-abi for const uint8_t[16]?
@@ -63,7 +67,8 @@ declare function _BinaryenModuleCreate(): BinaryenModuleRef;
6367declare function _BinaryenModuleDispose ( module : BinaryenModuleRef ) : void ;
6468
6569// LLVM C ABI with `out` being a large enough buffer receiving the
66- // BinaryenLiteral struct.
70+ // BinaryenLiteral struct of size `_BinaryenSizeofLiteral()`.
71+ declare function _BinaryenSizeofLiteral ( ) : usize ;
6772declare function _BinaryenLiteralInt32 ( out : usize , x : i32 ) : void ;
6873declare function _BinaryenLiteralInt64 ( out : usize , x : i32 , y : i32 ) : void ;
6974declare function _BinaryenLiteralFloat32 ( out : usize , x : f32 ) : void ;
@@ -394,6 +399,11 @@ declare function _BinaryenSIMDShuffle(module: BinaryenModuleRef, left: BinaryenE
394399declare function _BinaryenSIMDBitselect ( module : BinaryenModuleRef , left : BinaryenExpressionRef , right : BinaryenExpressionRef , cond : BinaryenExpressionRef ) : BinaryenExpressionRef ;
395400declare function _BinaryenSIMDShift ( module : BinaryenModuleRef , op : BinaryenSIMDOp , vec : BinaryenExpressionRef , shift : BinaryenExpressionRef ) : BinaryenExpressionRef ;
396401
402+ declare function _BinaryenMemoryInit ( module : BinaryenModuleRef , segment : u32 , dest : BinaryenExpressionRef , offset : BinaryenExpressionRef , size : BinaryenExpressionRef ) : BinaryenExpressionRef ;
403+ declare function _BinaryenDataDrop ( module : BinaryenModuleRef , segment : u32 ) : BinaryenExpressionRef ;
404+ declare function _BinaryenMemoryCopy ( module : BinaryenModuleRef , dest : BinaryenExpressionRef , source : BinaryenExpressionRef , size : BinaryenExpressionRef ) : BinaryenExpressionRef ;
405+ declare function _BinaryenMemoryFill ( module : BinaryenModuleRef , dest : BinaryenExpressionRef , value : BinaryenExpressionRef , size : BinaryenExpressionRef ) : BinaryenExpressionRef ;
406+
397407declare function _BinaryenExpressionGetId ( expr : BinaryenExpressionRef ) : BinaryenExpressionId ;
398408declare function _BinaryenExpressionGetType ( expr : BinaryenExpressionRef ) : BinaryenType ;
399409declare function _BinaryenExpressionPrint ( expr : BinaryenExpressionRef ) : void ;
@@ -519,6 +529,21 @@ declare function _BinaryenSIMDShiftGetOp(expr: BinaryenExpressionRef): BinaryenS
519529declare function _BinaryenSIMDShiftGetVec ( expr : BinaryenExpressionRef ) : BinaryenExpressionRef ;
520530declare function _BinaryenSIMDShiftGetShift ( expr : BinaryenExpressionRef ) : BinaryenExpressionRef ;
521531
532+ declare function _BinaryenMemoryInitGetSegment ( expr : BinaryenExpressionRef ) : u32 ;
533+ declare function _BinaryenMemoryInitGetDest ( expr : BinaryenExpressionRef ) : BinaryenExpressionRef ;
534+ declare function _BinaryenMemoryInitGetOffset ( expr : BinaryenExpressionRef ) : BinaryenExpressionRef ;
535+ declare function _BinaryenMemoryInitGetSize ( expr : BinaryenExpressionRef ) : BinaryenExpressionRef ;
536+
537+ declare function _BinaryenDataDropGetSegment ( expr : BinaryenExpressionRef ) : u32 ;
538+
539+ declare function _BinaryenMemoryCopyGetDest ( expr : BinaryenExpressionRef ) : BinaryenExpressionRef ;
540+ declare function _BinaryenMemoryCopyGetSource ( expr : BinaryenExpressionRef ) : BinaryenExpressionRef ;
541+ declare function _BinaryenMemoryCopyGetSize ( expr : BinaryenExpressionRef ) : BinaryenExpressionRef ;
542+
543+ declare function _BinaryenMemoryFillGetDest ( expr : BinaryenExpressionRef ) : BinaryenExpressionRef ;
544+ declare function _BinaryenMemoryFillGetValue ( expr : BinaryenExpressionRef ) : BinaryenExpressionRef ;
545+ declare function _BinaryenMemoryFillGetSize ( expr : BinaryenExpressionRef ) : BinaryenExpressionRef ;
546+
522547declare type BinaryenFunctionTypeRef = usize ;
523548
524549declare function _BinaryenAddFunctionType ( module : BinaryenModuleRef , name : usize , result : BinaryenType , paramTypes : usize , numParams : BinaryenIndex ) : BinaryenFunctionTypeRef ;
0 commit comments