У меня есть сторонний исходный код, который я должен исследовать. Я хочу посмотреть, в каком порядке вызываются функции, но я не хочу тратить время на ввод текста:
printf("Entered into %s", __FUNCTION__)
и
printf("Exited from %s", __FUNCTION__)
для каждой функции, и я не хочу касаться какого-либо исходного файла.
Есть ли у вас предложения? Есть ли флаг компилятора, который автоматически делает это для меня?
Пояснения к комментариям:
- Я буду перекрестно скомпилировать источник, чтобы запустить его на ARM.
- Я скомпилирую его с помощью gcc.
- Я не хочу анализировать статический код. Я хочу отслеживать время выполнения. Так что doxygen не облегчит мою жизнь.
- У меня есть источник, и я могу его скомпилировать.
- Я не хочу использовать Aspect Oriented Programming.
EDIT: Я обнаружил, что команда "frame" в приглашении gdb печатает текущий фрейм (или имя функции, которое вы могли бы сказать) в этот момент времени. Возможно, возможно (используя скрипты gdb) вызывать команду "frame" каждый раз, когда вызывается функция. Как вы думаете?