about summary refs log tree commit diff
path: root/tests/ui/coercion/codegen-smart-pointer-with-alias.rs
diff options
context:
space:
mode:
authorStuart Cook <Zalathar@users.noreply.github.com>2025-05-02 22:16:58 +1000
committerGitHub <noreply@github.com>2025-05-02 22:16:58 +1000
commitb24288ba45495aa625b28f632fcc6aae32a4966e (patch)
tree619b99d6bd9364bcb69b92a1324bc903497dd779 /tests/ui/coercion/codegen-smart-pointer-with-alias.rs
parent86194385743d4ee209205ec44ccb08158fe67e53 (diff)
parenteec6cfb8dab2d20e58a44df0e1c52c5abf6b2d26 (diff)
downloadrust-b24288ba45495aa625b28f632fcc6aae32a4966e.tar.gz
rust-b24288ba45495aa625b28f632fcc6aae32a4966e.zip
Rollup merge of #138872 - a4lg:riscv-fix-incompatible-abi-zfinx, r=workingjubilee
rustc_target: RISC-V `Zfinx` is incompatible with `{ILP32,LP64}[FD]` ABIs

Because RISC-V Calling Conventions note that:

> This means code targeting the `Zfinx` extension always uses the ILP32,  ILP32E or LP64 integer calling-convention only ABIs as there is no dedicated hardware floating-point register file.

`{ILP32,LP64}[FD]` ABIs with hardware floating-point calling conventions are incompatible with the `Zfinx` extension.

This commit adds `"zfinx"` to the incompatible feature list to those ABIs and tests whether trying to add `"zdinx"` (that is analogous to `"zfinx"` but in double-precision) on a LP64D ABI configuration results in an error (it also tests extension implication; `Zdinx` requires `Zfinx` extension).

Links: RISC-V psABI specification version 1.0
<https://github.com/riscv-non-isa/riscv-elf-psabi-doc/blob/v1.0/riscv-cc.adoc#named-abis>
<https://github.com/riscv-non-isa/riscv-elf-psabi-doc/releases/tag/v1.0>
Diffstat (limited to 'tests/ui/coercion/codegen-smart-pointer-with-alias.rs')
0 files changed, 0 insertions, 0 deletions