--retain=option--retain=optionこのオプションを使用すると、コンパイラによって実行される最適化を制限できます。以下のいずれかになります。fns使用されていない関数が削除されるのを防ぎます。inlinefns使用されていないインライン関数が削除されるのを防ぎます。noninlinefns使用されていない非インライン関数が削除されるのを防ぎます。変換など、パス削除による最適化が行われるのを防ぎます。Coverage)テストがサポートされます。calls例えばインライン展開または末尾呼び出しによって、呼び出しが削除されるのを防ぎます。calls:distinct例えばクロスジャンプ(つまり、共通末尾パスマージ)によって、呼び出しがマージされるのを防ぎます。libcalls例えばインライン展開によって、ライブラリ関数への呼び出しが削除されるのを防ぎます。dataデータが削除されるのを防ぎます。rodata読み出し専用データが削除されるのを防ぎます。rwdata読み出し-書き込みデータが削除されるのを防ぎます。data:orderデータが並べ替えられるのを防ぎます。使用すると、エラーになります。使用法このオプションは、検証、デバッグ、カバレッジテストなどの実行時に役立てることができます。それ以外のケースでは、特に必要ありません。このオプションを使用すると、コードのサイズとパフォーマンスに悪影響が生じることがあります。--retain=option。