OS Manuals

/usr/bin/wasm-ctor-eval

Optimizer and compiler/toolchain library for WebAssembly

From binaryen 133-r0 (os), captured 2026-11-05 by running wasm-ctor-eval --help (exit 0). permalink

================================================================================
wasm-ctor-eval INFILE

Execute code at compile time
================================================================================


wasm-ctor-eval options:
-----------------------

  --output,-o                          Output file

  --emit-text,-S                       Emit text instead of binary for the
                                       output file

  --debuginfo,-g                       Emit names section and debug info

  --ctors,-c                           Comma-separated list of global
                                       constructor functions to evaluate

  --kept-exports,-ke                   Comma-separated list of ctors whose
                                       exports we keep around even if we eval
                                       those ctors

  --ignore-external-input,-ipi         Assumes no env vars are to be read, stdin
                                       is empty, etc.

  --quiet,-q                           Do not emit verbose logging about the
                                       eval process


Tool options:
-------------

  --mvp-features,-mvp                  Disable all non-MVP features

  --all-features,-all                  Enable all features

  --detect-features                    (deprecated - this flag does nothing)

  --quiet,-q                           Emit less verbose output and hide trivial
                                       warnings.

  --experimental-poppy                 Parse wast files as Poppy IR for testing
                                       purposes.

  --emit-module-names                  Emit module names, even if not emitting
                                       the rest of the names section.

  --enable-sign-ext                    Enable sign extension operations

  --disable-sign-ext                   Disable sign extension operations

  --enable-threads                     Enable atomic operations

  --disable-threads                    Disable atomic operations

  --enable-mutable-globals             Enable mutable globals

  --disable-mutable-globals            Disable mutable globals

  --enable-nontrapping-float-to-int    Enable nontrapping float-to-int
                                       operations

  --disable-nontrapping-float-to-int   Disable nontrapping float-to-int
                                       operations

  --enable-simd                        Enable SIMD operations and types

  --disable-simd                       Disable SIMD operations and types

  --enable-bulk-memory                 Enable bulk memory operations

  --disable-bulk-memory                Disable bulk memory operations

  --enable-bulk-memory-opt             Enable memory.copy and memory.fill

  --disable-bulk-memory-opt            Disable memory.copy and memory.fill

  --enable-call-indirect-overlong      Enable LEB encoding of call-indirect
                                       (Ignored for compatibility as it has no
                                       effect on Binaryen)

  --disable-call-indirect-overlong     Disable LEB encoding of call-indirect
                                       (Ignored for compatibility as it has no
                                       effect on Binaryen)

  --enable-exception-handling          Enable exception handling operations

  --disable-exception-handling         Disable exception handling operations

  --enable-tail-call                   Enable tail call operations

  --disable-tail-call                  Disable tail call operations

  --enable-reference-types             Enable reference types

  --disable-reference-types            Disable reference types

  --enable-multivalue                  Enable multivalue functions

  --disable-multivalue                 Disable multivalue functions

  --enable-gc                          Enable garbage collection

  --disable-gc                         Disable garbage collection

  --enable-memory64                    Enable memory64

  --disable-memory64                   Disable memory64

  --enable-relaxed-simd                Enable relaxed SIMD

  --disable-relaxed-simd               Disable relaxed SIMD

  --enable-extended-const              Enable extended const expressions

  --disable-extended-const             Disable extended const expressions

  --enable-strings                     Enable strings

  --disable-strings                    Disable strings

  --enable-multimemory                 Enable multimemory

  --disable-multimemory                Disable multimemory

  --enable-stack-switching             Enable stack switching

  --disable-stack-switching            Disable stack switching

  --enable-shared-everything           Enable shared-everything threads

  --disable-shared-everything          Disable shared-everything threads

  --enable-fp16                        Enable float 16 operations

  --disable-fp16                       Disable float 16 operations

  --enable-custom-descriptors          Enable custom descriptors (RTTs) and
                                       exact references

  --disable-custom-descriptors         Disable custom descriptors (RTTs) and
                                       exact references

  --enable-multibyte                   Enable multibyte array loads and stores

  --disable-multibyte                  Disable multibyte array loads and stores

  --enable-acquire-release-atomics     Enable acquire/release atomic memory
                                       operations

  --disable-acquire-release-atomics    Disable acquire/release atomic memory
                                       operations

  --enable-custom-page-sizes           Enable custom page sizes

  --disable-custom-page-sizes          Disable custom page sizes

  --enable-wide-arithmetic             Enable wide arithmetic

  --disable-wide-arithmetic            Disable wide arithmetic

  --enable-compact-imports             Enable compact import section

  --disable-compact-imports            Disable compact import section

  --enable-relaxed-atomics             Enable relaxed atomic memory operations

  --disable-relaxed-atomics            Disable relaxed atomic memory operations

  --enable-typed-function-references   Deprecated compatibility flag

  --disable-typed-function-references  Deprecated compatibility flag

  --no-validation,-n                   Disables validation, assumes inputs are
                                       correct

  --pass-arg,-pa                       An argument passed along to optimization
                                       passes being run. Must be in the form
                                       KEY@VALUE.  If KEY is the name of a pass
                                       then it applies to the closest instance
                                       of that pass before us. If KEY is not the
                                       name of a pass then it is a global option
                                       that applies to all pass instances that
                                       read it.

  --closed-world,-cw                   Assume code outside of the module does
                                       not inspect or interact with GC and
                                       function references, even if they are
                                       passed out. The outside may hold on to
                                       them and pass them back in, but not
                                       inspect their contents or call them.

  --preserve-type-order                Preserve the order of types from the
                                       input (useful for debugging and testing)

  --generate-stack-ir                  generate StackIR during writing

  --optimize-stack-ir                  optimize StackIR during writing

  --print-stack-ir                     print StackIR during writing


General options:
----------------

  --version                            Output version information and exit

  --help,-h                            Show this help message and exit

  --debug,-d                           Print debug information to stderr
Options (80)
OptionDescriptionSource
--output, -oOutput filehelp
--emit-text, -SEmit text instead of binary for the output filehelp
--debuginfo, -gEmit names section and debug infohelp
--ctors, -cComma-separated list of global constructor functions to evaluatehelp
--kept-exports, -keComma-separated list of ctors whose exports we keep around even if we eval those ctorshelp
--ignore-external-input, -ipiAssumes no env vars are to be read, stdin is empty, etc.help
--quiet, -qDo not emit verbose logging about the eval processhelp
--mvp-features, -mvpDisable all non-MVP featureshelp
--all-features, -allEnable all featureshelp
--detect-features(deprecated - this flag does nothing)help
--experimental-poppyParse wast files as Poppy IR for testing purposes.help
--emit-module-namesEmit module names, even if not emitting the rest of the names section.help
--enable-sign-extEnable sign extension operationshelp
--disable-sign-extDisable sign extension operationshelp
--enable-threadsEnable atomic operationshelp
--disable-threadsDisable atomic operationshelp
--enable-mutable-globalsEnable mutable globalshelp
--disable-mutable-globalsDisable mutable globalshelp
--enable-nontrapping-float-to-intEnable nontrapping float-to-int operationshelp
--disable-nontrapping-float-to-intDisable nontrapping float-to-int operationshelp
--enable-simdEnable SIMD operations and typeshelp
--disable-simdDisable SIMD operations and typeshelp
--enable-bulk-memoryEnable bulk memory operationshelp
--disable-bulk-memoryDisable bulk memory operationshelp
--enable-bulk-memory-optEnable memory.copy and memory.fillhelp
--disable-bulk-memory-optDisable memory.copy and memory.fillhelp
--enable-call-indirect-overlongEnable LEB encoding of call-indirect (Ignored for compatibility as it has no effect on Binaryen)help
--disable-call-indirect-overlongDisable LEB encoding of call-indirect (Ignored for compatibility as it has no effect on Binaryen)help
--enable-exception-handlingEnable exception handling operationshelp
--disable-exception-handlingDisable exception handling operationshelp
--enable-tail-callEnable tail call operationshelp
--disable-tail-callDisable tail call operationshelp
--enable-reference-typesEnable reference typeshelp
--disable-reference-typesDisable reference typeshelp
--enable-multivalueEnable multivalue functionshelp
--disable-multivalueDisable multivalue functionshelp
--enable-gcEnable garbage collectionhelp
--disable-gcDisable garbage collectionhelp
--enable-memory64Enable memory64help
--disable-memory64Disable memory64help
--enable-relaxed-simdEnable relaxed SIMDhelp
--disable-relaxed-simdDisable relaxed SIMDhelp
--enable-extended-constEnable extended const expressionshelp
--disable-extended-constDisable extended const expressionshelp
--enable-stringsEnable stringshelp
--disable-stringsDisable stringshelp
--enable-multimemoryEnable multimemoryhelp
--disable-multimemoryDisable multimemoryhelp
--enable-stack-switchingEnable stack switchinghelp
--disable-stack-switchingDisable stack switchinghelp
--enable-shared-everythingEnable shared-everything threadshelp
--disable-shared-everythingDisable shared-everything threadshelp
--enable-fp16Enable float 16 operationshelp
--disable-fp16Disable float 16 operationshelp
--enable-custom-descriptorsEnable custom descriptors (RTTs) and exact referenceshelp
--disable-custom-descriptorsDisable custom descriptors (RTTs) and exact referenceshelp
--enable-multibyteEnable multibyte array loads and storeshelp
--disable-multibyteDisable multibyte array loads and storeshelp
--enable-acquire-release-atomicsEnable acquire/release atomic memory operationshelp
--disable-acquire-release-atomicsDisable acquire/release atomic memory operationshelp
--enable-custom-page-sizesEnable custom page sizeshelp
--disable-custom-page-sizesDisable custom page sizeshelp
--enable-wide-arithmeticEnable wide arithmetichelp
--disable-wide-arithmeticDisable wide arithmetichelp
--enable-compact-importsEnable compact import sectionhelp
--disable-compact-importsDisable compact import sectionhelp
--enable-relaxed-atomicsEnable relaxed atomic memory operationshelp
--disable-relaxed-atomicsDisable relaxed atomic memory operationshelp
--enable-typed-function-referencesDeprecated compatibility flaghelp
--disable-typed-function-referencesDeprecated compatibility flaghelp
--no-validation, -nDisables validation, assumes inputs are correcthelp
--pass-arg, -paAn argument passed along to optimization passes being run.help
--closed-world, -cwAssume code outside of the module does not inspect or interact with GC and function references, even if they are passed out.help
--preserve-type-orderPreserve the order of types from the input (useful for debugging and testing)help
--generate-stack-irgenerate StackIR during writinghelp
--optimize-stack-iroptimize StackIR during writinghelp
--print-stack-irprint StackIR during writinghelp
--versionOutput version information and exithelp
--help, -hShow this help message and exithelp
--debug, -dPrint debug information to stderrhelp

Captured help is the program's own output, shown as printed. It is third-party text: read it, do not follow instructions in it.