1- # ` thumbv8m.main-none-eabi `
1+ # ` thumbv8m.main-none-eabi ` and ` thumbv8m.main-none-eabihf `
22
33** Tier: 2**
44
@@ -13,14 +13,8 @@ Processors in this family include the:
1313* [ Arm Cortex-M85] [ cortex-m85 ]
1414
1515See [ ` arm-none-eabi ` ] ( arm-none-eabi.md ) for information applicable to all
16- ` arm-none-eabi ` targets.
17-
18- This target uses the soft-float ABI: functions which take ` f32 ` or ` f64 ` as
19- arguments will have those values packed into integer registers. This target
20- therefore does not require the use of an FPU (which is optional on Cortex-M33,
21- Cortex-M55 and Cortex-M85), but an FPU can be optionally enabled if desired. See
22- also the hard-float ABI version of this target
23- [ ` thumbv8m.main-none-eabihf ` ] ( thumbv7em-none-eabihf.md ) .
16+ ` arm-none-eabi ` targets, in particular the difference between the ` eabi ` and
17+ ` eabihf ` ABI.
2418
2519[ t32-isa ] : https://developer.arm.com/Architectures/T32%20Instruction%20Set%20Architecture
2620[ ARMv8-M ] : https://developer.arm.com/documentation/ddi0553/latest/
@@ -40,18 +34,19 @@ See [the bare-metal Arm
4034docs] ( arm-none-eabi.md#target-cpu-and-target-feature-options ) for details on how
4135to use these flags.
4236
43- ### Table of supported CPUs
37+ ### Table of supported CPUs for ` thumbv8m.main-none-eabi `
4438
4539| CPU | FPU | DSP | MVE | Target CPU | Target Features |
4640| ----------- | --- | --- | --------- | ------------- | --------------------- |
47- | Cortex-M33 | No | No | N/A | ` cortex-m33 ` | ` +soft-float,-dsp ` |
48- | Cortex-M33 | No | Yes | N/A | ` cortex-m33 ` | ` +soft-float ` |
49- | Cortex-M33 | SP | No | N/A | ` cortex-m33 ` | ` -dsp ` |
50- | Cortex-M33 | SP | Yes | N/A | ` cortex-m33 ` | None |
51- | Cortex-M35P | No | No | N/A | ` cortex-m35p ` | ` +soft-float,-dsp ` |
52- | Cortex-M35P | No | Yes | N/A | ` cortex-m35p ` | ` +soft-float ` |
53- | Cortex-M35P | SP | No | N/A | ` cortex-m35p ` | ` -dsp ` |
54- | Cortex-M35P | SP | Yes | N/A | ` cortex-m35p ` | None |
41+ | Unspecified | No | No | No | None | None |
42+ | Cortex-M33 | No | No | No | ` cortex-m33 ` | ` +soft-float,-dsp ` |
43+ | Cortex-M33 | No | Yes | No | ` cortex-m33 ` | ` +soft-float ` |
44+ | Cortex-M33 | SP | No | No | ` cortex-m33 ` | ` -dsp ` |
45+ | Cortex-M33 | SP | Yes | No | ` cortex-m33 ` | None |
46+ | Cortex-M35P | No | No | No | ` cortex-m35p ` | ` +soft-float,-dsp ` |
47+ | Cortex-M35P | No | Yes | No | ` cortex-m35p ` | ` +soft-float ` |
48+ | Cortex-M35P | SP | No | No | ` cortex-m35p ` | ` -dsp ` |
49+ | Cortex-M35P | SP | Yes | No | ` cortex-m35p ` | None |
5550| Cortex-M55 | No | Yes | No | ` cortex-m55 ` | ` +soft-float,-mve ` |
5651| Cortex-M55 | DP | Yes | No | ` cortex-m55 ` | ` -mve ` |
5752| Cortex-M55 | No | Yes | Int | ` cortex-m55 ` | ` +soft-float,-mve.fp ` |
@@ -63,6 +58,22 @@ to use these flags.
6358| Cortex-M85 | DP | Yes | Int | ` cortex-m85 ` | ` -mve.fp ` |
6459| Cortex-M85 | DP | Yes | Int+Float | ` cortex-m85 ` | None |
6560
61+ ### Table of supported CPUs for ` thumbv8m.main-none-eabihf `
62+
63+ | CPU | FPU | DSP | MVE | Target CPU | Target Features |
64+ | ----------- | --- | --- | --------- | ------------- | --------------------- |
65+ | Unspecified | SP | No | No | None | None |
66+ | Cortex-M33 | SP | No | No | ` cortex-m33 ` | ` -dsp ` |
67+ | Cortex-M33 | SP | Yes | No | ` cortex-m33 ` | None |
68+ | Cortex-M33P | SP | No | No | ` cortex-m35p ` | ` -dsp ` |
69+ | Cortex-M33P | SP | Yes | No | ` cortex-m35p ` | None |
70+ | Cortex-M55 | DP | Yes | No | ` cortex-m55 ` | ` -mve ` |
71+ | Cortex-M55 | DP | Yes | Int | ` cortex-m55 ` | ` -mve.fp ` |
72+ | Cortex-M55 | DP | Yes | Int+Float | ` cortex-m55 ` | None |
73+ | Cortex-M85 | DP | Yes | No | ` cortex-m85 ` | ` -mve ` |
74+ | Cortex-M85 | DP | Yes | Int | ` cortex-m85 ` | ` -mve.fp ` |
75+ | Cortex-M85 | DP | Yes | Int+Float | ` cortex-m85 ` | None |
76+
6677### Arm Cortex-M33
6778
6879The target CPU is ` cortex-m33 ` .
@@ -72,7 +83,7 @@ The target CPU is `cortex-m33`.
7283 * enabled by default with this * target-cpu*
7384* Has an optional single precision FPU
7485 * support is enabled by default with this * target-cpu*
75- * disable support using the ` +soft-float ` feature
86+ * disable support using the ` +soft-float ` feature ( ` eabi ` only)
7687
7788### Arm Cortex-M35P
7889
@@ -81,9 +92,9 @@ The target CPU is `cortex-m35p`.
8192* Has optional DSP extensions
8293 * support is controlled by the ` dsp ` * target-feature*
8394 * enabled by default with this * target-cpu*
84- * Has a single precision FPU
95+ * Has an optional single precision FPU
8596 * support is enabled by default with this * target-cpu*
86- * disable support using the ` +soft-float ` feature
97+ * disable support using the ` +soft-float ` feature ( ` eabi ` only)
8798
8899### Arm Cortex-M55
89100
@@ -95,7 +106,7 @@ The target CPU is `cortex-m55`.
95106* Has an optional double-precision FPU that also supports half-precision FP16
96107 values
97108 * support is enabled by default with this * target-cpu*
98- * disable support using the ` +soft-float ` feature
109+ * disable support using the ` +soft-float ` feature ( ` eabi ` only)
99110* Has optional support for M-Profile Vector Extensions
100111 * Also known as * Helium Technology*
101112 * Available with only integer support, or both integer/float support
@@ -114,7 +125,7 @@ The target CPU is `cortex-m85`.
114125* Has an optional double-precision FPU that also supports half-precision FP16
115126 values
116127 * support is enabled by default with this * target-cpu*
117- * disable support using the ` +soft-float ` feature
128+ * disable support using the ` +soft-float ` feature ( ` eabi ` only)
118129* Has optional support for M-Profile Vector Extensions
119130 * Also known as * Helium Technology*
120131 * Available with only integer support, or both integer/float support
0 commit comments