コンパイラ・オプションの対応表

Linux* Windows* 説明 デフォルト
-0f -QI0f Pentium® プロセッサの 0fエラッタに対応したパッチを適用するかしないかを指定します。 オフ
-A- -QA- すべての事前定義マクロを削除します。 オフ
-Aname[(val)] -QAname[(val)]

valという値を持つアサーション名を作成します。

オフ
-ansi -Za ANSIに準拠していることをコンパイラに通知するかしないかを指定します。 オン
-ax{i|K|M|W} -Qax{i|K|M|W} プロセッサの拡張機能に対応した専用のコードを生成します。プロセッサの種類はi、K、M、Wで指定します。同時に汎用のIA-32コードも生成します。
  • i = Pentium Pro プロセッサ、Pentium II プロセッサの命令
  • K = ストリーミングSIMD拡張命令
  • M = MMX® テクノロジ
  • W = ストリーミングSIMD拡張命令2
オフ
-C -C コメントを削除しません。 オフ
-c -c オブジェクト・ファイル(.o)までコンパイルします。リンクはしません。 オフ
-Dname[=value] -Dname[=value] マクロを定義します。 オフ
-E -E 前処理を行い、その結果を標準出力に出力します。 オフ
-fp -Oy- すべての関数についてEBPベースのスタックフレームを使用します。 オフ
-g -Zi シンボリック・デバッグ情報をオブジェクト・ファイル内に生成します。 オフ
-H -QH インクルード・ファイルの順番を出力します。 オフ
-help -help ヘルプ・メッセージ一覧を出力します。 オフ
-Idirectory -Idirectory インクルード・ファイルの検索先にディレクトリを追加します。 オフ
-inline_debug_info -Qinline_debug_info コールサイトのソース・ポジションをインライン化コードに割り当てる代わりに、インライン化コードのソース・ポジションを保存します。 オフ
-ip -Qip シングル・ファイルIPOを有効にします(複数ファイル内)。 オフ
-ip_no_inlining -Qip_no_inlining IP の動作を最適化します。全体のインライン化も、部分的なインライン化も禁止されます(-ip または -ipo のいずれかが必要です)。 オフ
-ipo -Qipo マルチファイルIPOを有効にします(複数ファイル間)。 オフ
-ipo_obj -Qipo_obj IPの動作を最適化します。実際のオブジェクト・ファイルを強制的に生成します。-ipoが必要です。 オフ
-KPIC NA 位置に依存しないコードを生成します。-Kpicと同じです。

オフ

-Kpic NA 位置に依存しないコードを生成します。-KPICと同じです。

オフ

-long_double -Qlong_double 80ビット長のlong double型を有効にします。

オフ

-m NA マップファイルを生成するようにリンカに命令します。

オフ

-M -QM makefileの依存情報を生成します。

オフ

-mp -Op[-] 浮動小数点の精度を維持します。一部の最適化項目が無効になります。

オフ

-mp1 -Qprec 浮動小数点の精度を上げます(速度に与える影響は-mpより低いです)。

オフ

-nobss_init -Qnobss_init ゼロに初期化された変数をBSSに配置するのを禁止します(DATAを使用)。

オフ

-nolib_inline -Oi[-] 組込み関数のインライン展開を禁止します。

オフ

-O -O2  

オフ

-ofile -Fefile または -Fofile 出力ファイルに付ける名前をfileに指定します。

オフ

-O0 -Od 最適化を禁止します。

オフ

-O1 -O1 速度について最適化します。

オフ

-O2 -O2  

オン

-P -EP ファイルまで前処理を行います。

オフ

-pc32 -Qpc 32 内部FPU精度を24ビットの仮数に設定します。

オフ

-pc64 -Qpc 64 内部FPU精度を53ビットの仮数に設定します。

オン

-pc80 -Qpc 80 内部FPU精度を64ビットの仮数に設定します。

オフ

-prec_div -Qprec_div 浮動小数点除算の精度を上げます。速度に多少影響します。

オフ

-prof_dir directory -Qprof_dir directory 出力ファイル(*.dyn、*.dpi)のプロファイリングに使うディレクトリを指定します。

オフ

-prof_file filename -Qprof_filefilename サマリファイルのプロファイリングに使うファイル名を指定します。

オフ

-prof_gen[x] -Qprof_genx プロファイリングができるようにプログラムをインストルメントします。x修飾子を付けると、補足情報が収集されます。

オフ

-prof_use -Qprof_use 最適化中にプロファイリング情報が使えるようにします。

オフ

-Qinstall dir NA コンパイラのインストール先のルートとしてdirを設定します。

オフ

-Qlocation,str,dir -Qlocation,tool,path strで指定したツールの位置としてdirを設定します。

オフ

-Qoption,str,opts -Qoption,tool,list strで指定したツールにoptsオプションを渡します。

オフ

-qp, -p NA UNIX* gprof toolを使って関数のプロファイリングができるようにコンパイルとリンクを行います。

オフ

-rcd -Qrcd 浮動小数点から整数への高速変換機能を有効にします。

オフ

-restrict -Qrestrict ポインタの一義化ができるようにrestrictキーワードを有効にします。

オフ

-S -S .s拡張子の付いたアセンブリ・ファイルを生成し、コンパイルを停止します。

オフ

-sox[-] -Qsox 実行可能ファイル内にコンパイラ・オプションとバージョンとを保存するかどうかを指定します。 特に指定しなければ保存されます。

オン

-syntax -Zs 構文チェックのみを行います。

オフ

-tpp5 -G5 Pentium プロセッサに合わせて最適化します。

オフ

-tpp6 -G6 Pentium Pro プロセッサ、Pentium II プロセッサ、Pentium III プロセッサの各プロセッサに合わせて最適化します。

オフ

-tpp7

-G7

Pentium 4 プロセッサに合わせて最適化します。

オフ

-Uname -Uname 事前定義済みマクロを無効にします。

オフ

-unroll[n] -Qunrolln ループをアンロールする最大回数を設定します。nを省略すると、アンロールの適否をコンパイラが判断します。n=0にすると、ループをアンロールする機能が働きません。

オフ

-V -QV コンパイラのバージョン情報を表示します。

オフ

-w -w エラーを表示します。 オフ

-w2

-W4

リマーク、警告、エラーの各メッセージを表示します。

 

-wn

-Wn

診断機能の動作を調整します。エラーを表示するときは、n=0にします。警告とエラーとを表示するときは、n=1にします。リマーク、警告、エラーを表示するときは、n=2にします。

オフ

-wdL1[,L2,...] -Qwd[tag] L1からLNまで、診断機能を無効にします。 オフ
-weL1[,L2,...] -Qwe[tag] L1からLNまでの診断結果の重要度をエラーに変更します。 オフ
-wnn -Qwn[tag]

エラーの最大数nを出力します。

オフ
-wrL1[,L2,...] -Qwr[tag] L1からLNまでの診断結果の重要度をリマークに変更します。 オフ
-wwL1[,L2,...] -Qww[tag] L1からLNまでの診断結果の重要度を警告に変更します。 オフ
-X -X インクルード・ファイルの検索先から、標準のディレクトリを外します。 オフ
-x{i|K|M|W} -Qx[i|M|K|W] プロセッサの拡張機能に対応した専用のコードを生成します。 プロセッサの種類は、iKMWで指定します。同時に汎用のIA-32コードも生成します。
  • i = Pentium Pro プロセッサ、Pentium II プロセッサの命令
  • K = ストリーミングSIMD拡張命令
  • M = MMX テクノロジ
  • W = ストリーミングSIMD拡張命令2
オフ
-Xa -Ze 拡張ANSI Cダイアレクトを選択します。 オフ
-Xc -Za ANSI規格に厳密に準拠しているダイアレクトを選択します。 オフ
-Zp{1|2|4|8|16} -Zp[n]

構造体のアライメント境界をバイト単位で指定します。n = 1、2、4、8、16。特に指定しなければn = 8。このオプションのほうがコードのデフォルトのアライメントより優先されます。

オフ