march

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

構文

Linux*:

-march=processor

macOS*:

-march=processor

Windows*:

なし

引数

processor

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

amberlake
broadwell
cannonlake
cascadelake
coffeelake
goldmont
goldmont-plus
haswell
icelake-client (または icelake)
icelake-server
ivybridge
kabylake
knl
knm
sandybridge
silvermont
skylake
skylake-avx512
tremont
whiskeylake

指定した開発コード名のインテル® プロセッサーまたはマイクロアーキテクチャーをサポートするプロセッサー向けのコードを生成します。

キーワード knlsilvermont は Linux* でのみ利用できます。

これは C++ 固有のコンテンツです。DPC++ には適用されません。
キーワード icelake は古いキーワード (非推奨) で、将来のバージョンで削除される可能性があります。

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

MOVBE 命令をサポートするプロセッサー向けのコードを生成します。インテル® SSSE3、インテル® SSE3、インテル® SSE2、インテル® SSE 命令をサポートするプロセッサー向けのコードも生成します。

core2

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

pentium4m

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

pentium-m
pentium4
pentium3
pentium

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

デフォルト

pentium4

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

説明

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

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

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

性能は、使用法、構成、およびその他の要因によって異なります。詳細については、www.Intel.com/PerformanceIndex (英語) を参照してください。

注意事項の改訂 #20201201

IDE オプション

なし

代替オプション

-march=pentium3

Linux*: -xSSE

macOS*: なし

Windows*: なし

-march=pentium4
-march=pentium-m

Linux*: -xSSE2

macOS*: なし

Windows*: なし

-march=core2

Linux*: -xSSSE3

macOS*: なし

Windows*: なし