diff options
| -rw-r--r-- | library/panic_abort/src/lib.rs | 2 | ||||
| -rw-r--r-- | library/std/src/sys/windows/mod.rs | 2 |
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")] { |
