option

最適化オプションは午後のこ〜だとか、LAME とかで使われてるやつのヘルプを引いて訳しただけのが多かったり(苦笑)

最適化に関するもの

-O0
何もしない。
最適化によって不具合が発生している疑いがある時ぐらいしか使わない。
-O2
基本的にこれを使えばいいと思われる。
-O3
-O2-finline-functions を加えたもの。
-Os
サイズ指向最適化。
小さくなる最適化は多いからそれなりに速い。
-funroll-loops
ループのアンロールを行う。
サイズは増えるけど多少速くなる。
-fomit-frame-pointer
可能ならスタックフレームを生成しない。
3.2系列 の cygwin-gcc ではバグっているという噂。
-fmove-all-movables
全てのループ内不変数をループの外で計算する。
-mcpu
指定した CPU 向きに最適化される。
-mcpu=i686 のように書く。
-march
指定した CPU 専用の命令を使うようになる。
逆に言えば、それ以前の CPU で動かなくなるかもしれない。
-march=i686 のように書く。

警告に関するもの

-Wall
大半の警告が全て ON になる。
とりあえずつけとけ。
-ansi
ANSI-C としてコンパイルされる。
-pedantic
strict ANSI-C で要求される全ての警告を出す。

その他

-pipe
各ステージ巻の受け渡しを中間ファイルではなくパイプで行う。
多分コンパイル速度が上がると思われる。

Return index page