新しいオプション

このトピックでは、本リリースで新しく追加されたオプションの一覧を提供します。

次のラベルが示されたコンパイラー・オプションは、特定のシステムでのみ利用可能です。

ラベル 意味
i32 IA-32 アーキテクチャー・ベースのシステムで利用可能なオプションです。
i64em インテル(R) 64 アーキテクチャー・ベースのシステムで利用可能なオプションです。
i64 IA-64 アーキテクチャー・ベースのシステムで利用可能なオプションです。

ラベルがない場合、そのオプションはサポートされているすべてのシステムで利用可能です。

ラベルに "のみ" とある場合、そのオプションはラベルで示されたシステムでのみ利用可能です。

オプションについての詳細は、「コンパイラー・オプション (アルファベット順)」を参照してください。

この表で使用されている表記については、「表記規則」を参照してください。

新しいコンパイラー・オプションは、次の表にリストされています。

Windows オプション 説明 デフォルト
/help [category] 利用可能なすべてのコンパイラー・オプションまたはコンパイラー・オプションのカテゴリーを表示します。 オフ
/Qalias-const[-] 定数へのポインター型のパラメーターが非定数へのポインター型のパラメーターとエイリアスしないと仮定するようにコンパイラーに指示します。 /Qalias-const-
/QaxS
(i32、i64em)
インテル(R) ストリーミング SIMD 拡張命令 4 (SSE4) のベクトル化コンパイラー命令およびメディア・アクセラレーター命令を使用して、これらの命令セットをサポートする将来のインテル(R) プロセッサー向けに専用のコードパスを生成して、最適化できます。 オフ
/Qdiag-type:diag-list 診断情報の表示を制御します。 オフ
/Qdiag-dump 有効なすべての診断メッセージを出力して、コンパイルを停止するようコンパイラーに指示します。 オフ
/Qdiag-enable:sv-include 診断メッセージを発行する際、スタティックの検証によりインクルード・ファイルおよびソースファイルが解析されるように指示します。 オフ
/Qdiag-file[:file] 診断解析結果をファイルへ出力します。 オフ
/Qdiag-file-append[:file] 診断解析結果をファイルに追加します。 オフ
/Qdiag-id-numbers[-] メッセージ ID を使用して、診断メッセージを表示するようコンパイラーに指示します。 オン
/Qeffc++ 特定の C++ プログラミング・ガイドラインに基づく警告を有効にします。 オフ
/Qfnalign[:n]
(i32、i64em)
関数を最適なバイト境界にアライメントするようにコンパイラーに指示します。 /Qfnalign-
/Qfp-speculation=mode 浮動小数点演算のスペキュレーションを行うモードをコンパイラーに指示します。 /Qfp-speculation=fast
/Qinline-calloc[-] malloc() および memset() への呼び出しとして calloc() へのインライン呼び出しを行うようコンパイラーに指示します。 /Qinline-calloc-
/Qinline-dllimport[-] dllimport 関数をインライン展開するかどうかを指定します。 /Qinline-dllimport
/Qinstrument-functions[-] 関数のエントリーポイントと終了ポイントをインストルメントするかどうかを指定します。 /Qinstrument-functions-
/Qipo-jobs:n プロシージャー間の最適化 (IPO) のリンクフェーズで、同時に実行するコマンドの数を指定します。 /Qipo-jobs:1
/Qkeep-static-consts[-] ソースで参照されない変数の割り当てを保持するようコンパイラーに指示します。 /Qkeep-static-consts-
/Qopenmp-lib:type リンクに使用する OpenMP* ランタイム・ライブラリーを指定します。 /Qopenmp-lib:legacy
/Qopt-class-analysis[-] C++ クラス階層情報を使用して、コンパイル時に C++ 仮想関数の呼び出しを解析し解決するようコンパイラーに指示します。 オフ
/Qopt-multi-version-aggressive[-]
(i32、i64em)
ポインター・エイリアシングとスカラー置換のチェックに強力なマルチバージョニングを使用するようにコンパイラーに指示します。 /Qopt-multi-version-aggressive-
/Qopt-ra-region-strategy[:keyword]
(i32、i64em)
レジスター・アロケーターが各ルーチンを領域に分配する方法を選択します。 /Qopt-ra-region-strategy:default
/Qopt-streaming-stores
(i32、i64em)
最適化のためのストリーミング・ストアの生成を有効にします。 /Qopt-streaming-stores:auto
/Qpar-adjust-stack:n
(i32、i64em)
ファイバーベースのメインスレッドのスタックサイズを調整するコードを生成するようにコンパイラーに指示します。 /Qpar-adjust-stack:0
/Qpar-runtime-control[-] シンボルにバウンドされるループのランタイムチェックを実行するコードを生成します。 /Qpar-runtime-control-
/Qpar-schedule-keyword[[:]n] DO ループのスケジューリング・アルゴリズムを指定します。 オフ
/Qsave-temps[-] コンパイル時に作成される中間ファイルを保存するようコンパイラーに指示します。 .obj ファイルが保存されます。
/Qtcollect インテル(R) トレースコレクター API の呼び出しを検証するインストルメンテーションを挿入します。 オフ
/Qtprofile マルチスレッドのパフォーマンスを解析するためのインストルメンテーションを生成します。 オフ
/Qunroll-aggressive[-]
(i32、i64em)
トリップカウントが一定の小さなループに対し、強力かつ完全なアンロールを行うようにコンパイラーに指示します。 /Qunroll-aggressive-
/Qvec-guard-write[-]
(i32、i64em)
ベクトル化されたループの条件チェックを実行するようにコンパイラーに指示します。 /Qvec-guard-write-
/QxO
(i32、i64em)
SSE3、SSE2、および SSE 命令を生成します。また、インテル(R) Core(TM) マイクロアーキテクチャーおよび Intel NetBurst(R) マイクロアーキテクチャーをベースとするインテル・プロセッサー向けに最適化します。 オフ
/QxS
(i32、i64em)
将来のインテル・プロセッサーでサポートされる、SSE4 のベクトル化コンパイラー命令およびメディア・アクセラレーター命令を生成します。 オフ

 

Linux および Mac OS X オプション 説明 デフォルト
-[no-]alias-const 定数へのポインター型のパラメーターが非定数へのポインター型のパラメーターとエイリアスしないと仮定するようにコンパイラーに指示します。 -no-alias-const
-axS
(i32、i64em)
インテル・ストリーミング SIMD 拡張命令 4 (SSE4) のベクトル化コンパイラー命令およびメディア・アクセラレーター命令を使用して、これらの命令セットをサポートする将来のインテル・プロセッサー向けに専用のコードパスを生成して、最適化できます。 オフ
-[no-]check-uninit 初期化されていない変数のランタイムチェックを行うかどうかを決定します。 -no-check-uninit
-cxxlib-nostd コンパイラーが標準ライブラリーにリンクしないようにします。 オフ
-diag-type diag-list 診断情報の表示を制御します。 オフ
-diag-dump 有効なすべての診断メッセージを出力して、コンパイルを停止するようコンパイラーに指示します。 オフ
-diag-enable port-win Windows に移植した場合にエラーを引き起こす可能性がある GNU 拡張機能の警告を有効にします。 オフ
-diag-enable sv-include 診断メッセージを発行する際、スタティックの検証によりインクルード・ファイルおよびソースファイルが解析されるように指示します。 オフ
-diag-file[=file] 診断解析結果をファイルへ出力します。 オフ
-diag-file-append[=file] 診断解析結果をファイルに追加します。 オフ
-[no-]diag-id-numbers メッセージ ID を使用して、診断メッセージを表示するようコンパイラーに指示します。 -diag-id-numbers
-dumpmachine ターゲットマシンとオペレーティング・システムの構成を表示します。 オフ
-f[no-]align-functions[=n]
(i32、i64em)
関数を最適なバイト境界にアライメントするようにコンパイラーに指示します。 -no-falign-functions
-fargument-noalias-global 引数がほかの引数やグローバルストレージとエイリアスしないように指示します。 オフ
-f[no-]instrument-functions 関数のエントリーポイントと終了ポイントをインストルメントするかどうかを指定します。 -fno-instrument-functions
-f[no-]jump-tables スイッチ文に対してジャンプテーブルを生成するかどうかを指定します。 -fno-jump-tables
-f[no-]keep-static-consts ソースで参照されない変数の割り当てを保持するようコンパイラーに指示します。 -fno-keep-static-consts
-fmudflap バッファー・オーバーフローおよびヒープの不正使用を防ぐために、危険なポインター演算をインストルメントします。 オフ
-fp-speculation=mode 浮動小数点演算のスペキュレーションを行うモードをコンパイラーに指示します。 -fp-speculation=fast
-[no-]func-groups
(i32、i64em; Linux のみ)
プロファイリング情報が有効な場合は、関数のグループ化を有効または無効にします。 -no-func-groups
-gcc-sys システムヘッダーのコンパイル時のみ GNU マクロを定義します。 オフ
-help [category] 利用可能なすべてのコンパイラー・オプションまたはコンパイラー・オプションのカテゴリーを表示します。 オフ
-[no-]inline-calloc malloc() および memset() への呼び出しとして calloc() へのインライン呼び出しを行うようコンパイラーに指示します。 -no-inline-calloc
-ipo-jobsn プロシージャー間の最適化 (IPO) のリンクフェーズで、同時に実行するコマンドの数を指定します。 -ipo-jobs1
-m32
(i32、i64em; Mac OS X のみ)
IA-32 アーキテクチャー向けにコードを生成するようコンパイラーに指示します。 オフ
-m64
(i32、i64em; Mac OS X のみ)
インテル 64 アーキテクチャー向けにコードを生成するようコンパイラーに指示します。 オフ
-march=core2
(i32、i64em; Linux のみ)
インテル Core 2 プロセッサー・ファミリー向けにコードを生成します。 i32: オフ
i64em: pentium4
-mtune=core2
(i32、i64; Linux のみ)
インテル Core 2 プロセッサー・ファミリー向けに最適化します。 i32: pentium4
i64: itanium2
-nostdinc++ コンパイラーが C++ 標準ディレクトリー内のヘッダーファイルではなく、ほかの標準ディレクトリーを検索するようにします。 オフ
-openmp-lib type
(Linux のみ)
リンクに使用する OpenMP* ランタイム・ライブラリーを指定します。 -openmp-lib legacy
-[no-]opt-class-analysis C++ クラス階層情報を使用して、コンパイル時に C++ 仮想関数の呼び出しを解析し解決するようコンパイラーに指示します。 オフ
-opt-malloc-options=n
(i32、i64em)
malloc() の代替アルゴリズムを指定できるようにします。 -opt-malloc-options=0
-[no-]opt-multi-version-aggressive
(i32、i64em)
ポインター・エイリアシングとスカラー置換のチェックに強力なマルチバージョニングを使用するようにコンパイラーに指示します。 -no-opt-multi-version-aggressive
-[no-]opt-ra-region-strategy[=keyword]
(i32、i64em)
レジスター・アロケーターが各ルーチンを領域に分配する方法を選択します。 -opt-ra-region-strategy:default
-opt-streaming-stores
(i32、i64em)
最適化のためのストリーミング・ストアの生成を有効にします。 -opt-streaming-stores auto
-[no-]par-runtime-control シンボルにバウンドされるループのランタイムチェックを実行するコードを生成します。 -no-par-runtime-control
-par-schedule-keyword[=n] DO ループのスケジューリング・アルゴリズムを指定します。 オフ
-pragma-optimization-level プリフィックスが指定されていない場合に、どの optimization_level プラグマの解釈を使用するかを指定します。 -pragma-optimization-level=Intel
-[no-]save-temps コンパイル時に作成される中間ファイルを保存するようコンパイラーに指示します。 -no-save-temps
-shared-intel インテルが提供するライブラリーをすべて動的にリンクします。 オフ
-shared-libgcc
(Linux のみ)
GNU の libgcc ライブラリーを動的にリンクします。 オフ
-static-intel インテルが提供するライブラリーをすべて静的にリンクします。 オフ
-static-libgcc
(Linux のみ)
GNU の libgcc ライブラリーを静的にリンクします。 オフ
-tcollect
(Linux のみ)
インテル・トレースコレクター API の呼び出しを検証するインストルメンテーションを挿入します。 オフ
-tprofile マルチスレッドのパフォーマンスを解析するためのインストルメンテーションを生成します。 オフ
-trigraphs ISO C トリグラフ (3 文字表記) をサポートします。ANSI モードおよび C99 モードでもサポートします。 オフ
-[no-]unroll-aggressive
(i32、i64em)
トリップカウントが一定の小さなループに対し、強力かつ完全なアンロールを行うようにコンパイラーに指示します。 -no-unroll-aggressive
-[no-]vec-guard-write
(i32、i64em)
ベクトル化されたループの条件チェックを実行するようにコンパイラーに指示します。 -no-vec-guard-write
-Weffc++ 特定の C++ プログラミング・ガイドラインに基づく警告を有効にします。 オフ
-W[no-]missing-declarations あらかじめ定義されていないグローバル関数およびグローバル変数の警告を有効にします。 -Wno-missing-declarations
-Wnon-virtual-dtor 非仮想クラスとして宣言されているにもかかわらず、ポリモアフィックのようにみえるクラスの警告を発行します。 オフ
-Wreorder メンバー初期化子の順序がメンバーの実行順序と異なる場合に警告を発行します。 オフ
-W[no-]strict-prototypes 引数の型を指定しない関数の宣言と定義に対する警告を有効にします。 -Wno-strict-prototypes
-Wunused-variable 引数の型を指定しない関数の宣言と定義に対する警告を有効にします。 オフ
-Wwrite-strings const char * が (非定数の) char * に変換された場合に診断メッセージを発行します。 オフ
-xO
(i32、i64em)
SSE3、SSE2、および SSE 命令を生成します。また、インテル Core マイクロアーキテクチャーおよび Intel NetBurst マイクロアーキテクチャーをベースとするインテル・プロセッサー向けに最適化します。 オフ
-xS
(i32、i64em)
将来のインテル・プロセッサーでサポートされる、SSE4 のベクトル化コンパイラー命令およびメディア・アクセラレーター命令を生成します。 オフ