Skip to content
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

Tracking Issue for asm_experimental_arch #93335

Open
Amanieu opened this issue Jan 26, 2022 · 1 comment
Open

Tracking Issue for asm_experimental_arch #93335

Amanieu opened this issue Jan 26, 2022 · 1 comment
Labels
A-inline-assembly Area: inline asm!(..) B-unstable Blocker: Implemented in the nightly compiler and unstable. C-tracking-issue Category: A tracking issue for an RFC or an unstable feature. F-asm `#![feature(asm)]` (not `llvm_asm`)

Comments

@Amanieu
Copy link
Member

Amanieu commented Jan 26, 2022

The feature gate for the issue is #![feature(asm_experimental_arch)].

Summary

This feature tracks asm! and global_asm! support for the following architectures:

  • NVPTX
  • PowerPC
  • Hexagon
  • MIPS32r2 and MIPS64r2
  • wasm32
  • BPF
  • SPIR-V
  • AVR
  • MSP430

Status

Each architecture needs to be reviewed before stabilization:

  • It must have clobber_abi.
  • It must be possible to clobber every register that is normally clobbered by a function call.
  • Generally review that the exposed register classes make sense.
@Amanieu Amanieu added A-inline-assembly Area: inline asm!(..) B-unstable Blocker: Implemented in the nightly compiler and unstable. C-tracking-issue Category: A tracking issue for an RFC or an unstable feature. F-asm `#![feature(asm)]` (not `llvm_asm`) labels Jan 26, 2022
@solomatov
Copy link

Is there any chance that wasm32 assembly support will be stabilized any time soon? Are there any tasks where contributions might speed this up?

michel-slm added a commit to michel-slm/libbpf-rs that referenced this issue Sep 13, 2024
This is needed to use `probe!` on ppc64le and s390x

See rust-lang/rust#93335

Also loosen version requirement on `probe`; on Fedora we have been
building with `probe` 0.5.1 with no issue.

Tested by doing a scratch build on Fedora's Koji build system:

https://koji.fedoraproject.org/koji/taskinfo?taskID=123358009

Signed-off-by: Michel Lind <salimma@fedoraproject.org>
michel-slm added a commit to michel-slm/libbpf-rs that referenced this issue Sep 13, 2024
These require `feature(asm_experimental_arch)` which only works on
nightly compilers.

See rust-lang/rust#93335

Also loosen version requirement on `probe`; on Fedora we have been
building with `probe` 0.5.1 with no issue.

Tested by doing a scratch build on Fedora's Koji build system:

https://koji.fedoraproject.org/koji/taskinfo?taskID=123361398

Signed-off-by: Michel Lind <salimma@fedoraproject.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-inline-assembly Area: inline asm!(..) B-unstable Blocker: Implemented in the nightly compiler and unstable. C-tracking-issue Category: A tracking issue for an RFC or an unstable feature. F-asm `#![feature(asm)]` (not `llvm_asm`)
Projects
None yet
Development

No branches or pull requests

2 participants