mirror of
https://github.com/apache/nuttx.git
synced 2026-05-30 13:27:01 +08:00
arch_atomic : Introduce CONFIG_LIBC_ARCH_ATOMIC
Some armv7-m-based SoCs do not work with atomic instructions, even though armv7-m supports them. 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. Signed-off-by: Takuya Miyasita <Takuya.Miyashita@sony.com>
This commit is contained in:
committed by
Xiang Xiao
parent
07c986905d
commit
2275138dcf
@@ -9,6 +9,14 @@
|
||||
|
||||
menu "Architecture-Specific Support"
|
||||
|
||||
config LIBC_ARCH_ATOMIC
|
||||
bool "arch_atomic"
|
||||
default n
|
||||
---help---
|
||||
If this configuration is selected and <include/nuttx/atomic.h> is
|
||||
included, arch_atomic.c will be linked instead of built-in
|
||||
atomic function.
|
||||
|
||||
config ARCH_LOWPUTC
|
||||
bool "Low-level console output"
|
||||
default y
|
||||
|
||||
+381
-308
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user