背景:
特定のプロジェクトでは、100 を超えるファイルに約 2,000 の関数が含まれています。関数はコード メモリの 2 つのバンク (fast_mem と slow_mem) に分割されます。しかし現在、fast_mem 領域が制限されているため、新しいコードの変更に対応するにはスペースが不足しています。
コード レビューの一環として、fast_mem の一部の関数には呼び出し元がないことが判明しました。しかし、関数のリストは膨大すぎて、1 つずつ手動でチェックすることはできません。
質問:
質問ですが、プロジェクト内のすべての関数の呼び出し元を一覧表示できるツールはありますか? これで、呼び出し元を持たない fast_mem 内の関数を削除できます。
コードブラウジングには ctags と一緒に cscope を使用します。ただし、これには関数名を手動で入力する必要があります。完全なリストを取得する方法を自動化できますか?
また、呼び出し元グラフ機能を備えた Doxygen も試しました。ただし、結果はそれほど快適ではありません。