このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
ローカル変数サイズのより高い推定値
関数内のすべてのローカル変数の合計サイズ
説明
このメトリクスでは、関数内にあるローカル変数の合計サイズに保守的な推定値が提供されます。メトリクスは、以下のサイズのバイト単位の合計です。
関数の戻り値のサイズ
関数パラメーターのサイズ
ローカル変数のサイズ
メモリ アライメントのために導入される追加パティング
ローカル変数による実際のスタック使用量は、このメトリクス値と異なる可能性があります。
一部の変数はスタックではなくレジスタに保存されます。
コンパイラでは、メモリの一定の最適化を有効にするために、変数存続の解析が実行されます。たとえば、コンパイラは実行で次の関数呼び出しが返る先のアドレスを保存します。このメトリクスを計算する際、Polyspace® ではこれらの最適化が考慮されません。
コンパイラでは、関数呼び出し中に追加メモリが使用されます。このメトリクスを計算する際、Polyspace ではこの隠れたメモリの用途は考慮されません。
コンパイラはいくつかの方法で一時変数を最適化します。このメトリクスでは、一時変数が除外されます。ユーザーによって明示的に宣言されている変数のみが考慮されます。
ただし、このメトリクスではローカル変数によるスタック使用量の妥当な推定値が提供されます。
基本型のサイズを判断するため、本ソフトウェアではターゲット プロセッサ タイプ (-target)
の仕様が使用されます。メトリクスでは、コード内の #pragma pack
指令も考慮されます。
例
メトリクス情報
グループ: 関数 |
頭字語: LOCAL_VARS_MAX |
HIS メトリクス:いいえ |