nuttx/libs/libc/misc
anjiahao 7dfbd14eba libc: add instrument api support
Add registration function instrumentation API,
which can achieve instrumentation of entering and
exiting functions through the compiler's functionality.

We can use CONFIG_ARCH_INSTRUMENT_ALL to add instrumentation for all
source, or add '-finstrument-functions' to CFLAGS for Part of the
source.

Notice:
1. use CONFIG_ARCH_INSTRUMENT_ALL must mark _start or entry noinstrument_function,
   becuase bss not set.
2. Make sure your callbacks are not instrumented recursively.

use instrument_register to register entry function and exit function.
They will be called by the instrumented function

Signed-off-by: anjiahao <anjiahao@xiaomi.com>
2023-12-11 02:06:51 -08:00
..
CMakeLists.txt libc: add instrument api support 2023-12-11 02:06:51 -08:00
Kconfig libc: Prefer to implement memfd on top of shm 2023-06-20 20:14:20 +03:00
lib_crc8.c
lib_crc8ccitt.c
lib_crc8table.c
lib_crc16.c
lib_crc16ccitt.c
lib_crc32.c
lib_crc64.c
lib_cxx_initialize.c
lib_debug.c
lib_dumpbuffer.c
lib_dumpvbuffer.c
lib_envpath.c
lib_err.c libc: Change errno to set_errno and get_errno 2023-10-29 17:16:09 +02:00
lib_execinfo.c
lib_fchmodat.c
lib_fdcheck.c libs/libc/misc: fix alignment in fdcheck 2023-07-07 17:39:39 -03:00
lib_fdsan.c libc: Change errno to set_errno and get_errno 2023-10-29 17:16:09 +02:00
lib_fnmatch.c
lib_fstatat.c
lib_ftok.c
lib_getfullpath.c
lib_getrandom.c
lib_glob.c libc: Change errno to set_errno and get_errno 2023-10-29 17:16:09 +02:00
lib_impure.c
lib_instrument.c libc: add instrument api support 2023-12-11 02:06:51 -08:00
lib_kbddecode.c
lib_kbdencode.c
lib_mallopt.c libc/mallopt: implement dummy mallopt 2023-09-07 23:11:10 +08:00
lib_memfd.c lib_memfd: turn a runtime error into a linker error 2023-10-11 23:39:37 +08:00
lib_memoryregion.c coredump: support coredump save to block device when crash 2023-12-10 07:02:03 -08:00
lib_mkdirat.c
lib_mkfifo.c
lib_mknod.c
lib_mutex.c sched/semaphore: Move cancel point and errno handling to libc / user-space 2023-11-27 04:52:54 -08:00
lib_ncompress.c
lib_openat.c
lib_slcddecode.c lib_slcd: fix encode/decode of binary nibble to/from ascii hex 2023-12-10 21:54:01 -08:00
lib_slcdencode.c lib_slcd: fix encode/decode of binary nibble to/from ascii hex 2023-12-10 21:54:01 -08:00
lib_tea_decrypt.c
lib_tea_encrypt.c
lib_uadd32x64.c
lib_uadd64.c
lib_umask.c
lib_umul32.c
lib_umul32x64.c
lib_umul64.c
lib_usub64.c
lib_usub64x32.c
lib_utimensat.c
lib_utsname.c
lib_xorshift128.c
Make.defs libc: add instrument api support 2023-12-11 02:06:51 -08:00