about summary refs log tree commit diff
path: root/compiler/rustc_codegen_gcc/src
diff options
context:
space:
mode:
authorLeón Orell Valerian Liehr <me@fmease.dev>2025-05-18 18:44:10 +0200
committerGitHub <noreply@github.com>2025-05-18 18:44:10 +0200
commit2f0c6e217f51eee4ee54424e18e9effce5404038 (patch)
treeaa83be1c5eccb6a1b2eb4ad71e904dc6a280f6dc /compiler/rustc_codegen_gcc/src
parent2f6811eff87e81506eac3a3241e3ef7de6fbbc39 (diff)
parent26e3a5041a3d9bcba04a7b201a47b1b03ccb2b2f (diff)
downloadrust-2f0c6e217f51eee4ee54424e18e9effce5404038.tar.gz
rust-2f0c6e217f51eee4ee54424e18e9effce5404038.zip
Rollup merge of #140490 - folkertdev:asm-parser-changes, r=Amanieu,traviscross
split `asm!` parsing and validation

This PR splits `asm!` parsing and validation into two separate steps.

The parser constructs a `Vec<RawAsmArg>`, with each element corresponding to an argument to one of the `asm!` macros.
The validation then checks things like ordering of arguments or that options are not provided twice.

The motivation is https://github.com/rust-lang/rust/issues/140279, which wants to add `#[cfg(...)]` support to these arguments. This support can now be added in a straightforward way by adding an `attributes: ast::AttrVec` field to `RawAsmArg`.

An extra reason for this split is that `rustfmt` probably wants to format the assembly at some point (currently that appears to be stubbed out, and the formatting is unstable https://github.com/rust-lang/style-team/issues/152).

r? ``@ghost`` (just want to look at CI for now)

cc ``@ytmimi`` we discussed asm formatting a little while ago in https://github.com/rust-lang/rustfmt/issues/6526. Am I correct in assuming that `AsmArgs` does not give enough information for formatting, but that `RawAsmArgs` would (it e.g. does not join information from multiple lines). This must have been an issue before?

try-job: aarch64-apple
Diffstat (limited to 'compiler/rustc_codegen_gcc/src')
0 files changed, 0 insertions, 0 deletions