GCC and Clang support the undefined behavior sanitizer in any configuration, the only restriction is that if you want to get nice messages printed, then you need the ubsan library routines which are only present for posix architecture or when using picolibc. This patch adds three new compiler properties: * sanitizer_undefined. Enables the undefined behavior sanitizer. * sanitizer_undefined_library. Calls ubsan library routines on fault. * sanitizer_undefined_trap. Invokes __builtin_trap() on fault. Overhead for using the trapping sanitizer is fairly low and should be considered for use in CI once all of the undefined behavior faults in Zephyr are fixed. Signed-off-by: Keith Packard <keithp@keithp.com> |
||
|---|---|---|
| .. | ||
| coredump | ||
| coresight | ||
| gdbstub | ||
| symtab | ||
| thread_analyzer | ||
| asan_hacks.c | ||
| CMakeLists.txt | ||
| cpu_load.c | ||
| Kconfig | ||
| mipi_stp_decoder.c | ||
| thread_info.c | ||