about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--library/panic_abort/src/lib.rs2
-rw-r--r--library/std/src/sys/windows/mod.rs2
2 files changed, 2 insertions, 2 deletions
diff --git a/library/panic_abort/src/lib.rs b/library/panic_abort/src/lib.rs
index a37bfa45173..31058a2b096 100644
--- a/library/panic_abort/src/lib.rs
+++ b/library/panic_abort/src/lib.rs
@@ -63,7 +63,7 @@ pub unsafe extern "C" fn __rust_start_panic(_payload: usize) -> u32 {
                 cfg_if::cfg_if! {
                     if #[cfg(any(target_arch = "x86", target_arch = "x86_64"))] {
                         asm!("int $$0x29", in("ecx") FAST_FAIL_FATAL_APP_EXIT);
-                    } else if #[cfg(target_arch = "arm")] {
+                    } else if #[cfg(all(target_arch = "arm", target_feature = "thumb-mode"))] {
                         asm!(".inst 0xDEFB", in("r0") FAST_FAIL_FATAL_APP_EXIT);
                     } else if #[cfg(target_arch = "aarch64")] {
                         asm!("brk 0xF003", in("x0") FAST_FAIL_FATAL_APP_EXIT);
diff --git a/library/std/src/sys/windows/mod.rs b/library/std/src/sys/windows/mod.rs
index d3b9a626a9e..8178e6806b9 100644
--- a/library/std/src/sys/windows/mod.rs
+++ b/library/std/src/sys/windows/mod.rs
@@ -312,7 +312,7 @@ pub fn abort_internal() -> ! {
             if #[cfg(any(target_arch = "x86", target_arch = "x86_64"))] {
                 asm!("int $$0x29", in("ecx") FAST_FAIL_FATAL_APP_EXIT);
                 crate::intrinsics::unreachable();
-            } else if #[cfg(target_arch = "arm")] {
+            } else if #[cfg(all(target_arch = "arm", target_feature = "thumb-mode"))] {
                 asm!(".inst 0xDEFB", in("r0") FAST_FAIL_FATAL_APP_EXIT);
                 crate::intrinsics::unreachable();
             } else if #[cfg(target_arch = "aarch64")] {