In https://github.com/rust-embedded/cortex-ar, there is a crate called [`arm-targets`](https://docs.rs/arm-targets) which sets up cfg's for all kinds of Arm targets. The `cortex-m` crate could use that rather than doing its own thing.