カスタマーサポートセンター

FAQ~よくある質問~ | FAQマスタ詳細表示

FAQ詳細情報

ID 10811027
FAQカテゴリ(大) リンカ
最終更新日 2017-01-30

質問内容

スタック使用量解析で、静的関数を関数ポインタから間接的に呼び出している場合はどのようにすれば良いでしょうか?

回答内容

関数を間接的に呼び出している場合、Cソースコード内で#pragma calllsのパラメータで呼び出す関数を指定するか、スタック使用解析制御ファイルのpossible callsディレクティブで指定する必要があります。呼び出す関数が静的関数の場合は、#pragma callsでは指定できませんので、スタック使用解析制御ファイルのpossible callsディレクティブを使用し、called-funcは以下のように指定してください。

func[file.o]

 

■スタック使用解析制御ファイルの記述例
possible calls main : funcA[sub.o], funcB[sub.o] 

 

■同様にcalling func も静的関数とすることができます。
possible calls func[sub.o] : funcA[subA.o], funcB[subB.o];

 

■スタック容量解析機能については、スタック使用量解析については、プロジェクトメニュー > C/C++開発ガイド > パート1. ビルドツールの使用 > ILINKを使用したリンク > スタック使用量解析

 をご参照いただきますようお願いいたします。

 

 

参考資料URL