インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス

march

特定の機能をサポートするプロセッサー専用のコードを生成するようにコンパイラーに指示します。

構文

Linux* および macOS*:

-march=processor

Windows*:

なし

引数

processor

生成するコードをコンパイラーに指示します。設定可能な値は以下のとおりです。

core-avx2

インテル® アドバンスト・ベクトル・エクステンション 2 (インテル® AVX2)、インテル® AVX、インテル® SSE4.2、インテル® SSE4.1、インテル® SSSE3、インテル® SSE3、インテル® SSE2、インテル® SSE 命令をサポートするプロセッサー向けのコードを生成します。

core-avx-i

Float-16 変換命令および RDRND 命令、インテル® AVX、インテル® SSE4.2、インテル® SSE4.1、インテル® SSSE3、インテル® SSE3、インテル® SSE2、インテル® SSE 命令をサポートするプロセッサー向けのコードを生成します。

corei7-avx

インテル® アドバンスト・ベクトル・エクステンション (インテル® AVX)、インテル® SSE4.2、インテル® SSE4.1、インテル® SSSE3、インテル® SSE3、インテル® SSE2、インテル® SSE 命令をサポートするプロセッサー向けのコードを生成します。

corei7

インテル® SSE4 高効率および高速な文字列処理命令をサポートするプロセッサー向けのコードを生成します。インテル® SSE4 ベクトル化コンパイラー命令およびメディア・アクセラレーター命令、インテル® SSSE3、インテル® SSE3、インテル® SSE2、インテル® SSE 命令をサポートするプロセッサー向けのコードも生成します。

atom

-minstruction オプション (Linux* および macOS*) または /Qinstruction オプション (Windows*) の設定に応じて、MOVBE 命令をサポートするプロセッサー向けのコードを生成します。インテル® SSSE3、インテル® SSE3、インテル® SSE2、インテル® SSE 命令をサポートするプロセッサー向けのコードも生成します。

core2

インテル® Core™2 プロセッサー・ファミリー向けのコードを生成します。

pentium4m

インテル® MMX® テクノロジー対応インテル® Pentium® 4 プロセッサー向けのコードを生成します。

pentium-m
pentium4
pentium3
pentium

インテル® Pentium® プロセッサー向けのコードを生成します。pentium3 は、Linux* でのみ利用できます。

デフォルト

pentium4

アーキテクチャー・オプションが指定されない場合、コンパイラーは pentium4 でコードを生成します。

説明

このオプションは、特定の機能をサポートするプロセッサー専用のコードを生成するようにコンパイラーに指示します。

-ax オプションと -march オプションの両方を指定すると、コンパイラーはインテル固有の命令を生成しません。

-march=pentium4 を指定すると -mtune=pentium4 が設定されます。

互換性のために、以前の processor の値もサポートされますが、生成されるコードはデフォルトと同じです。

IDE オプション

なし

代替オプション

-march=pentium3

Linux*: -xSSE

macOS*: なし

Windows*: なし

-march=pentium4
-march=pentium-m

Linux*: -xSSE2

macOS*: なし

Windows*: なし

-march=core2

Linux*: -xSSSE3

macOS*: なし

Windows*: なし

最適化に関する注意事項

インテル® コンパイラーでは、インテル® マイクロプロセッサーに限定されない最適化に関して、他社製マイクロプロセッサー用に同等の最適化を行えないことがあります。これには、インテル® ストリーミング SIMD 拡張命令 2、インテル® ストリーミング SIMD 拡張命令 3、インテル® ストリーミング SIMD 拡張命令 3 補足命令などの最適化が該当します。インテルは、他社製マイクロプロセッサーに関して、いかなる最適化の利用、機能、または効果も保証いたしません。本製品のマイクロプロセッサー依存の最適化は、インテル® マイクロプロセッサーでの使用を前提としています。インテル® マイクロアーキテクチャーに限定されない最適化のなかにも、インテル® マイクロプロセッサー用のものがあります。この注意事項で言及した命令セットの詳細については、該当する製品のユーザー・リファレンス・ガイドを参照してください。

注意事項の改訂 #20110804

関連情報