モジュール間最適化の実行有無を指定します。
[指定形式]
-OPtimize[=Branch] 【V1.01】
-Optimize[={SYmbol_delete|Branch|SPeed|SAFe}] 【V1.02以降】
|
すべての最適化を実行します。-optimizeオプションの指定と同じです。
[詳細説明]
- | コンパイル,アセンブル時に-goptimizeオプションを指定したファイルに対して最適化を行います。 |
- | サブオプション指定で,各最適化の実行有無を指定します。 |
|
|
|
|
|
なし
|
すべての最適化を実行します。
|
|
|
symbol_delete
【V1.02以降】
|
一度も参照のない変数/関数を削除します。コンパイル時に必ずentryオプションを指定してください。
|
|
|
branch
|
プログラムの配置に基づいて,分岐命令サイズを最適化します。
他の最適化項目を実行すると,指定の有無に関わらず必ず実行します。
|
|
|
speed
【V1.02以降】
|
オブジェクトスピード低下を招く可能性のある最適化以外を実行します。
-optimize=symbol_delete, branch と同じです。
|
|
|
safe
【V1.02以降】
|
変数や関数の属性によって制限される可能性のある最適化以外を実行します。
-optimize=branchと同じです。
|
|
|
[使用例]
>rlink a.obj b.obj -optimize=branch
|
[備考]
- | 本オプションは,-form={object|relocate|library}オプション,または-stripオプションを指定した場合は無効となります。 |
- | 実行アドレス(entry)を指定しない場合,-optimize=symbol_delete は無効になります。 |
- | 無効なパラメータを指定した場合,警告を出力し無視します。 |