about summary refs log tree commit diff
path: root/tests/codegen
diff options
context:
space:
mode:
authorMatthias Krüger <matthias.krueger@famsik.de>2024-04-10 04:27:40 +0200
committerGitHub <noreply@github.com>2024-04-10 04:27:40 +0200
commit2ddf984594519c62ee23f0289a1a0afebb90186b (patch)
treef69b25dcc1dc7e4ff19e751892ffde942b0942b6 /tests/codegen
parent4bc891aebf160af71ed1cb087d9daa83978d4a5f (diff)
parent33db20978e8157f53ca24fce1c54a7b5e07159cf (diff)
downloadrust-2ddf984594519c62ee23f0289a1a0afebb90186b.tar.gz
rust-2ddf984594519c62ee23f0289a1a0afebb90186b.zip
Rollup merge of #123612 - kxxt:riscv-target-abi, r=jieyouxu,nikic,DianQK
Set target-abi module flag for RISC-V targets

Fixes cross-language LTO on RISC-V targets (Fixes #121924)
Diffstat (limited to 'tests/codegen')
-rw-r--r--tests/codegen/riscv-target-abi.rs20
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/codegen/riscv-target-abi.rs b/tests/codegen/riscv-target-abi.rs
new file mode 100644
index 00000000000..5d545af9c76
--- /dev/null
+++ b/tests/codegen/riscv-target-abi.rs
@@ -0,0 +1,20 @@
+//@ revisions:riscv64gc riscv32gc riscv32imac
+
+//@[riscv64gc] compile-flags: --target=riscv64gc-unknown-linux-gnu
+//@[riscv64gc] needs-llvm-components: riscv
+// riscv64gc: !{i32 1, !"target-abi", !"lp64d"}
+
+//@[riscv32gc] compile-flags: --target=riscv32gc-unknown-linux-musl
+//@[riscv32gc] needs-llvm-components: riscv
+// riscv32gc: !{i32 1, !"target-abi", !"ilp32d"}
+
+//@[riscv32imac] compile-flags: --target=riscv32imac-unknown-none-elf
+//@[riscv32imac] needs-llvm-components: riscv
+// riscv32imac-NOT: !"target-abi"
+
+#![feature(no_core, lang_items)]
+#![crate_type = "lib"]
+#![no_core]
+
+#[lang = "sized"]
+trait Sized {}