Spec-Zone.ru › GCC 14

11.1 Введение в gcov-tool

gcov-tool — автономный инструмент для обработки профильных файлов gcda компилятора gcc.

Текущая версия gcov-tool поддерживает следующие функции:

  • слияние двух наборов профилей с весами.
  • чтение потока профилей с соответствующими именами файлов и слияние его с набором профилей с весами.
  • чтение одного набора профилей и переписывание содержимого профиля. Можно масштабировать или нормализовать значения счетчиков.

Примеры использования этого инструмента:

  • Сбор профилей для различных наборов входных данных и использование этого инструмента для их слияния. Можно указать вес, чтобы учесть относительную важность каждого входного набора.
  • Сбор профилей с целевых систем без файловой системы (самодостаточные среды). Слияние собранных профилей с соответствующими профилями, присутствующими на хостовой системе. Можно указать вес, чтобы учесть относительную важность каждого входного набора.
  • Переписывание профиля после удаления подмножества файлов gcda, сохраняя при этом согласованность сводки и гистограммы.
  • Его также можно использовать для отладки или работы с кодом libgcov, так как инструмент использует большинство кодов из библиотеки времени выполнения.

Обратите внимание, что для операции слияния профиль, сгенерированный автономно, может содержать незначительные отличия от онлайн-слияния профилей. Вот список типичных различий:

  • Различие в гистограмме: Этот автономный инструмент пересчитывает гистограмму после слияния счетчиков. Полученная гистограмма, следовательно, точная. Онлайн-слияние не имеет такой возможности — гистограмма сливается из двух гистограмм, и результат является приближением.
  • Различие в контрольной сумме сводки: Контрольная сумма сводки использует операцию CRC32. Значение зависит от порядка связного списка объектов gcov-info. Этот порядок отличается в gcov-tool от порядка в онлайн-слиянии. Ожидается, что контрольные суммы сводок будут отличаться. Это не имеет большого значения, так как компилятор не использует эту контрольную сумму нигде.
  • Различие в значениях счетчиков профиля значений: Некоторые значения счетчиков профиля значений зависят от времени выполнения, например, адреса кучи. Нормально видеть некоторое различие в таких счетчиках.

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-13.3.0/gcc/Gcov_002dtool-Intro.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API