Skip to main content

Module lower

Module lower 

Source
Expand description

Lower the semantic BuildAction IR into concrete command argv for a Dialect.

This is the single point where compile/archive/link intent becomes a real command line. lower() dispatches on the dialect; the GNU/Clang and MSVC spellings live side by side below. The planner, the IR, and the Ninja writer never spell a flag themselves - they call lower() (or compile_argv for the compilation database).

Structs§

LoweredAction
A fully-lowered action: the backend artifact the Ninja writer renders.

Enums§

LoweredActionKind
Categorization of a lowered action. A closed set; new variants require explicit handling by every backend.

Functions§

compile_argv
Build the unwrapped compiler argv for a compile action in dialect - the form recorded in compile_commands.json (no compiler wrapper). lower() prepends the wrapper on top of this for the run command.
lower
Lower one semantic BuildAction for dialect.