-size


コンパイル・オプション / 最適化オプション

[指定形式]

-size

 

-

省略時解釈

サイズ重視の最適化を実施します。

[詳細説明]

-

sizeオプションを指定した場合、コードサイズ重視の最適化を実施します。

[備考]

-

sizeオプションを指定した場合、optimizeオプションの指定により、以下オプションが指定されているとみなします。ただし、以下オプションを明示的に指定した場合は指定したオプションが有効になります。

-

optimizeオプションの最適化レベルは、コンパイルオプション以外にも細かい最適化の調整を含みます。異なる最適化レベル同士で、下記の表のコンパイルオプションを合わせても出力コードは一致しません。

 

<optimize=max指定時>

 

ループ展開

インライン展開

定数除算の乗算化

命令並び換え

const修飾変数の定数伝播

最適化範囲分割

外部変数アクセス最適化

ポインタ指示先の型を考慮した最適化

size

loop=1

inline=0

noconst_div

schedule

const_copy

noscope

map

nomap

alias=ansi

入力がC/C++ソースで、かつ出力の指定がoutput=absかmotの場合はmapがデフォルトに、それ以外ではnomapがデフォルトとなります。

 

<optimize=2指定時>

 

ループ展開

インライン展開

定数除算の乗算化

命令並び換え

const修飾変数の定数伝播

最適化範囲分割

外部変数アクセス最適化

ポインタ指示先の型を考慮した最適化

size

loop=1

noinline

noconst_div

schedule

const_copy

scope

nomap

alias=noansi

 

<optimize=0またはoptimize=1指定時>

 

ループ展開

インライン展開

定数除算の乗算化

命令並び換え

const修飾変数の定数伝播

最適化範囲分割

外部変数アクセス最適化

ポインタ指示先の型を考慮した最適化

size

loop=1

noinline

noconst_div

noschedule

noconst_copy

scope

nomap

alias=noansi