talos

talos [options] <input files>

Actions

--emit-dpi-header

Emit exact C prototypes for DPI imports and exports

--preprocess

Run only the SystemVerilog preprocessor

Alias of -E.

Hidden from --help.

-c

Emit a relocatable object for the selected target

-dump-tokens

List each token and comment of the unpreprocessed source as ‘<byte offset> <byte length> <kind>’

Hidden from --help.

-E

Run only the SystemVerilog preprocessor

-emit-bindings

Emit deterministic elaborated configuration and bind selections

-emit-llvm

Emit textual LLVM IR for the selected target

-emit-schedule

Emit deterministic compute-graph and event-region diagnostics

-emit-sim

Emit executable simulation SSA MLIR

-emit-slang

Emit elaborated Slang dialect MLIR after SystemVerilog import

-emit-talos

Emit Talos dialect MLIR

Compilation options

+libext+<extension>

Add a module library filename extension

Alias of -Y.

Hidden from --help.

--allow-use-before-declare

Allow declarations to be referenced before they appear

--bytecode-scope=<required|all>

Select retained bytecode bodies (default: required)

Allowed values: required, all.

--cancelled-pulses=<hide|show>

Override specify negative-pulse display globally

Allowed values: hide, show.

--clocked-kernels=<off|immediate|deferred>

Select clocked kernels with direct NBA stores (default: deferred)

Allowed values: off, immediate, deferred.

--compile-threads=<count>

Set MLIR, LLD, and LTO code-generation thread count

--coverage

Instrument line, toggle, functional, assertion, and FSM coverage

--coverage-config=<file.json>

Apply ordered coverage include and exclusion rules

--coverage-prefix-map=<from>=<to>

Rewrite source path prefixes in coverage schemas

--coverage=<line,toggle,functional,assertion,fsm>

Select coverage metric families to instrument

--execution-tier=<native|bytecode>

Select generated simulator execution tier (default: native)

Allowed values: native, bytecode.

--filelist <file>

Read additional compilation arguments from a command file

Alias of -f.

Hidden from --help.

--ignore-unknown-modules

Continue when referenced modules cannot be found

--libmap<file>, --libmap <file>

Read SystemVerilog library declarations from a library map

--libraries-inherit-macros

Make library files inherit primary-source macro definitions

--native-scheduler=<auto|generic|aot|eval>

Select native scheduler generation (default: hybrid auto)

Allowed values: auto, generic, aot, eval.

--no-two-state-specialization

Disable inferred two-state analysis, narrowing, and guarded specialization

--pulse-error-percent=<0..100>

Set the global Clause 30.7 path-pulse error percentage

--pulse-reject-percent=<0..100>

Set the global Clause 30.7 path-pulse reject percentage

--pulse-style=<onevent|ondetect>

Override specify pulse style globally

Allowed values: onevent, ondetect.

--single-unit

Treat all primary sources as one compilation unit

--static-specialization=<auto|off|on>

Select direct static-state and narrow-NBA specialization

Allowed values: auto, off, on.

--std=<1800-2017|1800-2023>

Select the SystemVerilog language revision

Allowed values: 1800-2017, 1800-2023.

--thinlto-cache-dir=<dir>

Store reusable native ThinLTO objects in <dir>

--threads=<count>

Set generated simulator worker-lane count

--timescale=<base/precision>

Set the default time scale

--timing=<min|typ|max>

Select min:typ:max expression values

Allowed values: min, typ, max.

--top=<module>

Select a top-level module; may be specified more than once

--two-state

Use two-state integral computation and storage (X/Z and initial values become zero)

--vpi=<off|read|full>

Select VPI observability and mutation capability

Allowed values: off, read, full.

-f <file>

Read additional compilation arguments from a command file

-flto

Enable LTO above -O0 (ThinLTO for partitioned native designs)

-fno-lto

Disable LTO and link the object runtime archive (default)

-G<name=value>, -G <name=value>

Override a top-level module parameter

-l<file>, -l <file>

Add a SystemVerilog library file

Alias of -v.

Hidden from --help.

-O0

Disable simulation and LLVM optimization

-O1

Enable conservative optimization

-O2

Enable balanced optimization

-O3

Enable aggressive optimization (default)

-sv_lib <path-without-extension>

Link an Annex J DPI shared library

-sv_liblist <bootstrap-file>

Read Annex J DPI shared libraries from a bootstrap file

-sv_root <dir>

Set the Annex J root for following foreign-library options

-v<file>, -v <file>

Add a SystemVerilog library file

-y<dir>, -y <dir>

Add a directory to the module library search path

-Y<extension>, -Y <extension>

Add a module library filename extension

Diagnostic options

--debug-native-execution-counts

Instrument generated native function entries and print counts at exit

Hidden from --help.

--dump-ir-after=<pass>

Write the module to –dump-ir-path after the first run of <pass> and exit

Hidden from --help.

--dump-ir-before=<pass>

Write the module to –dump-ir-path before the first run of <pass> and exit

Hidden from --help.

--dump-ir-path=<file>

Destination of –dump-ir-before/–dump-ir-after (.mlirbc for bytecode)

Hidden from --help.

--error-limit=<count>

Stop after this many frontend errors

--mlir-verify-each

Verify the MLIR after every internal pass instead of at pipeline boundaries

Hidden from --help.

--suppress-warnings=<path>

Suppress frontend warnings originating below a path

-W<warning>

Configure a frontend warning

General options

-- <arg>…

Hidden from --help.

--help

Display available options

--help-hidden

Display all options, including internal options

--schedule-format=<arg>

Schedule inspection format: mlir or json

--version

Display the Talos and frontend versions

-h

Display available options

Alias of --help.

Hidden from --help.

Internal options

-Xslang <arg>

Pass one argument directly to the slang frontend

Hidden from --help.

Output options

--mlir-print-debuginfo

Include source locations in emitted MLIR

--mlir-timing

Report per-pass execution times for the MLIR pipeline

Hidden from --help.

--sysroot=<dir>

Use <dir> for wasm32 C and C++ link inputs

--target=<native|wasm32>

Select the code-generation target

-o<file>, -o <file>

Write output to <file> instead of standard output

Preprocessor options

+define+<macro[=value]>

Define ‘+’-separated preprocessor macros

Alias of -D.

+incdir+<dir>

Add ‘+’-separated directories to the include search path

Alias of -I.

--include-directory <dir>

Add a directory to the include search path

Alias of -I.

Hidden from --help.

--max-include-depth=<depth>

Set the maximum nested include depth

-D<macro[=value]>, -D <macro[=value]>

Define a preprocessor macro

-I<dir>, -I <dir>

Add a directory to the include search path

-isystem<dir>, -isystem <dir>

Add a directory to the system include search path

-U<macro>, -U <macro>

Undefine a preprocessor macro