Skip to content

Commit d931e97

Browse files
committed
Explicitly look for 'thumb-mode' before using __fastfail on 'arm'
1 parent 9e2228d commit d931e97

File tree

2 files changed

+2
-2
lines changed

2 files changed

+2
-2
lines changed

library/panic_abort/src/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ pub unsafe extern "C" fn __rust_start_panic(_payload: usize) -> u32 {
6363
cfg_if::cfg_if! {
6464
if #[cfg(any(target_arch = "x86", target_arch = "x86_64"))] {
6565
asm!("int $$0x29", in("ecx") FAST_FAIL_FATAL_APP_EXIT);
66-
} else if #[cfg(target_arch = "arm")] {
66+
} else if #[cfg(all(target_arch = "arm", target_feature = "thumb-mode"))] {
6767
asm!(".inst 0xDEFB", in("r0") FAST_FAIL_FATAL_APP_EXIT);
6868
} else if #[cfg(target_arch = "aarch64")] {
6969
asm!("brk 0xF003", in("x0") FAST_FAIL_FATAL_APP_EXIT);

library/std/src/sys/windows/mod.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -312,7 +312,7 @@ pub fn abort_internal() -> ! {
312312
if #[cfg(any(target_arch = "x86", target_arch = "x86_64"))] {
313313
asm!("int $$0x29", in("ecx") FAST_FAIL_FATAL_APP_EXIT);
314314
crate::intrinsics::unreachable();
315-
} else if #[cfg(target_arch = "arm")] {
315+
} else if #[cfg(all(target_arch = "arm", target_feature = "thumb-mode"))] {
316316
asm!(".inst 0xDEFB", in("r0") FAST_FAIL_FATAL_APP_EXIT);
317317
crate::intrinsics::unreachable();
318318
} else if #[cfg(target_arch = "aarch64")] {

0 commit comments

Comments
 (0)