このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
スタック使用量の計算 (-stack-usage
)
スタック使用量の推定値の計算と表示
R2022a 以降
説明
このオプションは Code Prover にのみ適用されます。
Polyspace® によるソース コードのスタック使用量の推定と表示を指定します。次のものが推定されます。
オプションの設定
以下のいずれかの方法を使用してオプションを設定します。
Polyspace ユーザー インターフェイス (デスクトップ製品のみ): プロジェクト構成で [チェック動作] ノードを選択してから、このオプションを選択します。
Polyspace Platform ユーザー インターフェイス (デスクトップ製品のみ): プロジェクト構成の [静的解析] タブで [実行時エラー] 、 [チェック動作] ノードを選択してから、このオプションを選択します。
コマンド ラインとオプション ファイル: オプション
-stack-usage
を使用します。コマンド ライン情報を参照してください。
このオプションを使用する理由
コードのスタック使用量の見積もりが必要な理由を以下に示します。
コードのスタック使用量を過少に見積もった場合、スタック オーバーフローが発生します。
スタック使用量を過剰に見積もった場合、メモリが浪費されます。
スタック オーバーフローやメモリの浪費を回避するには、オプション -stack-usage
を使用して、コードのスタック使用量の見積もりを取得します。このオプションは、使用可能なスタック サイズで最悪のケースのスタック使用量に対応できる必要がある、セーフティ クリティカルなアプリケーションにとって特に重要です。
設定
オン
Polyspace はスタック使用量メトリクスを計算し、[結果のリスト] ペインに表示します。
オフ (既定の設定)
Polyspace はスタック使用量メトリクスを計算しません。
ヒント
コードのスタック使用量のみを計算する場合は、検証を
[Source Compliance Checking]
フェーズまで実行します。検証レベル (-to)
を参照してください。Code Prover 解析では、ソース準拠チェック フェーズ後にスタック使用量メトリクスを計算します。Code Prover 検証をソース準拠チェック前に停止した場合、スタック使用量メトリクスは報告されません。
このオプションで計算されるのは、スタック使用量に関連するコード メトリクスです。他のコード メトリクスを計算するには、Bug Finder を使用してください。
コード メトリクスの計算 (-code-metrics)
を参照してください。オプション
-code-metrics
と一緒にこのオプションを使用すると、エラーが発生します。オプション-code-metrics
は、将来のリリースで Code Prover から削除される予定です。コード メトリクスを計算するには、代わりに Bug Finder を使用してください。コーディング規約およびコード メトリクスをチェックする Code Prover ワークフローの Bug Finder への移行を参照してください。ある関数が定義されていない場合、Code Prover はその関数が呼び出された場合にスタック サイズへの寄与がゼロであると見なします。オプション
-code-behavior-specifications
を使用すると、このようなスタブ関数からのスタック サイズへの寄与を明示的に指定できます。
コマンド ライン情報
パラメーター: -stack-usage |
既定値: オフ |
例 (Code Prover): polyspace-code-prover -sources |
例 (Code Prover Server): polyspace-code-prover-server -sources |
バージョン履歴
R2022a で導入