<最適化リンケージエディタ(rlink)・オプション / 最適化オプション>
[指定形式]
-optimize[= <サブオプション>[,…]] 
<サブオプション> : {SYmbol_delete | SAMe_code | SHort_format | Branch | SPeed | SAFe}
 | 
 
 
optimizeです。
[詳細説明]
-  | コンパイル、アセンブル時にgoptimizeオプションを指定したファイルに対して最適化を行います。  | 
 
-  | サブオプションがない場合は、すべての最適化を実行します。 
   -optimize=symbol_delete,same_code,short_format,branch と同じ意味を持ちます。  | 
 
-  |  -optimize=speedは、オブジェクトスピード低下を招く可能性のある最適化以外を実行します。 
   -optimize=symbol_delete,short_format,branch と同じ意味を持ちます。  | 
 
-  |  -optimize=safeは、変数や関数の属性によって制限される可能性のある最適化以外を実行します。 
   -optimize=short_format,branch と同じ意味を持ちます。  | 
 
-  | その他のサブオプションが意味する最適化の内容は、次の表の通りです。  | 
 
表 2.18  | optimizeオプションのサブオプション一覧  | 
 
| 
 | 
 | 
 | 
| 
 | 
 | 
| 
 
symbol_delete 
 | 
 
1度も参照のない変数/関数を削除します。必ずコンパイル 時に#pragma entryを指定するか、rlinkでentryオプションを指定してください。 
 | 
 
○ 
 | 
 
× 
 | 
| 
 
same_code 
 | 
 
複数の同一命令列をサブルーチン化します。 
 | 
 
○ 
 | 
 
× 
 | 
| 
 
short_format 
 | 
 
ディスプレースメント/イミディエートのコードサイズを短縮可能な場合、コードサイズがより小さくなる命令に置き換えます。 
 | 
 
○ 
 | 
 
○ 
 | 
| 
 
branch 
 | 
 
プログラムの配置情報に基づいて、分岐命令サイズを最適化します。 
symbol_delete以外の他の最適化項目を実行すると、指定の有無に関わらず必ず実行します。 
 | 
 
○ 
 | 
 
○ 
 | 
 
注意 1.  | RXC: RXファミリ用C/C++プログラム、RXA: RXファミリ用アセンブリプログラム  | 
 
 
[備考]
-  | form={object|relocate|library}またはstrip指定時、本オプションは無効です。  | 
 
-  | #pragma entryまたはentryオプションで実行開始アドレスを指定していない場合、optimize=symbol_deleteは無効になります。  |