Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 17 additions & 0 deletions src/toolchain-conventions.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -496,3 +496,20 @@ is platform defined.
- `unlabeled`: Use simple label scheme, the label is always `0`.
- `func-sig`: Use function signature as the label, the label is generated by the
compiler, the rule is defined in psABI spec.

=== `--print-supported-extensions` / `--print-enabled-extensions`

These two flags are used to understand which RISC-V extensions are supported by
a toolchain, and to understand exactly what extensions a given `-march=` or
`-mcpu=` option expands to.

The `--print-supported-extensions` option should print a list of extensions,
with information about the extension ID, the supported version, and a short
one-line description of that extension. LLVM separates this list into supported
and experimental extensions. This output also includes a list of profile names
supported by the compiler.

The `--print-enabled-extension` option is intended to be used with `-march=` or
`-mcpu=`, and prints only the extensions which are enabled for the current
configuration, in the same format as `--print-supported-extensions`. This also
prints the canonical architecture string for the given configuration.
Loading