Skip to content

Commit 2a2e5e8

Browse files
Rollup merge of rust-lang#136037 - no1wudi:doc, r=jieyouxu
Mark all NuttX targets as tier 3 target and support the standard library The support for standard library added by rust-lang#130595.
2 parents a02e788 + ebf5363 commit 2a2e5e8

18 files changed

+51
-54
lines changed

compiler/rustc_target/src/spec/targets/aarch64_unknown_nuttx.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ pub(crate) fn target() -> Target {
3636
description: Some("AArch64 NuttX".into()),
3737
tier: Some(3),
3838
host_tools: Some(false),
39-
std: Some(false),
39+
std: Some(true),
4040
},
4141
pointer_width: 64,
4242
data_layout: "e-m:e-p270:32:32-p271:32:32-p272:64:64-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128-Fn32".into(),

compiler/rustc_target/src/spec/targets/armv7a_nuttx_eabi.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ pub(crate) fn target() -> Target {
3131
description: Some("ARMv7-A Cortex-A with NuttX".into()),
3232
tier: Some(3),
3333
host_tools: Some(false),
34-
std: Some(false),
34+
std: Some(true),
3535
},
3636
pointer_width: 32,
3737
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/armv7a_nuttx_eabihf.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ pub(crate) fn target() -> Target {
3131
description: Some("ARMv7-A Cortex-A with NuttX (hard float)".into()),
3232
tier: Some(3),
3333
host_tools: Some(false),
34-
std: Some(false),
34+
std: Some(true),
3535
},
3636
pointer_width: 32,
3737
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/riscv32imac_unknown_nuttx_elf.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ pub(crate) fn target() -> Target {
66
llvm_target: "riscv32".into(),
77
metadata: crate::spec::TargetMetadata {
88
description: None,
9-
tier: None,
9+
tier: Some(3),
1010
host_tools: None,
11-
std: None,
11+
std: Some(true),
1212
},
1313
pointer_width: 32,
1414
arch: "riscv32".into(),

compiler/rustc_target/src/spec/targets/riscv32imafc_unknown_nuttx_elf.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ pub(crate) fn target() -> Target {
66
llvm_target: "riscv32".into(),
77
metadata: crate::spec::TargetMetadata {
88
description: None,
9-
tier: None,
9+
tier: Some(3),
1010
host_tools: None,
11-
std: None,
11+
std: Some(true),
1212
},
1313
pointer_width: 32,
1414
arch: "riscv32".into(),

compiler/rustc_target/src/spec/targets/riscv32imc_unknown_nuttx_elf.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ pub(crate) fn target() -> Target {
66
llvm_target: "riscv32".into(),
77
metadata: crate::spec::TargetMetadata {
88
description: None,
9-
tier: None,
9+
tier: Some(3),
1010
host_tools: None,
11-
std: None,
11+
std: Some(true),
1212
},
1313
pointer_width: 32,
1414
arch: "riscv32".into(),

compiler/rustc_target/src/spec/targets/riscv64gc_unknown_nuttx_elf.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ pub(crate) fn target() -> Target {
88
data_layout: "e-m:e-p:64:64-i64:64-i128:128-n32:64-S128".into(),
99
metadata: crate::spec::TargetMetadata {
1010
description: None,
11-
tier: None,
11+
tier: Some(3),
1212
host_tools: None,
13-
std: None,
13+
std: Some(true),
1414
},
1515
llvm_target: "riscv64".into(),
1616
pointer_width: 64,

compiler/rustc_target/src/spec/targets/riscv64imac_unknown_nuttx_elf.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ pub(crate) fn target() -> Target {
88
data_layout: "e-m:e-p:64:64-i64:64-i128:128-n32:64-S128".into(),
99
metadata: crate::spec::TargetMetadata {
1010
description: None,
11-
tier: None,
11+
tier: Some(3),
1212
host_tools: None,
13-
std: None,
13+
std: Some(true),
1414
},
1515
llvm_target: "riscv64".into(),
1616
pointer_width: 64,

compiler/rustc_target/src/spec/targets/thumbv6m_nuttx_eabi.rs

+5-8
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ pub(crate) fn target() -> Target {
77
llvm_target: "thumbv6m-none-eabi".into(),
88
metadata: crate::spec::TargetMetadata {
99
description: None,
10-
tier: None,
10+
tier: Some(3),
1111
host_tools: None,
12-
std: None,
12+
std: Some(true),
1313
},
1414
pointer_width: 32,
1515
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),
@@ -22,12 +22,9 @@ pub(crate) fn target() -> Target {
2222
llvm_floatabi: Some(FloatAbi::Soft),
2323
// The ARMv6-M architecture doesn't support unaligned loads/stores so we disable them
2424
// with +strict-align.
25-
// Also force-enable 32-bit atomics, which allows the use of atomic load/store only.
26-
// The resulting atomics are ABI incompatible with atomics backed by libatomic.
27-
features: "+strict-align,+atomics-32".into(),
28-
// There are no atomic CAS instructions available in the instruction set of the ARMv6-M
29-
// architecture
30-
atomic_cas: false,
25+
// The ARMv6-M doesn't support hardware atomic operations, use atomic builtins instead.
26+
features: "+strict-align".into(),
27+
max_atomic_width: Some(32),
3128
..base::thumb::opts()
3229
},
3330
}

compiler/rustc_target/src/spec/targets/thumbv7a_nuttx_eabi.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -11,9 +11,9 @@ pub(crate) fn target() -> Target {
1111
llvm_target: "thumbv7a-none-eabi".into(),
1212
metadata: crate::spec::TargetMetadata {
1313
description: None,
14-
tier: None,
14+
tier: Some(3),
1515
host_tools: None,
16-
std: None,
16+
std: Some(true),
1717
},
1818
pointer_width: 32,
1919
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/thumbv7a_nuttx_eabihf.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,9 @@ pub(crate) fn target() -> Target {
1414
llvm_target: "thumbv7a-none-eabihf".into(),
1515
metadata: crate::spec::TargetMetadata {
1616
description: None,
17-
tier: None,
17+
tier: Some(3),
1818
host_tools: None,
19-
std: None,
19+
std: Some(true),
2020
},
2121
pointer_width: 32,
2222
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/thumbv7em_nuttx_eabi.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ pub(crate) fn target() -> Target {
1616
llvm_target: "thumbv7em-none-eabi".into(),
1717
metadata: crate::spec::TargetMetadata {
1818
description: None,
19-
tier: None,
19+
tier: Some(3),
2020
host_tools: None,
21-
std: None,
21+
std: Some(true),
2222
},
2323
pointer_width: 32,
2424
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/thumbv7em_nuttx_eabihf.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ pub(crate) fn target() -> Target {
1515
llvm_target: "thumbv7em-none-eabihf".into(),
1616
metadata: crate::spec::TargetMetadata {
1717
description: None,
18-
tier: None,
18+
tier: Some(3),
1919
host_tools: None,
20-
std: None,
20+
std: Some(true),
2121
},
2222
pointer_width: 32,
2323
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/thumbv7m_nuttx_eabi.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ pub(crate) fn target() -> Target {
77
llvm_target: "thumbv7m-none-eabi".into(),
88
metadata: crate::spec::TargetMetadata {
99
description: None,
10-
tier: None,
10+
tier: Some(3),
1111
host_tools: None,
12-
std: None,
12+
std: Some(true),
1313
},
1414
pointer_width: 32,
1515
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/thumbv8m_base_nuttx_eabi.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ pub(crate) fn target() -> Target {
77
llvm_target: "thumbv8m.base-none-eabi".into(),
88
metadata: crate::spec::TargetMetadata {
99
description: None,
10-
tier: None,
10+
tier: Some(3),
1111
host_tools: None,
12-
std: None,
12+
std: Some(true),
1313
},
1414
pointer_width: 32,
1515
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/thumbv8m_main_nuttx_eabi.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ pub(crate) fn target() -> Target {
88
llvm_target: "thumbv8m.main-none-eabi".into(),
99
metadata: crate::spec::TargetMetadata {
1010
description: None,
11-
tier: None,
11+
tier: Some(3),
1212
host_tools: None,
13-
std: None,
13+
std: Some(true),
1414
},
1515
pointer_width: 32,
1616
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/thumbv8m_main_nuttx_eabihf.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ pub(crate) fn target() -> Target {
88
llvm_target: "thumbv8m.main-none-eabihf".into(),
99
metadata: crate::spec::TargetMetadata {
1010
description: None,
11-
tier: None,
11+
tier: Some(3),
1212
host_tools: None,
13-
std: None,
13+
std: Some(true),
1414
},
1515
pointer_width: 32,
1616
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

src/doc/rustc/src/platform-support.md

+17-17
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,7 @@ target | std | host | notes
262262
[`aarch64-unknown-nto-qnx710`](platform-support/nto-qnx.md) | ✓ | | ARM64 QNX Neutrino 7.1 RTOS with default network stack (io-pkt) |
263263
[`aarch64-unknown-nto-qnx710_iosock`](platform-support/nto-qnx.md) | ✓ | | ARM64 QNX Neutrino 7.1 RTOS with new network stack (io-sock) |
264264
[`aarch64-unknown-nto-qnx800`](platform-support/nto-qnx.md) | ✓ | | ARM64 QNX Neutrino 8.0 RTOS |
265-
[`aarch64-unknown-nuttx`](platform-support/nuttx.md) | * | | ARM64 with NuttX
265+
[`aarch64-unknown-nuttx`](platform-support/nuttx.md) | | | ARM64 with NuttX
266266
[`aarch64-unknown-openbsd`](platform-support/openbsd.md) | ✓ | ✓ | ARM64 OpenBSD
267267
[`aarch64-unknown-redox`](platform-support/redox.md) | ✓ | | ARM64 Redox OS
268268
[`aarch64-unknown-teeos`](platform-support/aarch64-unknown-teeos.md) | ? | | ARM64 TEEOS |
@@ -298,8 +298,8 @@ target | std | host | notes
298298
[`armv7k-apple-watchos`](platform-support/apple-watchos.md) | ✓ | | Armv7-A Apple WatchOS
299299
[`armv7s-apple-ios`](platform-support/apple-ios.md) | ✓ | | Armv7-A Apple-A6 Apple iOS
300300
[`armv8r-none-eabihf`](platform-support/armv8r-none-eabihf.md) | * | | Bare Armv8-R, hardfloat
301-
[`armv7a-nuttx-eabi`](platform-support/nuttx.md) | * | | ARMv7-A with NuttX
302-
[`armv7a-nuttx-eabihf`](platform-support/nuttx.md) | * | | ARMv7-A with NuttX, hardfloat
301+
[`armv7a-nuttx-eabi`](platform-support/nuttx.md) | | | ARMv7-A with NuttX
302+
[`armv7a-nuttx-eabihf`](platform-support/nuttx.md) | | | ARMv7-A with NuttX, hardfloat
303303
`avr-unknown-gnu-atmega328` | * | | AVR. Requires `-Z build-std=core`
304304
`bpfeb-unknown-none` | * | | BPF (big endian)
305305
`bpfel-unknown-none` | * | | BPF (little endian)
@@ -369,40 +369,40 @@ target | std | host | notes
369369
[`riscv32im-risc0-zkvm-elf`](platform-support/riscv32im-risc0-zkvm-elf.md) | ? | | RISC Zero's zero-knowledge Virtual Machine (RV32IM ISA)
370370
[`riscv32ima-unknown-none-elf`](platform-support/riscv32-unknown-none-elf.md) | * | | Bare RISC-V (RV32IMA ISA)
371371
[`riscv32imac-esp-espidf`](platform-support/esp-idf.md) | ✓ | | RISC-V ESP-IDF
372-
[`riscv32imac-unknown-nuttx-elf`](platform-support/nuttx.md) | * | | RISC-V 32bit with NuttX
372+
[`riscv32imac-unknown-nuttx-elf`](platform-support/nuttx.md) | | | RISC-V 32bit with NuttX
373373
[`riscv32imac-unknown-xous-elf`](platform-support/riscv32imac-unknown-xous-elf.md) | ? | | RISC-V Xous (RV32IMAC ISA)
374374
[`riscv32imafc-esp-espidf`](platform-support/esp-idf.md) | ✓ | | RISC-V ESP-IDF
375-
[`riscv32imafc-unknown-nuttx-elf`](platform-support/nuttx.md) | * | | RISC-V 32bit with NuttX
375+
[`riscv32imafc-unknown-nuttx-elf`](platform-support/nuttx.md) | | | RISC-V 32bit with NuttX
376376
[`riscv32imc-esp-espidf`](platform-support/esp-idf.md) | ✓ | | RISC-V ESP-IDF
377-
[`riscv32imc-unknown-nuttx-elf`](platform-support/nuttx.md) | * | | RISC-V 32bit with NuttX
377+
[`riscv32imc-unknown-nuttx-elf`](platform-support/nuttx.md) | | | RISC-V 32bit with NuttX
378378
[`riscv64-linux-android`](platform-support/android.md) | ? | | RISC-V 64-bit Android
379379
[`riscv64-wrs-vxworks`](platform-support/vxworks.md) | ✓ | |
380380
`riscv64gc-unknown-freebsd` | ? | | RISC-V FreeBSD
381381
`riscv64gc-unknown-fuchsia` | ? | | RISC-V Fuchsia
382382
[`riscv64gc-unknown-hermit`](platform-support/hermit.md) | ✓ | | RISC-V Hermit
383383
[`riscv64gc-unknown-netbsd`](platform-support/netbsd.md) | ✓ | ✓ | RISC-V NetBSD
384-
[`riscv64gc-unknown-nuttx-elf`](platform-support/nuttx.md) | * | | RISC-V 64bit with NuttX
384+
[`riscv64gc-unknown-nuttx-elf`](platform-support/nuttx.md) | | | RISC-V 64bit with NuttX
385385
[`riscv64gc-unknown-openbsd`](platform-support/openbsd.md) | ✓ | ✓ | OpenBSD/riscv64
386-
[`riscv64imac-unknown-nuttx-elf`](platform-support/nuttx.md) | * | | RISC-V 64bit with NuttX
386+
[`riscv64imac-unknown-nuttx-elf`](platform-support/nuttx.md) | | | RISC-V 64bit with NuttX
387387
[`s390x-unknown-linux-musl`](platform-support/s390x-unknown-linux-musl.md) | ✓ | | S390x Linux (kernel 3.2, musl 1.2.3)
388388
`sparc-unknown-linux-gnu` | ✓ | | 32-bit SPARC Linux
389389
[`sparc-unknown-none-elf`](./platform-support/sparc-unknown-none-elf.md) | * | | Bare 32-bit SPARC V7+
390390
[`sparc64-unknown-netbsd`](platform-support/netbsd.md) | ✓ | ✓ | NetBSD/sparc64
391391
[`sparc64-unknown-openbsd`](platform-support/openbsd.md) | ✓ | ✓ | OpenBSD/sparc64
392392
[`thumbv4t-none-eabi`](platform-support/armv4t-none-eabi.md) | * | | Thumb-mode Bare Armv4T
393393
[`thumbv5te-none-eabi`](platform-support/armv5te-none-eabi.md) | * | | Thumb-mode Bare Armv5TE
394-
[`thumbv6m-nuttx-eabi`](platform-support/nuttx.md) | * | | ARMv6M with NuttX
394+
[`thumbv6m-nuttx-eabi`](platform-support/nuttx.md) | | | ARMv6M with NuttX
395395
`thumbv7a-pc-windows-msvc` | | |
396396
[`thumbv7a-uwp-windows-msvc`](platform-support/uwp-windows-msvc.md) | | |
397-
[`thumbv7a-nuttx-eabi`](platform-support/nuttx.md) | * | | ARMv7-A with NuttX
398-
[`thumbv7a-nuttx-eabihf`](platform-support/nuttx.md) | * | | ARMv7-A with NuttX, hardfloat
399-
[`thumbv7em-nuttx-eabi`](platform-support/nuttx.md) | * | | ARMv7EM with NuttX
400-
[`thumbv7em-nuttx-eabihf`](platform-support/nuttx.md) | * | | ARMv7EM with NuttX, hardfloat
401-
[`thumbv7m-nuttx-eabi`](platform-support/nuttx.md) | * | | ARMv7M with NuttX
397+
[`thumbv7a-nuttx-eabi`](platform-support/nuttx.md) | | | ARMv7-A with NuttX
398+
[`thumbv7a-nuttx-eabihf`](platform-support/nuttx.md) | | | ARMv7-A with NuttX, hardfloat
399+
[`thumbv7em-nuttx-eabi`](platform-support/nuttx.md) | | | ARMv7EM with NuttX
400+
[`thumbv7em-nuttx-eabihf`](platform-support/nuttx.md) | | | ARMv7EM with NuttX, hardfloat
401+
[`thumbv7m-nuttx-eabi`](platform-support/nuttx.md) | | | ARMv7M with NuttX
402402
`thumbv7neon-unknown-linux-musleabihf` | ? | | Thumb2-mode Armv7-A Linux with NEON, musl 1.2.3
403-
[`thumbv8m.base-nuttx-eabi`](platform-support/nuttx.md) | * | | ARMv8M Baseline with NuttX
404-
[`thumbv8m.main-nuttx-eabi`](platform-support/nuttx.md) | * | | ARMv8M Mainline with NuttX
405-
[`thumbv8m.main-nuttx-eabihf`](platform-support/nuttx.md) | * | | ARMv8M Mainline with NuttX, hardfloat
403+
[`thumbv8m.base-nuttx-eabi`](platform-support/nuttx.md) | | | ARMv8M Baseline with NuttX
404+
[`thumbv8m.main-nuttx-eabi`](platform-support/nuttx.md) | | | ARMv8M Mainline with NuttX
405+
[`thumbv8m.main-nuttx-eabihf`](platform-support/nuttx.md) | | | ARMv8M Mainline with NuttX, hardfloat
406406
[`wasm64-unknown-unknown`](platform-support/wasm64-unknown-unknown.md) | ? | | WebAssembly
407407
[`x86_64-apple-tvos`](platform-support/apple-tvos.md) | ✓ | | x86 64-bit tvOS
408408
[`x86_64-apple-watchos-sim`](platform-support/apple-watchos.md) | ✓ | | x86 64-bit Apple WatchOS simulator

0 commit comments

Comments
 (0)