Анализируйте с помощью valgrind только некоторые функции и подфункции - PullRequest
0 голосов
/ 15 сентября 2010

Я хочу отладить «большой» C-код и использовать valgrind, в частности инструмент memcheck. Вывод очень длинный из-за размера программы, и я хочу сосредоточиться только на некоторых функциях и относительных подфункциях программы. Возможно ли в valgrind анализировать только определенные функции и подфункции (до некоторого уровня глубины)?

Спасибо

1 Ответ

1 голос
/ 20 сентября 2010

Valgrind должен контролировать процесс с самого начала; невозможно подключить его к уже запущенному процессу (или, что то же самое, игнорировать процесс до некоторой точки выполнения, а затем начать эмуляцию / проверку).

Обратное неверно - вы можете «отсоединить» valgrind после некоторого количества инструкций; но я предполагаю, что это не то, что вы хотите.

Обратите внимание, что:

  • "очень длинный вывод" - плохое оправдание - ошибки Valgrind обычно истинные положительные результаты (если вы не используете оптимизированный код, в этом случае: не делайте этого), и должны действительно решаться, и
  • вы можете сосредоточиться на более серьезных проблемах (повреждение кучи), прежде чем приступить к использованию неинициализированных значений с помощью --undef-value-errors=no
...