TakuyaMiyasita opened a new pull request, #14803: URL: https://github.com/apache/nuttx/pull/14803
## Summary Some armv7-m-based SoCs do not work with atomic instructions, even though armv7-m supports them. (About abouve SoC, please refer https://github.com/apache/nuttx/commit/4cec713dbf86c82e1f48abb0815dfd2f98016b68#commitcomment-148460811) To avoid using atomic instructions generated by gcc, CONFIG_LIBC_ARCH_ATOMIC is newly introduced with which arch_atomic.c is linked explicitly. However, the function names need to be changed to avoid build errors, since the functions described in stdatomic.h are gcc built-in and inlined when the code is compiled. About libcxx with CONFIG_LIBC_ARCH_ATOMIC, it still does not work. It is also needed to call nx_atomic_ ver instead of __atomic ver in libcxx/include/__atomic/cxx_atomic_lmpl.h. ## Impact ARCH_CHIP_CXD32XX ## Testing - ARCH_CHIP_CXD32XX : The build is passed and ostest is passed, but the board is out-of-tree. - raspberrypi-pico:nsh : The build is passed. - spresense:smp : The build is passed. - rv-virt:libcxx : The build is passed. - esp32c3-generic:nsh : The build is passed. - esp32h2-devkit:nsh : The build is passed. - esp32s3-devkit:cxx : The build is passed. tool-chain version ``` arm-none-eabi-gcc (Arm GNU Toolchain 13.2.rel1 (Build arm-13.7)) 13.2.1 20231009 Copyright (C) 2023 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ``` ``` riscv-none-elf-gcc (xPack GNU RISC-V Embedded GCC x86_64) 13.2.0 Copyright (C) 2023 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ``` ``` xtensa-esp32s3-elf-gcc (crosstool-NG esp-12.2.0_20230208) 12.2.0 Copyright (C) 2022 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. ``` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: commits-unsubscr...@nuttx.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org