このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
Green Hills コンパイラ (-compiler greenhills
)
Green Hills コンパイラの指定
説明
Green Hills® コンパイラを使用してコードをコンパイルする場合は、[コンパイラ] (-compiler)
に [greenhills]
を指定します。コンパイラを指定することによって、規格に含まれていなくても言語拡張に含まれている構文によるコンパイル エラーを回避できます。
次に、ターゲット プロセッサ タイプを指定します。[コンパイラ] に [greenhills]
を選択すると、Polyspace® デスクトップ製品のユーザー インターフェイスには、Green Hills コンパイラで許容されるプロセッサのみが表示されます。選択するターゲット プロセッサに応じて、基本的なデータ型のサイズ、ターゲット マシンのエンディアンおよび特定のキーワード定義が決まります。
[greenhills]
コンパイラを指定する場合は、コンパイラ ヘッダー ファイルへのパスを指定しなければなりません。Polyspace 解析への標準ライブラリ ヘッダーの指定を参照してください。
設定
ターゲットでは、基本的な型に対して以下のビット サイズが既定で使用されます。Polyspace デスクトップ製品のユーザー インターフェイスには、これらのサイズが表示されません。
ターゲット | char | short | int | long | long long | float | double | long double | ptr | char の既定の符号 | エンディアン | アライメント | size_t の定義 | wchar_t の定義 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
powerpc | 8 | 16 | 32 | 32 | 64 | 32 | 64 | 64 | 32 | 符号なし | ビッグ | 64 | 符号なし int 型 | long |
powerpc64 | 8 | 16 | 32 | 64 | 64 | 32 | 64 | 64 | 64 | 符号なし | ビッグ | 64 | 符号なし long 型 | int |
arm | 8 | 16 | 32 | 32 | 64 | 32 | 64 | 64 | 32 | 符号なし | リトル | 32 | 符号なし int 型 | 符号なし short 型 |
arm64 | 8 | 16 | 32 | 64 | 64 | 32 | 64 | 64 | 64 | 符号なし | リトル | 64 | 符号なし long 型 | int |
tricore | 8 | 16 | 32 | 32 | 64 | 32 | 64 | 64 | 32 | 符号付き | リトル | 32 | 符号なし int 型 | 符号なし int 型 |
rh850 | 8 | 16 | 32 | 32 | 64 | 32 | 64 | 64 | 32 | 符号付き | リトル | 64 | 符号なし int 型 | long |
i386 | 8 | 16 | 32 | 32 | 64 | 32 | 64 | 96 | 32 | 符号付き | リトル | 32 | 符号なし int 型 | long |
x86_64 | 8 | 16 | 32 | 64 | 64 | 32 | 64 | 128 | 64 | 符号付き | リトル | 128 | 符号なし long 型 | int |
コンパイラの仕様では、多くのコンパイラ固有のマクロの値も決定されます。Polyspace で特定のマクロがどのように定義されるかを確認するには、オプション -dump-preprocessing-info
を使用します。
マクロ定義をオーバーライドするには、オプション
[プリプロセッサ定義] (-D)
を使用します。マクロの定義を解除するには、オプション
[無効なプリプロセッサ定義] (-U)
を使用します。
ヒント
Polyspace 解析中にエラーが発生した場合は、Green Hills コンパイラに関連する Polyspace コンパイル エラーの修正を参照してください。
Polyspace は i386 ターゲットの組み込み構成をサポートしています。x86 Green Hills コンパイラがネイティブ Windows® 開発向けに構成されている場合は、Code Prover でコンパイル エラーが表示されるか、誤った解析結果が表示されることがあります。テクニカル サポートにお問い合わせください。
たとえば、Green Hills コンパイラでは
long double
のサイズを組み込みターゲットについては 12 バイトと見なしますが、ネイティブ Windows については 8 バイトと見なします。Polyspace では既定で 12 バイトと見なします。Green Hills コンパイラを使用するビルド コマンドから Polyspace プロジェクトを作成する場合、コンパイラ オプション
-os_dir
はプロジェクトに実装されません。-os_dir
オプションをエミュレートするために、オプションのパス引数をインクルード フォルダーとして Polyspace プロジェクトに明示的に追加できます。IDE で Polyspace as You Code の拡張機能を使用する場合は、このオプションを解析オプション ファイルに入力します。オプション ファイルを参照してください。
コマンド ライン情報
パラメーター: -compiler greenhills -target |
値: powerpc | powerpc64 | arm | arm64 | tricore | rh850 | arm | i386 | x86_64 |
既定値: powerpc |
例 (Bug Finder): polyspace-bug-finder -compiler greenhills -target arm |
例 (Code Prover): polyspace-code-prover -compiler greenhills -target arm |
例 (Bug Finder Server): polyspace-bug-finder-server -compiler greenhills -target arm |
例 (Code Prover Server): polyspace-code-prover-server -compiler greenhills -target arm |