nuttx/libs/libc
guoshichao ba63a4d234 ghs: fix the UsageFault:INVSTATE error triggered by exception_common
when we build with greenhills compiler, if the exception_common function
is put into a separate section: ".text.exception_common", then the
address of exception_common function is an even number, for example "0x16a6c",
in this case, it will trigger the UsageFaults:INVSTATE error.
The reason for this error is that in the GHS compiler, a section declared
through the ".section" directive must specify at least the "a" attribute.
Otherwise, this section will not be linked into the final file, and this
is why the address of exception_common function is invalid.
The following is the official explanation in the GHS compiler documentation:
"The reason for this error is that in the GHS compiler, a section
declared through the .section directive must specify at least the "a"
attribute. Otherwise, this section will not be linked into the final
file. The following is the official explanation in the documentation:
"Sections that are intended be part of the final linked output should
have at least the `a` attribute"
and for GHS compiler, the .text section is recommended specify the
attribute of `ax`.

Signed-off-by: guoshichao <guoshichao@xiaomi.com>
2026-01-16 09:41:13 +08:00
..
aio style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
assert libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
audio libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
builtin libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
ctype style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
dirent cmake:refine nuttx cmake build system fix CMake build missing part 2024-10-13 02:25:06 +08:00
dlfcn libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
elf libc/libelf:fix bug for libelf_symname 2025-12-20 11:17:55 +08:00
errno libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
eventfd libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
fdt libs/libc/fdt/Make.defs: cannot move due to directory not empty bugfix 2024-10-09 15:42:17 +08:00
fixedmath libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
gdbstub style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
gnssutils libc: remove reference to non-existent readme 2025-10-11 17:07:51 -04:00
grp libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
hex2bin stream_getc: use lib_stream_eof instead of EOF 2024-11-26 10:25:36 +08:00
inttypes libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
libgen libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
locale style/FAR: remove FAR qualifier 2025-11-10 10:56:29 +01:00
lzf libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
machine ghs: fix the UsageFault:INVSTATE error triggered by exception_common 2026-01-16 09:41:13 +08:00
misc libc: add creat function implementation 2026-01-16 01:38:20 +08:00
net libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
netdb libc/netdb: avoid unnecessary DNS notify if nameserver exists 2026-01-15 16:20:44 -03:00
obstack libs/libc/obstack/lib_obstack_free.c: fix object check within chunk 2025-12-13 18:13:19 -03:00
pthread pthead: change the pthread_equal implementation from macro to function 2026-01-16 01:37:38 +08:00
pwd libs/libc/unistd: add getspnam function 2024-10-16 11:15:25 +08:00
queue libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
regex style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
sched sched/clock: support using CLOCKFD to call clock_getres 2025-12-30 10:22:09 -03:00
search libc/search: add foreach api for hcreate_data 2025-12-25 09:39:03 +08:00
semaphore sched/semaphore: add support to customize semaphore max allowed value 2025-09-04 09:48:34 +08:00
signal sched/signal: Fix nxsig_ismember() return value behavior 2025-11-25 10:02:52 +08:00
spawn cmake:refine nuttx cmake build system fix CMake build missing part 2024-10-13 02:25:06 +08:00
stdio freopen: fix fdsan report error 2026-01-15 22:58:17 +08:00
stdlib libc: Add Kconfig option to disable hex-string to float parsing 2026-01-08 02:37:21 +08:00
stream libc/syslograwstream: Use memrchr to locate the newline character 2026-01-01 17:03:50 +08:00
string string:use builtin function to optimize libc function 2025-12-20 10:38:53 +08:00
symtab lib_libvsprintf.c:add option in Kconfig to control "%p*" special format specifier. 2024-10-15 15:33:13 +08:00
syslog drivers/syslog: Add RFC 5424 protocol support 2025-06-13 20:26:57 +08:00
termios libs: unify Private Types banners 2025-05-28 10:17:15 +08:00
time libc/localtime: rename offsetp to poffset 2025-12-19 13:46:21 -05:00
tls libc: Add debug assert to prevent tls allocation failure 2024-10-18 21:34:18 +08:00
uio move readv/writev to the kernel 2024-10-30 17:07:54 +08:00
unistd fpathconf: add _POSIX_PRIO_IO defintion 2026-01-15 16:10:51 -03:00
userfs style/FAR: remove FAR qualifier 2025-11-10 10:56:29 +01:00
uuid libc: Refine the arc4random_buf implementation 2024-10-26 18:04:21 -03:00
wchar style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
wctype libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
wqueue wqueue: fix the config typo error 2026-01-14 09:24:00 +08:00
zoneinfo libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
.gitignore libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
CMakeLists.txt libs/libc: migrate to SPDX identifier 2024-10-01 12:25:52 +08:00
Kconfig libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00
libc.csv libc/unistd: Replace pipe() macro with proper function implementation 2025-11-26 17:18:13 +08:00
libc.h libc/machine:Add prefixes to libc functions implemented by arch 2024-10-31 18:11:16 +08:00
Makefile libc/elf: rename modlib to libelf 2025-04-11 09:43:22 +08:00