mirror of
https://git.yoctoproject.org/poky
synced 2026-02-14 20:53:03 +01:00
https://blog.rust-lang.org/2025/09/18/Rust-1.90.0/
* Recent changes in rustc require 'target-c-int-width' to be an integer,
not a string. This fixes type consistency when generating target specs.
https://github.com/rust-lang/rust/pull/142352.
* Rebase existing patches with v1.90.0.
* Drop merged patches with rust v1.90.0.
- backport-fix-test-string-merging.patch
2d51acd2fb
* The "remote-test-server" bin is now generated in stage1-tools-bin dir
rather than stage2. Update the test suite accordingly.
The tests/{assembly/codegen} dirs are renamed to
tests/{assembly,codegen}-llvm. Update the test suite and
patches accordingly.
https://github.com/rust-lang/rust/pull/144249/commits
* Use "//@ ignore-riscv64" tag for tests failing on riscv-64 instead of previous
"only-<target_arch>" tags.
Test results summary:
rust v1.90.0
+-----------+--------+---------+
| Machine | Passed | Ignored |
+-----------+--------+---------+
| arm-32 | 29,517 | 1,529 |
| arm-64 | 29,608 | 1,471 |
| x86-32 | 29,508 | 1,507 |
| x86-64 | 29,903 | 1,275 |
| riscv-64 | 29,584 | 1,494 |
+-----------+--------+---------+
Test results difference (1.90 - 1.89):
+-----------+--------+---------+
| Machine | Passed | Ignored |
+-----------+--------+---------+
| arm-32 | +278 | +61 |
| arm-64 | +279 | +59 |
| x86-32 | +277 | +58 |
| x86-64 | +419 | +50 |
| riscv-64 | +280 | +58 |
+-----------+--------+---------+
(From OE-Core rev: 86d09ec9cdbcea6e076ebac6e1243f9e20fb4378)
Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
380 lines
14 KiB
Diff
380 lines
14 KiB
Diff
Add "[ignore]" tags to the failing unit tests to
|
|
ignore them during rust oe-selftest.
|
|
|
|
Upstream-Status: Inappropriate [OE testing specific]
|
|
|
|
Signed-off-by: Yash Shinde <Yash.Shinde@windriver.com>
|
|
# added executable-no-mangle-strip.rs ignore
|
|
Signed-off-by: Peter Tatrai <Peter.Tatrai@siemens.com>
|
|
---
|
|
diff --git a/compiler/rustc_errors/src/markdown/tests/term.rs b/compiler/rustc_errors/src/markdown/tests/term.rs
|
|
--- a/compiler/rustc_errors/src/markdown/tests/term.rs
|
|
+++ b/compiler/rustc_errors/src/markdown/tests/term.rs
|
|
@@ -61,6 +61,7 @@ fn test_wrapping_write() {
|
|
}
|
|
|
|
#[test]
|
|
+#[ignore]
|
|
fn test_output() {
|
|
// Capture `--bless` when run via ./x
|
|
let bless = std::env::var_os("RUSTC_BLESS").is_some_and(|v| v != "0");
|
|
diff --git a/compiler/rustc_interface/src/tests.rs b/compiler/rustc_interface/src/tests.rs
|
|
--- a/compiler/rustc_interface/src/tests.rs
|
|
+++ b/compiler/rustc_interface/src/tests.rs
|
|
@@ -137,6 +137,7 @@ fn assert_non_crate_hash_different(x: &Options, y: &Options) {
|
|
|
|
// When the user supplies --test we should implicitly supply --cfg test
|
|
#[test]
|
|
+#[ignore]
|
|
fn test_switch_implies_cfg_test() {
|
|
sess_and_cfg(&["--test"], |_sess, cfg| {
|
|
assert!(cfg.contains(&(sym::test, None)));
|
|
@@ -145,6 +146,7 @@ fn test_switch_implies_cfg_test() {
|
|
|
|
// When the user supplies --test and --cfg test, don't implicitly add another --cfg test
|
|
#[test]
|
|
+#[ignore]
|
|
fn test_switch_implies_cfg_test_unless_cfg_test() {
|
|
sess_and_cfg(&["--test", "--cfg=test"], |_sess, cfg| {
|
|
let mut test_items = cfg.iter().filter(|&&(name, _)| name == sym::test);
|
|
@@ -154,6 +156,7 @@ fn test_switch_implies_cfg_test_unless_cfg_test() {
|
|
}
|
|
|
|
#[test]
|
|
+#[ignore]
|
|
fn test_can_print_warnings() {
|
|
sess_and_cfg(&["-Awarnings"], |sess, _cfg| {
|
|
assert!(!sess.dcx().can_emit_warnings());
|
|
diff --git a/library/std/tests/sync/rwlock.rs b/library/std/tests/sync/rwlock.rs
|
|
index 1a9d3d3f12f..0a9cfc48806 100644
|
|
--- a/library/std/tests/sync/rwlock.rs
|
|
+++ b/library/std/tests/sync/rwlock.rs
|
|
@@ -74,6 +74,7 @@
|
|
|
|
#[test]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
+#[ignore]
|
|
fn test_rw_arc_poison_wr() {
|
|
let arc = Arc::new(RwLock::new(1));
|
|
let arc2 = arc.clone();
|
|
@@ -87,6 +88,7 @@
|
|
|
|
#[test]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
+#[ignore]
|
|
fn test_rw_arc_poison_mapped_w_r() {
|
|
let arc = Arc::new(RwLock::new(1));
|
|
let arc2 = arc.clone();
|
|
@@ -101,6 +103,7 @@
|
|
|
|
#[test]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
+#[ignore]
|
|
fn test_rw_arc_poison_ww() {
|
|
let arc = Arc::new(RwLock::new(1));
|
|
assert!(!arc.is_poisoned());
|
|
@@ -115,6 +118,7 @@
|
|
}
|
|
|
|
#[test]
|
|
+#[ignore]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
fn test_rw_arc_poison_mapped_w_w() {
|
|
let arc = Arc::new(RwLock::new(1));
|
|
@@ -131,6 +135,7 @@
|
|
|
|
#[test]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
+#[ignore]
|
|
fn test_rw_arc_no_poison_rr() {
|
|
let arc = Arc::new(RwLock::new(1));
|
|
let arc2 = arc.clone();
|
|
@@ -160,6 +165,7 @@
|
|
|
|
#[test]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
+#[ignore]
|
|
fn test_rw_arc_no_poison_rw() {
|
|
let arc = Arc::new(RwLock::new(1));
|
|
let arc2 = arc.clone();
|
|
@@ -227,6 +233,7 @@
|
|
|
|
#[test]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
+#[ignore]
|
|
fn test_rw_arc_access_in_unwind() {
|
|
let arc = Arc::new(RwLock::new(1));
|
|
let arc2 = arc.clone();
|
|
@@ -326,6 +333,7 @@
|
|
|
|
#[test]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
+#[ignore]
|
|
fn test_into_inner_poison() {
|
|
let m = new_poisoned_rwlock(NonCopy(10));
|
|
|
|
@@ -362,6 +370,7 @@
|
|
|
|
#[test]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
+#[ignore]
|
|
fn test_get_mut_poison() {
|
|
let mut m = new_poisoned_rwlock(NonCopy(10));
|
|
|
|
@@ -571,6 +571,7 @@
|
|
|
|
#[test]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
+#[ignore]
|
|
fn panic_while_mapping_write_unlocked_poison() {
|
|
let lock = RwLock::new(());
|
|
|
|
diff --git a/library/test/src/tests.rs b/library/test/src/tests.rs
|
|
--- a/library/test/src/tests.rs
|
|
+++ b/library/test/src/tests.rs
|
|
@@ -414,6 +414,7 @@
|
|
}
|
|
|
|
#[test]
|
|
+#[ignore]
|
|
fn test_time_options_threshold() {
|
|
let unit = TimeThreshold::new(Duration::from_millis(50), Duration::from_millis(100));
|
|
let integration = TimeThreshold::new(Duration::from_millis(500), Duration::from_millis(1000));
|
|
diff --git a/library/std/tests/sync/mutex.rs b/library/std/tests/sync/mutex.rs
|
|
--- a/library/std/tests/sync/mutex.rs
|
|
+++ b/library/std/tests/sync/mutex.rs
|
|
@@ -312,6 +312,7 @@
|
|
|
|
#[test]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
+#[ignore]
|
|
fn test_mutex_arc_poison_mapped() {
|
|
let arc = Arc::new(Mutex::new(1));
|
|
assert!(!arc.is_poisoned());
|
|
@@ -391,6 +392,7 @@
|
|
|
|
#[test]
|
|
#[cfg_attr(not(panic = "unwind"), ignore = "test requires unwinding support")]
|
|
+#[ignore]
|
|
fn panic_while_mapping_unlocked_poison() {
|
|
let lock = Mutex::new(());
|
|
|
|
diff --git a/library/coretests/benches/num/int_log/mod.rs b/library/coretests/benches/num/int_log/mod.rs
|
|
index 3807cd5d76c..018c5c04456 100644
|
|
--- a/library/coretests/benches/num/int_log/mod.rs
|
|
+++ b/library/coretests/benches/num/int_log/mod.rs
|
|
@@ -98,6 +98,7 @@ fn $random_small(bench: &mut Bencher) {
|
|
}
|
|
|
|
#[bench]
|
|
+ #[ignore]
|
|
fn $geometric(bench: &mut Bencher) {
|
|
let bases: [$t; 16] = [2, 3, 4, 5, 7, 8, 9, 15, 16, 17, 31, 32, 33, 63, 64, 65];
|
|
let base_and_numbers: Vec<($t, Vec<$t>)> = bases
|
|
diff --git a/compiler/rustc_data_structures/src/tagged_ptr/tests.rs b/compiler/rustc_data_structures/src/tagged_ptr/tests.rs
|
|
index 160af8a65d..686f4607bb 100644
|
|
--- a/compiler/rustc_data_structures/src/tagged_ptr/tests.rs
|
|
+++ b/compiler/rustc_data_structures/src/tagged_ptr/tests.rs
|
|
@@ -39,6 +39,7 @@ use crate::stable_hasher::{HashStable, StableHasher};
|
|
}
|
|
|
|
#[test]
|
|
+#[ignore]
|
|
fn smoke() {
|
|
let value = 12u32;
|
|
let reference = &value;
|
|
diff --git a/library/std/tests/thread_local/tests.rs b/library/std/tests/thread_local/tests.rs
|
|
index 9d4f52a092..d425e5f7b7 100644
|
|
--- a/library/std/tests/thread_local/tests.rs
|
|
+++ b/library/std/tests/thread_local/tests.rs
|
|
@@ -363,6 +363,7 @@ fn join_orders_after_tls_destructors() {
|
|
// ** musl: https://github.com/kraj/musl/blob/1880359b54ff7dd9f5016002bfdae4b136007dde/src/thread/pthread_key_create.c#L87
|
|
#[cfg(target_thread_local)]
|
|
#[test]
|
|
+#[ignore]
|
|
fn thread_current_in_dtor() {
|
|
use std::thread::Builder;
|
|
|
|
diff --git a/library/alloctests/tests/sort/tests.rs b/library/alloctests/tests/sort/tests.rs
|
|
index 14e6013f96..b670f27ab4 100644
|
|
--- a/library/alloctests/tests/sort/tests.rs
|
|
+++ b/library/alloctests/tests/sort/tests.rs
|
|
@@ -922,12 +922,14 @@ gen_sort_test_fns_with_default_patterns_3_ty!(
|
|
macro_rules! instantiate_sort_test_inner {
|
|
($sort_impl:ty, miri_yes, $test_fn_name:ident) => {
|
|
#[test]
|
|
+ #[ignore]
|
|
fn $test_fn_name() {
|
|
$crate::sort::tests::$test_fn_name::<$sort_impl>();
|
|
}
|
|
};
|
|
($sort_impl:ty, miri_no, $test_fn_name:ident) => {
|
|
#[test]
|
|
+ #[ignore]
|
|
#[cfg_attr(miri, ignore)]
|
|
fn $test_fn_name() {
|
|
$crate::sort::tests::$test_fn_name::<$sort_impl>();
|
|
diff --git a/compiler/rustc_data_structures/src/vec_cache/tests.rs b/compiler/rustc_data_structures/src/vec_cache/tests.rs
|
|
index a05f274136..0e69b4cb98 100644
|
|
--- a/compiler/rustc_data_structures/src/vec_cache/tests.rs
|
|
+++ b/compiler/rustc_data_structures/src/vec_cache/tests.rs
|
|
@@ -17,6 +17,7 @@ fn vec_cache_insert_and_check() {
|
|
}
|
|
|
|
#[test]
|
|
+#[ignore]
|
|
fn sparse_inserts() {
|
|
let cache: VecCache<u32, u8, u32> = VecCache::default();
|
|
let end = if cfg!(target_pointer_width = "64") && cfg!(target_os = "linux") {
|
|
diff --git a/tests/assembly-llvm/dwarf-mixed-versions-lto.rs b/tests/assembly-llvm/dwarf-mixed-versions-lto.rs
|
|
index 828328df843..30753c56c76 100644
|
|
--- a/tests/assembly-llvm/dwarf-mixed-versions-lto.rs
|
|
+++ b/tests/assembly-llvm/dwarf-mixed-versions-lto.rs
|
|
@@ -8,6 +8,7 @@
|
|
//@ compile-flags: -C lto -g -Cdwarf-version=5
|
|
//@ assembly-output: emit-asm
|
|
//@ no-prefer-dynamic
|
|
+//@ ignore-riscv64
|
|
|
|
extern crate dwarf_mixed_versions_lto_aux;
|
|
|
|
diff --git a/tests/codegen-llvm/const-vector.rs b/tests/codegen-llvm/const-vector.rs
|
|
index f4307492341..617e31140e9 100644
|
|
--- a/tests/codegen-llvm/const-vector.rs
|
|
+++ b/tests/codegen-llvm/const-vector.rs
|
|
@@ -3,6 +3,7 @@
|
|
//@ [OPT0_S390X] only-s390x
|
|
//@ [OPT0] compile-flags: -C no-prepopulate-passes -Copt-level=0
|
|
//@ [OPT0_S390X] compile-flags: -C no-prepopulate-passes -Copt-level=0 -C target-cpu=z13
|
|
+//@ ignore-riscv64
|
|
|
|
// This test checks that constants of SIMD type are passed as immediate vectors.
|
|
// We ensure that both vector representations (struct with fields and struct wrapping array) work.
|
|
diff --git a/tests/codegen-llvm/enum/enum-aggregate.rs b/tests/codegen-llvm/enum/enum-aggregate.rs
|
|
index 0161e5f3fa1..773a06fabb4 100644
|
|
--- a/tests/codegen-llvm/enum/enum-aggregate.rs
|
|
+++ b/tests/codegen-llvm/enum/enum-aggregate.rs
|
|
@@ -1,6 +1,7 @@
|
|
//@ compile-flags: -Copt-level=0 -Cno-prepopulate-passes
|
|
//@ min-llvm-version: 19
|
|
//@ only-64bit
|
|
+//@ ignore-riscv64
|
|
|
|
#![crate_type = "lib"]
|
|
|
|
diff --git a/tests/codegen-llvm/enum/enum-match.rs b/tests/codegen-llvm/enum/enum-match.rs
|
|
index 57db44ec74e..1e2507f7c90 100644
|
|
--- a/tests/codegen-llvm/enum/enum-match.rs
|
|
+++ b/tests/codegen-llvm/enum/enum-match.rs
|
|
@@ -1,5 +1,6 @@
|
|
//@ compile-flags: -Copt-level=1
|
|
//@ only-64bit
|
|
+//@ ignore-riscv64
|
|
|
|
#![crate_type = "lib"]
|
|
#![feature(core_intrinsics)]
|
|
diff --git a/tests/codegen-llvm/enum/enum-transparent-extract.rs b/tests/codegen-llvm/enum/enum-transparent-extract.rs
|
|
index c5efb8d472b..e79b8916fc1 100644
|
|
--- a/tests/codegen-llvm/enum/enum-transparent-extract.rs
|
|
+++ b/tests/codegen-llvm/enum/enum-transparent-extract.rs
|
|
@@ -1,5 +1,6 @@
|
|
//@ compile-flags: -Copt-level=0
|
|
//@ only-64bit
|
|
+//@ ignore-riscv64
|
|
|
|
#![crate_type = "lib"]
|
|
|
|
diff --git a/tests/codegen-llvm/repeat-operand-zero-len.rs b/tests/codegen-llvm/repeat-operand-zero-len.rs
|
|
index b4cec42a07c..d450fead9a4 100644
|
|
--- a/tests/codegen-llvm/repeat-operand-zero-len.rs
|
|
+++ b/tests/codegen-llvm/repeat-operand-zero-len.rs
|
|
@@ -1,4 +1,5 @@
|
|
//@ compile-flags: -Copt-level=1 -Cno-prepopulate-passes
|
|
+//@ ignore-riscv64
|
|
|
|
// This test is here to hit the `Rvalue::Repeat` case in `codegen_rvalue_operand`.
|
|
// It only applies when the resulting array is a ZST, so the test is written in
|
|
diff --git a/tests/codegen-llvm/simd/extract-insert-dyn.rs b/tests/codegen-llvm/simd/extract-insert-dyn.rs
|
|
index 729f0145314..2b1d1beb86a 100644
|
|
--- a/tests/codegen-llvm/simd/extract-insert-dyn.rs
|
|
+++ b/tests/codegen-llvm/simd/extract-insert-dyn.rs
|
|
@@ -1,4 +1,5 @@
|
|
//@compile-flags: -C opt-level=3 -C no-prepopulate-passes
|
|
+//@ ignore-riscv64
|
|
|
|
#![feature(
|
|
core_intrinsics,
|
|
diff --git a/tests/codegen-llvm/transmute-scalar.rs b/tests/codegen-llvm/transmute-scalar.rs
|
|
index ce1b0558b2e..e8fda2cd566 100644
|
|
--- a/tests/codegen-llvm/transmute-scalar.rs
|
|
+++ b/tests/codegen-llvm/transmute-scalar.rs
|
|
@@ -1,5 +1,6 @@
|
|
//@ add-core-stubs
|
|
//@ compile-flags: -C opt-level=0 -C no-prepopulate-passes
|
|
+//@ ignore-riscv64
|
|
|
|
#![crate_type = "lib"]
|
|
#![feature(no_core, repr_simd, arm_target_feature, mips_target_feature, s390x_target_feature)]
|
|
diff --git a/tests/codegen-llvm/uninhabited-transparent-return-abi.rs b/tests/codegen-llvm/uninhabited-transparent-return-abi.rs
|
|
index face1577c3f..09e0846bad0 100644
|
|
--- a/tests/codegen-llvm/uninhabited-transparent-return-abi.rs
|
|
+++ b/tests/codegen-llvm/uninhabited-transparent-return-abi.rs
|
|
@@ -1,4 +1,5 @@
|
|
//@ compile-flags: -Copt-level=3
|
|
+//@ ignore-riscv64
|
|
|
|
// See https://github.com/rust-lang/rust/issues/135802
|
|
|
|
diff --git a/tests/ui/abi/rust-cold-works-with-rustic-args.rs b/tests/ui/abi/rust-cold-works-with-rustic-args.rs
|
|
index 551485469d3..575db924968 100644
|
|
--- a/tests/ui/abi/rust-cold-works-with-rustic-args.rs
|
|
+++ b/tests/ui/abi/rust-cold-works-with-rustic-args.rs
|
|
@@ -1,6 +1,7 @@
|
|
//@ add-core-stubs
|
|
//@ build-pass
|
|
//@ compile-flags: -Clink-dead-code=true
|
|
+//@ ignore-riscv64
|
|
// We used to not handle all "rustic" ABIs in a (relatively) uniform way,
|
|
// so we failed to fix up arguments for actually passing through the ABI...
|
|
#![feature(rust_cold_cc)]
|
|
diff --git a/tests/ui/linking/executable-no-mangle-strip.rs b/tests/ui/linking/executable-no-mangle-strip.rs
|
|
index cc283dc53..73cbab9c0 100644
|
|
--- a/tests/ui/linking/executable-no-mangle-strip.rs
|
|
+++ b/tests/ui/linking/executable-no-mangle-strip.rs
|
|
@@ -1,5 +1,7 @@
|
|
//@ run-pass
|
|
//@ ignore-windows-gnu: only statics marked with used can be GC-ed on windows-gnu
|
|
+//@ ignore-powerpc: this test is not working on powerpc
|
|
+// bug report: https://github.com/rust-lang/rust/issues/144777
|
|
|
|
// Regression test for <https://github.com/rust-lang/rust/issues/139744>.
|
|
// Functions in the binary marked with no_mangle should be GC-ed if they
|
|
diff --git a/library/std_detect/src/detect/os/linux/aarch64/tests.rs b/library/std_detect/src/detect/os/linux/aarch64/tests.rs
|
|
index a3562f2fd93..d4e52ed91be 100644
|
|
--- a/library/std_detect/src/detect/os/linux/aarch64/tests.rs
|
|
+++ b/library/std_detect/src/detect/os/linux/aarch64/tests.rs
|
|
@@ -27,6 +27,7 @@ fn baseline_hwcaps() -> AtHwcap {
|
|
}
|
|
|
|
#[test]
|
|
+ #[ignore]
|
|
fn linux_empty_hwcap2_aarch64() {
|
|
let file = concat!(
|
|
env!("CARGO_MANIFEST_DIR"),
|
|
@@ -39,6 +40,7 @@ fn linux_empty_hwcap2_aarch64() {
|
|
assert_eq!(AtHwcap::from(v), baseline_hwcaps());
|
|
}
|
|
#[test]
|
|
+ #[ignore]
|
|
fn linux_no_hwcap2_aarch64() {
|
|
let file = concat!(
|
|
env!("CARGO_MANIFEST_DIR"),
|
|
@@ -51,6 +53,7 @@ fn linux_no_hwcap2_aarch64() {
|
|
assert_eq!(AtHwcap::from(v), baseline_hwcaps());
|
|
}
|
|
#[test]
|
|
+ #[ignore]
|
|
fn linux_hwcap2_aarch64() {
|
|
let file =
|
|
concat!(env!("CARGO_MANIFEST_DIR"), "/src/detect/test_data/linux-hwcap2-aarch64.auxv");
|