‑‑core
Syntax
‑‑core=RV32{E|G|I}[M][A][F][D][C][B][P][N][_NamedExt[_NamedExt1…]]
‑‑core=RV64{G|I}[M][A][F][D][C][B][P][N][_NamedExt[_NamedExt1…]]Parameters
| Generates code for 32-bit RISC-V devices |
| Generates code for 64-bit RISC-V devices |
| Supports the RV32E Base Integer Instruction Set |
| Supports the RV32I/RV64I Base Integer Instruction Set and the M, A, F, and D extensions. |
| Supports the RV32I/RV64I Base Integer Instruction Set |
| Supports the Standard Extension for Integer Multiplication and Division (M) |
| Supports the Standard Extension for Atomic Instructions (A) |
| Supports the Standard Extension for Single-Precision Floating-Point (F) |
| Supports the Standard Extension for Double-Precision Floating-Point (D) |
| Supports the Standard Extension for Compressed Instructions (C) |
| Supports the Standard Extension for Bit Manipulation Instructions (B). This implicitly includes the extensions Zba, Zbb, and Zbs. |
| Supports the proposed Standard Extension for Packed-SIMD Instructions (P), up to version 0.9.11. |
| Supports the Standard Extension for User-Level Interrupts (N) |
| Supports the named extension. Standard extensions begin with a Z and non-standard extensions with an X. Use underscores to separate multiple extensions. For a list of supported named extensions, see the table below. |
Description
Use this option to select the instruction set architecture (ISA) for which the code will be generated. If you do not use this option, the compiler generates code for RV32IM. Note that all modules of your application must use the same parameters.
Single letter parameters that correspond to non-supported standard extensions are accepted but ignored.
The version can be specified after each extension on the form of a major version number, a minor version number, and a subversion number, each number separated by a P, as described in the chapter ISA Subset Naming Conventions in The RISC-V Instruction Set Manual. Volume I: User-Level ISA. Including the subversion number is an IAR-specific extension, required to distinguish between, for example, 0.5.2 and 0.5.4 of the draft P extension. Because the letter P is used both as an extension and as the separator in version numbers, you should use underscores (_) before the extensions to ensure that the specified core string is not ambiguous, for example RV32IC1P2_P2.
Note
The IAR tools do not support all versions of all extensions.
See also
The linker option ‑‑core, ‑‑core.
Caution
Project>Options>General Options>Target