Skip to content

Rollup of 9 pull requests #122818

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 22 commits into from
Closed
Show file tree
Hide file tree
Changes from 2 commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
67f1c53
Don't ICE when encountering bound regions in generator interior type
compiler-errors Mar 14, 2024
bca708b
Do binder folding eagerly in bound_coroutine_hidden_types
compiler-errors Mar 14, 2024
e0980cc
add some comments to hir::ModuleItems
RalfJung Mar 20, 2024
3e8ff90
make "expected paren or brace" error translatable
tshepang Mar 20, 2024
2fca27c
Add bare metal riscv32 target.
royb3 Mar 18, 2024
120d357
Add barest-bones deref patterns
Nadrieril Mar 8, 2024
a400dac
Inherit `RUSTC_BOOTSTRAP` when testing wasm
alexcrichton Mar 20, 2024
ff504a0
Improve emit stable mir body
celinval Mar 20, 2024
5f62574
Enable users to dump the body of an instance
celinval Mar 20, 2024
5fae665
Replace closures with `_` when suggesting fully qualified path for me…
estebank Mar 20, 2024
ebacf7a
s/place_debug/place_pretty in SMIR
celinval Mar 21, 2024
a015b90
Make type_ascribe! not a built-in
compiler-errors Mar 21, 2024
1933969
rename items -> free_items
RalfJung Mar 20, 2024
1eeeaa4
Rollup merge of #122222 - Nadrieril:deref-pat-feature-gate, r=compile…
matthiaskrgr Mar 21, 2024
97fa0db
Rollup merge of #122358 - compiler-errors:bound-regions-in-generator,…
matthiaskrgr Mar 21, 2024
2fb1fe2
Rollup merge of #122696 - royb3:riscv32ima, r=petrochenkov
matthiaskrgr Mar 21, 2024
342b2bf
Rollup merge of #122771 - RalfJung:module-items, r=oli-obk
matthiaskrgr Mar 21, 2024
01c5e74
Rollup merge of #122773 - tshepang:make-expand-translatable, r=fee1-dead
matthiaskrgr Mar 21, 2024
e94cd88
Rollup merge of #122795 - alexcrichton:fix-wasm-beta-bootstrap, r=Mar…
matthiaskrgr Mar 21, 2024
b1d347b
Rollup merge of #122799 - estebank:issue-122569, r=fee1-dead
matthiaskrgr Mar 21, 2024
edb0a1b
Rollup merge of #122801 - celinval:smir-pretty, r=compiler-errors
matthiaskrgr Mar 21, 2024
6d186e3
Rollup merge of #122806 - compiler-errors:type-ascribe, r=fmease
matthiaskrgr Mar 21, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions compiler/rustc_target/src/spec/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1621,6 +1621,7 @@ supported_targets! {
("riscv32i-unknown-none-elf", riscv32i_unknown_none_elf),
("riscv32im-risc0-zkvm-elf", riscv32im_risc0_zkvm_elf),
("riscv32im-unknown-none-elf", riscv32im_unknown_none_elf),
("riscv32ima-unknown-none-elf", riscv32ima_unknown_none_elf),
("riscv32imc-unknown-none-elf", riscv32imc_unknown_none_elf),
("riscv32imc-esp-espidf", riscv32imc_esp_espidf),
("riscv32imac-esp-espidf", riscv32imac_esp_espidf),
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
use crate::spec::{Cc, LinkerFlavor, Lld, PanicStrategy, RelocModel, Target, TargetOptions};

pub fn target() -> Target {
Target {
data_layout: "e-m:e-p:32:32-i64:64-n32-S128".into(),
llvm_target: "riscv32".into(),
metadata: crate::spec::TargetMetadata {
description: None,
tier: None,
host_tools: None,
std: None,
},
pointer_width: 32,
arch: "riscv32".into(),

options: TargetOptions {
linker_flavor: LinkerFlavor::Gnu(Cc::No, Lld::Yes),
linker: Some("rust-lld".into()),
cpu: "generic-rv32".into(),
max_atomic_width: Some(32),
features: "+m,+a".into(),
panic_strategy: PanicStrategy::Abort,
relocation_model: RelocModel::Static,
emit_debug_gdb_scripts: false,
eh_frame_header: false,
..Default::default()
},
}
}
1 change: 1 addition & 0 deletions src/doc/rustc/src/platform-support.md
Original file line number Diff line number Diff line change
Expand Up @@ -339,6 +339,7 @@ target | std | host | notes
`riscv32gc-unknown-linux-gnu` | | | RISC-V Linux (kernel 5.4, glibc 2.33)
`riscv32gc-unknown-linux-musl` | | | RISC-V Linux (kernel 5.4, musl 1.2.3 + RISCV32 support patches)
[`riscv32im-risc0-zkvm-elf`](platform-support/riscv32im-risc0-zkvm-elf.md) | ? | | RISC Zero's zero-knowledge Virtual Machine (RV32IM ISA)
[`riscv32ima-unknown-none-elf`](platform-support/riscv32-unknown-none-elf.md) | * | | Bare RISC-V (RV32IMA ISA)
[`riscv32imac-unknown-xous-elf`](platform-support/riscv32imac-unknown-xous-elf.md) | ? | | RISC-V Xous (RV32IMAC ISA)
[`riscv32imc-esp-espidf`](platform-support/esp-idf.md) | ✓ | | RISC-V ESP-IDF
[`riscv32imac-esp-espidf`](platform-support/esp-idf.md) | ✓ | | RISC-V ESP-IDF
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
# `riscv32{i,im,imc,imac,imafc}-unknown-none-elf`
# `riscv32{i,im,ima,imc,imac,imafc}-unknown-none-elf`

**Tier: 2**

Bare-metal target for RISC-V CPUs with the RV32I, RV32IM, RV32IMC, RV32IMAFC and RV32IMAC ISAs.

**Tier: 3**

Bare-metal target for RISC-V CPUs with the RV32IMA ISA.

## Target maintainers

* Rust Embedded Working Group, [RISC-V team](https://github.com/rust-embedded/wg#the-risc-v-team)
Expand Down
1 change: 1 addition & 0 deletions src/tools/build-manifest/src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -126,6 +126,7 @@ static TARGETS: &[&str] = &[
"riscv32i-unknown-none-elf",
"riscv32im-risc0-zkvm-elf",
"riscv32im-unknown-none-elf",
"riscv32ima-unknown-none-elf",
"riscv32imc-unknown-none-elf",
"riscv32imac-unknown-none-elf",
"riscv32imafc-unknown-none-elf",
Expand Down
3 changes: 3 additions & 0 deletions tests/assembly/targets/targets-elf.rs
Original file line number Diff line number Diff line change
Expand Up @@ -369,6 +369,9 @@
//@ revisions: riscv32im_unknown_none_elf
//@ [riscv32im_unknown_none_elf] compile-flags: --target riscv32im-unknown-none-elf
//@ [riscv32im_unknown_none_elf] needs-llvm-components: riscv
//@ revisions: riscv32ima_unknown_none_elf
//@ [riscv32ima_unknown_none_elf] compile-flags: --target riscv32ima-unknown-none-elf
//@ [riscv32ima_unknown_none_elf] needs-llvm-components: riscv
//@ revisions: riscv32imac_esp_espidf
//@ [riscv32imac_esp_espidf] compile-flags: --target riscv32imac-esp-espidf
//@ [riscv32imac_esp_espidf] needs-llvm-components: riscv
Expand Down