about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJan Sommer <jan.sommer@dlr.de>2024-11-23 23:59:03 +0100
committerJan Sommer <jan.sommer@dlr.de>2024-11-30 21:16:05 +0100
commit3f94047d8cd96846465048b5570d41cd1f90bd6f (patch)
tree3b3f26659ae412e1f53fa65d5924d25f1ab078e0
parente93e096cc88728337fb41ff74431ebe71a1b4663 (diff)
downloadrust-3f94047d8cd96846465048b5570d41cd1f90bd6f.tar.gz
rust-3f94047d8cd96846465048b5570d41cd1f90bd6f.zip
Switch rtems target to panic unwind
-rw-r--r--compiler/rustc_target/src/spec/targets/armv7_rtems_eabihf.rs2
-rw-r--r--library/panic_unwind/src/lib.rs2
-rw-r--r--library/std/src/sys/personality/mod.rs2
-rw-r--r--library/unwind/src/lib.rs1
4 files changed, 3 insertions, 4 deletions
diff --git a/compiler/rustc_target/src/spec/targets/armv7_rtems_eabihf.rs b/compiler/rustc_target/src/spec/targets/armv7_rtems_eabihf.rs
index 4238c4c1c15..865549ab486 100644
--- a/compiler/rustc_target/src/spec/targets/armv7_rtems_eabihf.rs
+++ b/compiler/rustc_target/src/spec/targets/armv7_rtems_eabihf.rs
@@ -20,7 +20,7 @@ pub(crate) fn target() -> Target {
             linker_flavor: LinkerFlavor::Gnu(Cc::Yes, Lld::No),
             linker: None,
             relocation_model: RelocModel::Static,
-            panic_strategy: PanicStrategy::Abort,
+            panic_strategy: PanicStrategy::Unwind,
             features: "+thumb2,+neon,+vfp3".into(),
             max_atomic_width: Some(64),
             emit_debug_gdb_scripts: false,
diff --git a/library/panic_unwind/src/lib.rs b/library/panic_unwind/src/lib.rs
index 1981675f409..8c28bb5c5b0 100644
--- a/library/panic_unwind/src/lib.rs
+++ b/library/panic_unwind/src/lib.rs
@@ -46,7 +46,7 @@ cfg_if::cfg_if! {
         target_os = "psp",
         target_os = "xous",
         target_os = "solid_asp3",
-        all(target_family = "unix", not(any(target_os = "espidf", target_os = "rtems", target_os = "nuttx"))),
+        all(target_family = "unix", not(any(target_os = "espidf", target_os = "nuttx"))),
         all(target_vendor = "fortanix", target_env = "sgx"),
         target_family = "wasm",
     ))] {
diff --git a/library/std/src/sys/personality/mod.rs b/library/std/src/sys/personality/mod.rs
index 9754e840d15..2e1d2e53a29 100644
--- a/library/std/src/sys/personality/mod.rs
+++ b/library/std/src/sys/personality/mod.rs
@@ -31,7 +31,7 @@ cfg_if::cfg_if! {
         target_os = "psp",
         target_os = "xous",
         target_os = "solid_asp3",
-        all(target_family = "unix", not(target_os = "espidf"), not(target_os = "l4re"), not(target_os = "rtems"), not(target_os = "nuttx")),
+        all(target_family = "unix", not(target_os = "espidf"), not(target_os = "l4re"), not(target_os = "nuttx")),
         all(target_vendor = "fortanix", target_env = "sgx"),
     ))] {
         mod gcc;
diff --git a/library/unwind/src/lib.rs b/library/unwind/src/lib.rs
index 79baa5b0b83..883de3174c8 100644
--- a/library/unwind/src/lib.rs
+++ b/library/unwind/src/lib.rs
@@ -20,7 +20,6 @@ cfg_if::cfg_if! {
         target_os = "l4re",
         target_os = "none",
         target_os = "espidf",
-        target_os = "rtems",
         target_os = "nuttx",
     ))] {
         // These "unix" family members do not have unwinder.