walnux/arch
wangmingrong1 51a82d5289 arm/clang: Fix crash caused by clang compiling with -mfpu=fpv5-d16 and -march=armv8.1-m.main+mve.fp+fp.dp
The above combination of compilation causes the compiler to crash:
 #1 0x0000000001fbe154 llvm::sys::CleanupOnSignal(unsigned long) (clang18/bin/clang-19+0x1fbe154)
 #2 0x0000000001f21203 llvm::CrashRecoveryContext::HandleExit(int) (clang18/bin/clang-19+0x1f21203)
 #3 0x0000000001fb7b7e llvm::sys::Process::Exit(int, bool) (clang18/bin/clang-19+0x1fb7b7e)
 #4 0x0000000000b25f0d (clang18/bin/clang-19+0xb25f0d)
................................................................................
................................................................................
This problem occurs in clang18 and above, and there are compilation instructions that are incompatible with GCC.
By following the recommended v8.1m corresponding fpu modification, no crash will occur
➜  NX git:(master) ✗ clang --target=arm-none-eabi -mfpu=help
clang: note: available multilibs are:
--target=thumbv8m.main-unknown-none-eabi -mfpu=none
--target=thumbv8m.main-unknown-none-eabi -mfpu=none -fno-exceptions -fno-rtti
--target=thumbv8m.main-unknown-none-eabihf -mfpu=fpv5-sp-d16
--target=thumbv8m.main-unknown-none-eabihf -mfpu=fpv5-sp-d16 -fno-exceptions -fno-rtti
--target=thumbv8.1m.main-unknown-none-eabi -mfpu=none
--target=thumbv8.1m.main-unknown-none-eabi -mfpu=none -fno-exceptions -fno-rtti
--target=thumbv8.1m.main-unknown-none-eabihf -march=thumbv8.1m.main+fp16 -mfpu=fp-armv8-fullfp16-sp-d16
--target=thumbv8.1m.main-unknown-none-eabihf -march=thumbv8.1m.main+fp16 -mfpu=fp-armv8-fullfp16-sp-d16 -fno-exceptions -fno-rtti
--target=thumbv8.1m.main-unknown-none-eabihf -march=thumbv8.1m.main+fp16 -mfpu=fp-armv8-fullfp16-d16
--target=thumbv8.1m.main-unknown-none-eabihf -march=thumbv8.1m.main+fp16 -mfpu=fp-armv8-fullfp16-d16 -fno-exceptions -fno-rtti
--target=thumbv8.1m.main-unknown-none-eabihf -march=thumbv8.1m.main+mve -mfpu=none
--target=thumbv8.1m.main-unknown-none-eabihf -march=thumbv8.1m.main+mve -mfpu=none -fno-exceptions -fno-rtti

Signed-off-by: wangmingrong1 <wangmingrong1@xiaomi.com>
2025-07-11 20:36:35 +08:00
..
arm arm/clang: Fix crash caused by clang compiling with -mfpu=fpv5-d16 and -march=armv8.1-m.main+mve.fp+fp.dp 2025-07-11 20:36:35 +08:00
arm64 arch/arm: Add gic lock for GICD_ICFGR RMW operations. 2025-07-03 19:02:50 -03:00
avr arch/avr/avrdx/avrdx_serial: make uart_ops_s structure const 2025-07-10 12:21:40 -03:00
ceva Revert "Reduce the size of tcb by four bytes." 2025-05-27 16:30:35 +08:00
dummy arch: Add custom arch chip build support 2020-10-20 14:48:16 +08:00
hc style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
mips arch: unify Private Types banners 2025-05-28 10:17:15 +08:00
misoc Revert "Reduce the size of tcb by four bytes." 2025-05-27 16:30:35 +08:00
or1k Revert "Reduce the size of tcb by four bytes." 2025-05-27 16:30:35 +08:00
renesas Revert "Reduce the size of tcb by four bytes." 2025-05-27 16:30:35 +08:00
risc-v arch/risc-v: Bugfix I2C Slave build error for esp32[-c3|-c6|-h2] 2025-07-09 12:18:06 +08:00
sim arch: unify Private Types banners 2025-05-28 10:17:15 +08:00
sparc Revert "Reduce the size of tcb by four bytes." 2025-05-27 16:30:35 +08:00
tricore Revert "Reduce the size of tcb by four bytes." 2025-05-27 16:30:35 +08:00
x86 toolchain: Support KASAN compilation above Clang18 2025-06-26 20:31:19 +08:00
x86_64 toolchain: Support KASAN compilation above Clang18 2025-06-26 20:31:19 +08:00
xtensa arch/xtensa: Bugfix I2C Slave build error for esp32[-|-s2|-s3] 2025-07-09 12:18:06 +08:00
z16 Revert "Reduce the size of tcb by four bytes." 2025-05-27 16:30:35 +08:00
z80 Revert "Reduce the size of tcb by four bytes." 2025-05-27 16:30:35 +08:00
CMakeLists.txt arch/z80: migrate to SPDX identifier 2024-12-02 17:23:25 +08:00
Kconfig mte/kasan: Implementing KASAN memory protection for ARM64 hardware MTE 2025-06-30 18:19:38 +08:00