@@ -2925,6 +2925,24 @@ BINARYEN_API bool BinaryenGetDebugInfo(void);
29252925// Applies to all modules, globally.
29262926BINARYEN_API void BinaryenSetDebugInfo (bool on);
29272927
2928+ // Gets whether no traps can be considered reached at runtime when optimizing.
2929+ // Applies to all modules, globally.
2930+ BINARYEN_API bool BinaryenGetTrapsNeverHappen (void );
2931+
2932+ // Enables or disables whether no traps can be considered reached at
2933+ // runtime when optimizing. Applies to all modules, globally.
2934+ BINARYEN_API void BinaryenSetTrapsNeverHappen (bool on);
2935+
2936+ // Gets whether considering that the code outside of the module does
2937+ // not inspect or interact with GC and function references. Applies to
2938+ // all modules, globally.
2939+ BINARYEN_API bool BinaryenGetClosedWorld (void );
2940+
2941+ // Enables or disables whether considering that the code outside of
2942+ // the module does not inspect or interact with GC and function
2943+ // references. Applies to all modules, globally.
2944+ BINARYEN_API void BinaryenSetClosedWorld (bool on);
2945+
29282946// Gets whether the low 1K of memory can be considered unused when optimizing.
29292947// Applies to all modules, globally.
29302948BINARYEN_API bool BinaryenGetLowMemoryUnused (void );
@@ -2950,6 +2968,22 @@ BINARYEN_API bool BinaryenGetFastMath(void);
29502968// Applies to all modules, globally.
29512969BINARYEN_API void BinaryenSetFastMath (bool value);
29522970
2971+ // Gets whether to generate StackIR during binary writing.
2972+ // Applies to all modules, globally.
2973+ BINARYEN_API bool BinaryenGetGenerateStackIR (void );
2974+
2975+ // Enable or disable StackIR generation during binary writing.
2976+ // Applies to all modules, globally.
2977+ BINARYEN_API void BinaryenSetGenerateStackIR (bool on);
2978+
2979+ // Gets whether to optimize StackIR during binary writing.
2980+ // Applies to all modules, globally.
2981+ BINARYEN_API bool BinaryenGetOptimizeStackIR (void );
2982+
2983+ // Enable or disable StackIR optimization during binary writing.
2984+ // Applies to all modules, globally.
2985+ BINARYEN_API void BinaryenSetOptimizeStackIR (bool on);
2986+
29532987// Gets the value of the specified arbitrary pass argument.
29542988// Applies to all modules, globally.
29552989BINARYEN_API const char * BinaryenGetPassArgument (const char * name);
@@ -2962,6 +2996,18 @@ BINARYEN_API void BinaryenSetPassArgument(const char* name, const char* value);
29622996// Applies to all modules, globally.
29632997BINARYEN_API void BinaryenClearPassArguments ();
29642998
2999+ // Gets whether a pass is in the set of passes to skip.
3000+ // Applies to all modules, globally.
3001+ BINARYEN_API bool BinaryenHasPassToSkip (const char * pass);
3002+
3003+ // Add a pass to the set of passes to skip.
3004+ // Applies to all modules, globally.
3005+ BINARYEN_API void BinaryenAddPassToSkip (const char * pass);
3006+
3007+ // Clears the set of passes to skip.
3008+ // Applies to all modules, globally.
3009+ BINARYEN_API void BinaryenClearPassesToSkip (void );
3010+
29653011// Gets the function size at which we always inline.
29663012// Applies to all modules, globally.
29673013BINARYEN_API BinaryenIndex BinaryenGetAlwaysInlineMaxSize (void );
0 commit comments