@@ -1283,28 +1283,58 @@ export class Module {
12831283 binaryen . _free ( cArr ) ;
12841284 }
12851285
1286- // meta
1286+ // meta (global)
12871287
12881288 getOptimizeLevel ( ) : i32 {
12891289 return binaryen . _BinaryenGetOptimizeLevel ( ) ;
12901290 }
12911291
1292- setOptimizeLevel ( level : i32 = 2 ) : void {
1292+ setOptimizeLevel ( level : i32 ) : void {
12931293 binaryen . _BinaryenSetOptimizeLevel ( level ) ;
12941294 }
12951295
12961296 getShrinkLevel ( ) : i32 {
12971297 return binaryen . _BinaryenGetShrinkLevel ( ) ;
12981298 }
12991299
1300- setShrinkLevel ( level : i32 = 1 ) : void {
1300+ setShrinkLevel ( level : i32 ) : void {
13011301 binaryen . _BinaryenSetShrinkLevel ( level ) ;
13021302 }
13031303
1304- setDebugInfo ( on : bool = false ) : void {
1304+ getDebugInfo ( ) : boolean {
1305+ return binaryen . _BinaryenGetDebugInfo ( ) ;
1306+ }
1307+
1308+ setDebugInfo ( on : bool ) : void {
13051309 binaryen . _BinaryenSetDebugInfo ( on ) ;
13061310 }
13071311
1312+ getLowMemoryUnused ( ) : bool {
1313+ return binaryen . _BinaryenGetLowMemoryUnused ( ) ;
1314+ }
1315+
1316+ setLowMemoryUnused ( on : bool ) : void {
1317+ binaryen . _BinaryenSetLowMemoryUnused ( on ) ;
1318+ }
1319+
1320+ getPassArgument ( key : string ) : string | null {
1321+ var cStr = this . allocStringCached ( key ) ;
1322+ var ptr = binaryen . _BinaryenGetPassArgument ( cStr ) ;
1323+ return ptr ? readString ( ptr ) : null ;
1324+ }
1325+
1326+ setPassArgument ( key : string , value : string | null ) : void {
1327+ var cStr1 = this . allocStringCached ( key ) ;
1328+ var cStr2 = this . allocStringCached ( value ) ;
1329+ binaryen . _BinaryenSetPassArgument ( cStr1 , cStr2 ) ;
1330+ }
1331+
1332+ clearPassArguments ( ) : void {
1333+ binaryen . _BinaryenClearPassArguments ( ) ;
1334+ }
1335+
1336+ // meta (module)
1337+
13081338 getFeatures ( ) : FeatureFlags {
13091339 return binaryen . _BinaryenModuleGetFeatures ( this . ref ) ;
13101340 }
@@ -1897,15 +1927,16 @@ export enum SideEffects {
18971927 WritesMemory = 128 /* _BinaryenSideEffectWritesMemory */ ,
18981928 ImplicitTrap = 256 /* _BinaryenSideEffectImplicitTrap */ ,
18991929 IsAtomic = 512 /* _BinaryenSideEffectIsAtomic */ ,
1900- Any = 1023 /* _BinaryenSideEffectAny */ ,
1930+ Throws = 1024 /* _BinaryenSideEffectThrows */ ,
1931+ Any = 2047 /* _BinaryenSideEffectAny */ ,
19011932}
19021933
1903- export function getSideEffects ( expr : ExpressionRef ) : SideEffects {
1904- return binaryen . _BinaryenExpressionGetSideEffects ( expr ) ;
1934+ export function getSideEffects ( expr : ExpressionRef , features : FeatureFlags = FeatureFlags . All ) : SideEffects {
1935+ return binaryen . _BinaryenExpressionGetSideEffects ( expr , features ) ;
19051936}
19061937
1907- export function hasSideEffects ( expr : ExpressionRef ) : bool {
1908- return getSideEffects ( expr ) != SideEffects . None ;
1938+ export function hasSideEffects ( expr : ExpressionRef , features : FeatureFlags = FeatureFlags . All ) : bool {
1939+ return getSideEffects ( expr , features ) != SideEffects . None ;
19091940}
19101941
19111942// helpers
0 commit comments