新しいオプション

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

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

ラベル

意味

i32

IA-32 アーキテクチャー・ベースのシステムで利用可能なオプションです。

i64em

インテル(R) 64 アーキテクチャー・ベースのシステムで利用可能なオプションです。

i64

IA-64 アーキテクチャー・ベースのシステムで利用可能なオプションです。

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

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

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

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

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

Windows オプション

説明

デフォルト

/arch:IA32
(i32 のみ)

インテル(R) Pentium(R) プロセッサーまたは以降のプロセッサー上で実行するコードを生成します。

オフ

/arch:SSE3 (i32、i64em)

インテル(R) ストリーミング SIMD 拡張命令 3 (インテル(R) SSE3) 向けに最適化します。

オフ

/arch:SSSE3 (i32、i64em)

インテル(R) ストリーミング SIMD 拡張命令 3 補足命令 (インテル(R) SSSE3) 向けに最適化します。

オフ

/arch:SSE4.1 (i32、i64em)

インテル(R) ストリーミング SIMD 拡張命令 4 ベクトル化コンパイラーとメディア・アクセラレーター向けに最適化します。

オフ

/bigobj

1 つのオブジェクト・ファイルに含められるセクション数を増やします。

オフ

/homeparams

レジスターで渡されたパラメーターをスタックに書き込むようにコンパイラーに指示します。

オフ

/MP

多くのソースファイルを同時にコンパイルできるよう複数のプロセスを作成します。

オフ

/QaxSSE2
(i32、i64em)

インテル(R) プロセッサー向けにインテル(R) SSE2 および SSE 命令を生成します。また、インテル(R) Pentium(R) 4 プロセッサー、インテル(R) Pentium(R) M プロセッサー、およびインテル(R) SSE2 をサポートするインテル(R) Xeon(R) プロセッサー向けに最適化します。

オフ

/QaxSSE3
(i32、i64em)

インテル(R) SSE3、SSE2、および SSE 命令を生成します。また、インテル(R) Core(TM) マイクロアーキテクチャーおよび Intel NetBurst(R) マイクロアーキテクチャーをベースとするインテル(R) プロセッサー向けに最適化します。

オフ

/QaxSSSE3
(i32、i64em)

インテル(R) プロセッサー向けにインテル(R) SSSE3、SSE3、SSE2、および SSE 命令を生成します。また、インテル(R) Core(TM)2 Duo プロセッサー・ファミリー向けに最適化します。

オフ

/QaxSSE4.1
(i32、i64em)

SSE4 ベクトル化コンパイラー命令およびメディア・アクセラレーター命令をインテル(R) プロセッサー向けに生成することができます。 インテル(R) SSSE3、SSE3、SSE2、SSE 命令を生成します。また、インテル(R) 45nm Hi-k 次世代 インテル(R) Core(TM) マイクロアーキテクチャー・プロセッサー向けに最適化します。

オフ

/QaxSSE4.2
(i32、i64em)

インテル(R) Core(TM) i7 プロセッサーでサポートされているインテル(R) SSE4 高効率および高速な文字列処理命令を生成します。インテル(R) SSE4 ベクトル化コンパイラー命令およびメディア・アクセラレーター命令、インテル(R) SSSE3、SSE3、SSE2、SSE 命令を生成します。また、インテル(R) Core(TM) プロセッサー・ファミリー向けに最適化します。

オフ

/Qdiag-error-limit:n

コンパイルを中断するまで許容されるエラーの最大数を指定します。

n=30

/Qdiag-once:id[,id,...]

1 つまたは複数の診断メッセージを 1 度だけ発行するようコンパイラーに指示します。

オフ

/Qfast-transcendentals

超越関数への呼び出しを、より高速で精度が少し低いものに置換します。

オフ

/Qfma
(i64 のみ)

浮動小数点乗算と加算/減算の組み合わせを有効にします。

オン

/Qfp-relaxed
(i64 のみ)

divide や sqrt のような算術関数に、より高速で少し精度が低いコードシーケンスを使用します。

オフ

/Qfreestanding

コンパイルがフリースタンディング環境で行われるようにします。

オフ

/Qhelp-pragma
(i32、i64em)

サポートするすべてのプラグマを表示します。

オフ

/Qinstruction:[no]movbe
(i32、i64em)

MOVBE 命令をインテル(R) プロセッサー用に生成するかどうかを指定します。

オン

/Qopenmp-link:library

OpenMP* スタティックまたはダイナミック・ランタイム・ライブラリーへのリンクを制御します。

/Qopenmp-link:dynamic

/Qopenmp-task:model

OpenMP タスキングモデルを選択できます。

/Qopenmp-task:omp

/Qopenmp-threadprivate:type

OpenMP threadprivate の実装を選択できます。

/Qopenmp-threadprivate:legacy

/Qopt-block-factor:n

ループ・ブロッキング係数を指定できます。

オフ

/Qopt-jump-tables:keyword

switch 文におけるジャンプテーブルの生成を有効/無効にします。

/Qopt-jump-tables:default

/Qopt-loadpair
(i64 のみ)

ロードペア最適化を有効にします。

/Qopt-loadpair-

/Qopt-mod-versioning
(i64 のみ)

特定のオペランド型のモジュロ演算のバージョニングを有効にします。

/Qopt-mod-versioning-

/Qopt-prefetch-initial-values
(i64 のみ)

ループに入る前に発行されるプリフェッチを有効/無効にします。

/Qopt-prefetch-initial-values

/Qopt-prefetch-issue-excl-hint
(i64 のみ)

排他的ヒントを伴うプリフェッチをコンパイラーが発行するかどうか指定します。

/Qopt-prefetch-issue-excl-hint-

/Qopt-prefetch-next-iteration
(i64 のみ)

次のループ反復で行われるメモリーアクセスに対するプリフェッチを有効/無効にします。

/Qopt-prefetch-next-iteration

/Qopt-subscript-in-range
(i32、i64em)

ループの添字式の中間演算でオーバーフローがないことを、コンパイラーが仮定するかどうか指定します。

/Qopt-subscript-in-range-

/Qprof-data-order

プロファイル情報が有効な場合、データの順序設定を有効または無効にします。

/Qprof-data-order

/Qprof-func-order

プロファイル情報が有効な場合、関数の順序配置を有効または無効にします。

/Qprof-func-order

/Qprof-hotness-threshold

関数のグループ化と関数の順序配置のホット性しきい値を設定します。

オフ

/Qprof-src-dir

プロファイル・データ・レコードを検索する際、コンパイル対象のソースファイルのディレクトリー情報を使用するかどうかを指定します。

/Qprof-src-dir

/Qprof-src-root

プロファイル・データを検索する際、相対ディレクトリー・パスを使用できます。ベースとなるディレクトリーを指定します。

オフ

/Qprof-src-root-cwd

プロファイル・データを検索する際、相対ディレクトリー・パスを使用できます。現在の作業ディレクトリーがベースとなります。

オフ

/Qtcollect-filter

指定された関数のインストルメンテーションを有効/無効にします。

オフ

/Quse-msasm-symbols
(i32、i64em)

シンボル名を生成する際、ドル記号 ( $ ) を使用するようにコンパイラーに指示します。

オフ

/Qvc9
(i32、i64em)

Microsoft Visual Studio 2008 との互換性を有効にします。

それぞれ異なります。

/Qvec
(i32、i64em)

ベクトル化およびベクトル化に有効な変換を有効/無効にします。

/Qvec

/QxHost
(i32、i64em)

コンパイルするホストマシンで利用可能な最上位の命令セットとプロセッサー向けのコードを生成します。

オフ

/QxSSE2
(i32、i64em)

インテル(R) プロセッサー向けにインテル(R) SSE2 および SSE 命令を生成します。また、インテル(R) Pentium(R) 4 プロセッサー、インテル(R) Pentium(R) M プロセッサー、およびインテル(R) SSE2 をサポートするインテル(R) Xeon(R) プロセッサー向けに最適化します。

オン

/QxSSE3
(i32、i64em)

インテル(R) SSE3、SSE2、および SSE 命令を生成します。また、インテル(R) Core(TM) マイクロアーキテクチャーおよび Intel NetBurst(R) マイクロアーキテクチャーをベースとするインテル(R) プロセッサー向けに最適化します。

オフ

/QxSSE3_ATOM
(i32、i64em)

インテル(R) プロセッサー向けに MOVBE 命令を生成します。また、インテル(R) Atom(TM) プロセッサーとインテル(R) Centrino(R) Atom(TM) プロセッサー・テクノロジー向けに最適化します。

オフ

/QxSSSE3
(i32、i64em)

インテル(R) プロセッサー向けにインテル(R) SSSE3、SSE3、SSE2、および SSE 命令を生成します。また、インテル(R) Core(TM)2 Duo プロセッサー・ファミリー向けに最適化します。

オフ

/QxSSE4.1
(i32、i64em)

SSE4 ベクトル化コンパイラー命令およびメディア・アクセラレーター命令をインテル(R) プロセッサー向けに生成することができます。 インテル(R) SSSE3、SSE3、SSE2、SSE 命令を生成します。また、インテル(R) 45nm Hi-k 次世代 インテル(R) Core(TM) マイクロアーキテクチャー・プロセッサー向けに最適化します。

オフ

/QxSSE4.2
(i32、i64em)

インテル(R) Core(TM) i7 プロセッサーでサポートされているインテル(R) SSE4 高効率および高速な文字列処理命令を生成します。インテル(R) SSE4 ベクトル化コンパイラー命令およびメディア・アクセラレーター命令、インテル(R) SSSE3、SSE3、SSE2、SSE 命令を生成します。また、インテル(R) Core(TM) プロセッサー・ファミリー向けに最適化します。

オフ

/Werror-all

すべての警告とリマークをエラーに変更します。

オフ

Linux および Mac OS X オプション

説明

デフォルト

-axSSE2
(i32、i64em)

インテル(R) プロセッサー向けにインテル(R) SSE2 および SSE 命令を生成します。また、インテル(R) Pentium(R) 4 プロセッサー、インテル(R) Pentium(R) M プロセッサー、およびインテル(R) SSE2 をサポートするインテル(R) Xeon(R) プロセッサー向けに最適化します。

オフ

-axSSE3
(i32、i64em)

インテル(R) SSE3、SSE2、および SSE 命令を生成します。また、インテル(R) Core(TM) マイクロアーキテクチャーおよび Intel NetBurst(R) マイクロアーキテクチャーをベースとするインテル(R) プロセッサー向けに最適化します。

オフ

-axSSSE3
(i32、i64em)

インテル(R) プロセッサー向けにインテル(R) SSSE3、SSE3、SSE2、および SSE 命令を生成します。また、インテル(R) Core(TM)2 Duo プロセッサー・ファミリー向けに最適化します。

オフ

-axSSE4.1
(i32、i64em)

SSE4 ベクトル化コンパイラー命令およびメディア・アクセラレーター命令をインテル(R) プロセッサー向けに生成することができます。 インテル(R) SSSE3、SSE3、SSE2、SSE 命令を生成します。また、インテル(R) 45nm Hi-k 次世代 インテル(R) Core(TM) マイクロアーキテクチャー・プロセッサー向けに最適化します。

オフ

-axSSE4.2
(i32、i64em)

インテル(R) Core(TM) i7 プロセッサーでサポートされているインテル(R) SSE4 高効率および高速な文字列処理命令を生成します。インテル(R) SSE4 ベクトル化コンパイラー命令およびメディア・アクセラレーター命令、インテル(R) SSSE3、SSE3、SSE2、SSE 命令を生成します。また、インテル(R) Core(TM) プロセッサー・ファミリー向けに最適化します。

オフ

-diag-error-limit n

コンパイルを中断するまで許容されるエラーの最大数を指定します。

n=30

-diag-once id[,id,...]

1 つまたは複数の診断メッセージを 1 度だけ発行するようコンパイラーに指示します。

オフ

-falign-stack
(i32 のみ)

ルーチンへの入口で使用するスタック・アライメントをコンパイラーに指示します。

-falign-stack=default

-fasm-blocks
(i32、i64em、Mac OS X のみ)

C または C++ ファイル内で、ブロックおよび全関数のアセンブリー・コードの使用を有効にします。

オフ

-fast-transcendentals

超越関数への呼び出しを、より高速で精度が少し低いものに置換します。

オフ

-ffreestanding

コンパイルがフリースタンディング環境で行われるようにします。

オフ

-fma
(i64 のみ。Linux のみ)

浮動小数点乗算と加算/減算の組み合わせを有効にします。

オン

fnon-call-exceptions
(i32、i64em)

トラッピング命令が C++ 例外をスローすることができるコードを生成します。

-fno-non-call-exceptions

-fp-relaxed
(i64 のみ。Linux のみ)

divide や sqrt のような算術関数に、より高速で少し精度が低いコードシーケンスを使用します。

オフ

-fpie
(Linux のみ)

実行ファイルへリンクする、位置に依存しないコードを生成するようにコンパイラーに指示します。

オフ

-fstack-protector
(i32、i64em)

バッファー・オーバーランを検出するコードを生成するかどうかを指定します。 -fstack-security-check と同じです。

-fno-stack-protector

-help-pragma
(i32、i64em)

サポートするすべてのプラグマを表示します。

オフ

-m32-m64
(i32、i64em)

特定のアーキテクチャー向けにコードを生成するようコンパイラーに指示します。

オフ

-mia32
(i32 のみ)

インテル(R) Pentium(R) プロセッサーまたは以降のプロセッサー上で実行するコードを生成します。

オフ

-minstruction=[no]movbe
(i32、i64em)

MOVBE 命令をインテル(R) プロセッサー用に生成するかどうかを指定します。

オン

-mssse3
(i32、i64em)

インテル(R) ストリーミング SIMD 拡張命令 3 補足命令 (インテル(R) SSSE3) 向けにコードを生成します。

Linux システム: オフ
インテル(R) 64 アーキテクチャー・ベースの Mac OS X システム: オン

-msse4.1
(i32、i64em)

インテル(R) ストリーミング SIMD 拡張命令 4 ベクトル化コンパイラーとメディア・アクセラレーター向けににコードを生成します。

オフ

-multiple-processes

多くのソースファイルを同時にコンパイルできるよう複数のプロセスを作成します。

オフ

-openmp-link library

OpenMP スタティックまたはダイナミック・ランタイム・ライブラリーへのリンクを制御します。

-openmp-link dynamic

-openmp-task model

OpenMP タスキングモデルを選択できます。

-openmp-task omp

-openmp-threadprivate=type
(Linux のみ)

OpenMP threadprivate の実装を選択できます。

-openmp-threadprivate=legacy

-opt-block-factor=n

ループ・ブロッキング係数を指定できます。

オフ

-opt-calloc
(Linux のみ)

calloc() への呼び出しの代わりに _intel_fast_calloc() への呼び出しを行うようコンパイラーに指示します。

オフ

-opt-jump-tables=keyword

switch 文におけるジャンプテーブルの生成を有効/無効にします。

-opt-jump-tables=default

-opt-loadpair
(i64 のみ。Linux のみ)

ロードペア最適化を有効にします。

-no-opt-loadpair

-opt-mod-versioning
(i64 のみ。Linux のみ)

特定のオペランド型のモジュロ演算のバージョニングを有効にします。

-no-opt-mod-versioning

-opt-prefetch-initial-values
(i64 のみ。Linux のみ)

ループに入る前に発行されるプリフェッチを有効/無効にします。

-opt-prefetch-initial-values

-opt-prefetch-issue-excl-hint
(i64 のみ)

排他的ヒントを伴うプリフェッチをコンパイラーが発行するかどうか指定します。

-no-opt-prefetch-issue-excl-hint

-opt-prefetch-next-iteration
(i64 のみ。Linux のみ)

次のループ反復で行われるメモリーアクセスに対するプリフェッチを有効/無効にします。

-opt-prefetch-next-iteration

-opt-subscript-in-range
(i32、i64em)

ループの添字式の中間演算でオーバーフローがないことを、コンパイラーが仮定するかどうか指定します。

-no-opt-subscript-in-range

-pie
(Linux のみ)

サポートするプロセッサー上で位置に依存しない実行ファイルを生成します。

オフ

-prof-data-order
(Linux のみ)

プロファイル情報が有効な場合、データの順序設定を有効または無効にします。

-no-prof-data-order

-prof-func-groups
(i32、i64em、Linux のみ)

プロファイル情報が有効な場合、関数のグループ化を有効または無効にします。

-no-prof-func-groups

-prof-func-order
(Linux のみ)

プロファイル情報が有効な場合、関数の順序配置を有効または無効にします。

-no-prof-func-order

-prof-hotness-threshold
(Linux のみ)

関数のグループ化と関数の順序配置のホット性しきい値を設定します。

オフ

-prof-src-root

プロファイル・データを検索する際、相対ディレクトリー・パスを使用できます。ベースとなるディレクトリーを指定します。

オフ

-prof-src-root-cwd

プロファイル・データを検索する際、相対ディレクトリー・パスを使用できます。現在の作業ディレクトリーがベースとなります。

オフ

-staticlib
(i32、i64em。Mac OS X のみ)

libtool コマンドを起動してスタティック・ライブラリーを作成します。

オフ

-tcollect-filter
(Linux のみ)

指定された関数のインストルメンテーションを有効/無効にします。

オフ

-vec
(i32、i64em)

ベクトル化およびベクトル化に有効な変換を有効/無効にします。

-vec

-Werror-all

すべての警告とリマークをエラーに変更します。

オフ

-Wformat-security

format 関数の使用が問題を引き起こす可能性がある場合、警告を発行します。

-Wno-format-security

-xHost
(i32、i64em)

コンパイルするホストマシンで利用可能な最上位の命令セットとプロセッサー向けの命令を生成します。

オフ

-xSSE2
(i32、i64em)

インテル(R) プロセッサー向けにインテル(R) SSE2 および SSE 命令を生成します。また、インテル(R) Pentium(R) 4 プロセッサー、インテル(R) Pentium(R) M プロセッサー、およびインテル(R) SSE2 をサポートするインテル(R) Xeon(R) プロセッサー向けに最適化します。

Linux システム: オン
Mac OS X システム: オフ

-xSSE3
(i32、i64em)

インテル(R) SSE3、SSE2、および SSE 命令を生成します。また、インテル(R) Core(TM) マイクロアーキテクチャーおよび Intel NetBurst(R) マイクロアーキテクチャーをベースとするインテル(R) プロセッサー向けに最適化します。

Linux システム:オフ
IA-32 アーキテクチャー・ベースの Mac OS X システム: オン

-xSSE3_ATOM
(i32、i64em)

インテル(R) プロセッサー向けに MOVBE 命令を生成します。また、インテル(R) Atom(TM) プロセッサーとインテル(R) Centrino(R) Atom(TM) プロセッサー・テクノロジー向けに最適化します。

オフ

-xSSSE3
(i32、i64em)

インテル(R) プロセッサー向けにインテル(R) SSSE3、SSE3、SSE2、および SSE 命令を生成します。また、インテル(R) Core(TM)2 Duo プロセッサー・ファミリー向けに最適化します。

Linux システム: オフ
インテル(R) 64 アーキテクチャー・ベースの Mac OS X システム: オン

-xSSE4.1
(i32、i64em)

SSE4 ベクトル化コンパイラー命令およびメディア・アクセラレーター命令をインテル(R) プロセッサー向けに生成することができます。 インテル(R) SSSE3、SSE3、SSE2、SSE 命令を生成します。また、インテル(R) 45nm Hi-k 次世代 インテル(R) Core(TM) マイクロアーキテクチャー・プロセッサー向けに最適化します。

オフ

-xSSE4.2
(i32、i64em)

インテル(R) Core(TM) i7 プロセッサーでサポートされているインテル(R) SSE4 高効率および高速な文字列処理命令を生成します。インテル(R) SSE4 ベクトル化コンパイラー命令およびメディア・アクセラレーター命令、インテル(R) SSSE3、SSE3、SSE2、SSE 命令を生成します。また、インテル(R) Core(TM) プロセッサー・ファミリー向けに最適化します。

オフ