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");
