This commit is contained in:
Andrei Astafev 2020-04-14 14:20:29 +03:00
parent 8750675e43
commit 4b640a0a34

View File

@ -1210,3 +1210,31 @@ add_pvs_check(${TRGT})
----
=== Динамический анализ программы
Динамический анализ программы позволяет ценой значительного замедления
скорости работы получить дополнительную информацию о ходе её выполнения.
Современные компиляторы делают вставку инструкций в определённые точки
программы, во время работы программы в них собирается необходимая информация,
а по её завершению предоставляется отчёт. Основная информация о работе
таких анализаторов находится https://github.com/google/sanitizers/wiki[здесь].
Для обеспечения возможности подключения динамического анализа к проекту
нужно выполнить функцию (обязательно после подключения всех библиотек):
[source,cmake]
----
# Подключение настроек для динамического анализа программы
add_sanitizers(${TRGT})
----
CMakeCache.txt:SANITIZE_ADDRESS:BOOL=OFF
CMakeCache.txt:SANITIZE_CFI:BOOL=OFF
CMakeCache.txt:SANITIZE_LEAK:BOOL=OFF
CMakeCache.txt:SANITIZE_LINK_STATIC:BOOL=OFF
CMakeCache.txt:SANITIZE_MEMORY:BOOL=OFF
CMakeCache.txt:SANITIZE_SS:BOOL=OFF
CMakeCache.txt:SANITIZE_THREAD:BOOL=OFF
CMakeCache.txt:SANITIZE_UNDEFINED:BOOL=OFF