メインコンテンツ

Diab コンパイラ (-compiler diab)

Wind River Diab コンパイラの指定

説明

Wind River® Diab コンパイラを使用してコードをコンパイルする場合は、[コンパイラ] (-compiler)[diab] を指定します。コンパイラを指定することによって、規格に含まれていなくても言語拡張に含まれている構文によるコンパイル エラーを回避できます。

次に、ターゲット プロセッサ タイプを指定します。[コンパイラ][diab] を選択すると、Polyspace® デスクトップ製品のユーザー インターフェイスには、Diab コンパイラで許容されるプロセッサのみが表示されます。選択するターゲット プロセッサに応じて、基本的なデータ型のサイズ、ターゲット マシンのエンディアンおよび特定のキーワード定義が決まります。

[diab] コンパイラを指定する場合は、コンパイラ ヘッダー ファイルへのパスを指定しなければなりません。Polyspace 解析への標準ライブラリ ヘッダーの指定を参照してください。

メモ

たとえば、Diab コンパイラの version 7.x を使用する場合、コンパイラに clang15.x を選択します。このバージョンの Diab コンパイラは、arm および arm64 をターゲットとしてサポートしています。

設定

ターゲットでは、基本的な型に対して以下のビット サイズが既定で使用されます。Polyspace デスクトップ製品のユーザー インターフェイスには、これらのサイズが表示されません。

ターゲットcharshortintlonglong longfloatdoublelong doubleptrchar の既定の符号エンディアンアライメントwchar_t の定義
i38681632326432649632符号付きリトル32符号なし short 型
powerpc81632326432646432符号なしビッグ64N/A
powerpc6481632646432646464符号なしビッグ64N/A
arm81632326432646432符号なしビッグ64符号なし short 型
coldfire81632326432646432符号付きビッグ64N/A
mips81632326432646432符号付きビッグ64N/A
mcore81632326432646432符号なしビッグ64N/A
rh85081632326432646432符号付きリトル32符号なし short 型
superh81632326432646432符号付きビッグ64N/A
tricore81632326432646432符号付きリトル 64符号なし short 型
68ksparcサポートなし。

加えて、wchar_tunsigned short と解釈され、size_tunsigned int と解釈されます。

コンパイラの仕様では、多くのコンパイラ固有のマクロの値も決定されます。Polyspace で特定のマクロがどのように定義されるかを確認するには、オプション -dump-preprocessing-info を使用します。

ヒント

  • Polyspace では、次の Diab コンパイラの機能はサポートされていません。

    • プリプロセッサ命令 #assert および #unassert。コードはコンパイルされますが、本ソフトウェアではこれらの命令が意味的に解釈されません。

    • 実行文字セットに含まれる同じ文字定数と同じ値を持つ、#if 命令に含まれる単一文字定数。コードはコンパイルされますが、Polyspace はその文字定数が同じ値を持つと見なしません。

    • 2 つの引数を使用した拡張 sizeof() 構文。たとえば、sizeof(char, 2) です。この機能を使用すると、Polyspace でコードがコンパイルされません。

    • ステートメントの式。たとえば、({int y; y=foo(); y;}) です。この機能を使用すると、Polyspace でコードがコンパイルされません。

    • defined プリプロセッサ演算子での正規表現の使用。たとえば、#if defined ("BSP_HW*") です。この機能を使用すると、Polyspace でコードがコンパイルされません。

  • Polyspace 解析中にエラーが発生した場合は、Diab コンパイラに関連する Polyspace コンパイル エラーの修正を参照してください。

  • IDE で Polyspace as You Code の拡張機能を使用する場合は、このオプションを解析オプション ファイルに入力します。オプション ファイルを参照してください。

コマンド ライン情報

パラメーター: -compiler diab -target
値: i386 | powerpc | arm | coldfire | mips | mcore | rh850 | superh | tricore
既定値: powerpc
例 (Bug Finder): polyspace-bug-finder -compiler diab -target tricore
例 (Code Prover): polyspace-code-prover -compiler diab -target tricore
例 (Bug Finder Server): polyspace-bug-finder-server -compiler diab -target tricore
例 (Code Prover Server): polyspace-code-prover-server -compiler diab -target tricore

バージョン履歴

R2016b で導入