I'm getting started with a ATSAML10xxxx series project that uses Cortex M23 (ARM v8 baseline)
Since I'm new to Rust development (but already an experienced embedded developer), I've been following The Embedded Rust Book - Installing the tools. Specifically it suggests adding the following targets with rustup target add
thumbv6m-none-eabi
thumbv7m-none-eabi
thumbv7em-none-eabi
thumbv7em-none-eabihf
As for ARM v8 baseline, mainline and mainline with extension, the targets are respectively:
thumbv8m.base-none-eabi (e.g. Cortex M23)
thumbv8m.main-none-eabi (Not sure which arch uses this instruction set specifically 🤷♀️)
I'm getting started with a
ATSAML10xxxx
series project that uses Cortex M23 (ARM v8 baseline)Since I'm new to Rust development (but already an experienced embedded developer), I've been following The Embedded Rust Book - Installing the tools. Specifically it suggests adding the following targets with
rustup target add
thumbv6m-none-eabi
thumbv7m-none-eabi
thumbv7em-none-eabi
thumbv7em-none-eabihf
As for ARM v8 baseline, mainline and mainline with extension, the targets are respectively:
thumbv8m.base-none-eabi
(e.g. Cortex M23)thumbv8m.main-none-eabi
(Not sure which arch uses this instruction set specifically 🤷♀️)thumbv8m.main-none-eabihf
(e.g. Cortex M33, CortexM35P)Could these be added to
README.md
and also other places I've yet to come across?https://github.com/rust-embedded/cortex-m-quickstart/blob/ae6ad14ad45c2b83dd9820628f2e0cddc2c44e32/README.md#L17-L23 and https://github.com/rust-embedded/cortex-m-quickstart/blob/ae6ad14ad45c2b83dd9820628f2e0cddc2c44e32/README.md#L77-L84
Maybe a reference to the Cortex-M comparison table might help with picking out the right instruction set