インテル® C++ コンパイラー 18.0 デベロッパー・ガイドおよびリファレンス
コンパイラーは組込み関数を認識すると、インライン展開するか、ライブラリーにある高速な実装を仮定しリンクします。デフォルトでは、組込み関数のインライン展開が有効です。
一部のケースでは、この動作を無効にすることで生成されるオブジェクトやバイナリーのサイズが大幅に改善されます。
指定するオプション:
Linux* および macOS*: | -fno-builtin |
Windows*: | /Oi- |
メリット |
実行ファイルに含まれるオブジェクトファイルとライブラリー・コードのサイズを減らすことができます。 |
デメリット |
|
注:
O1 オプションを指定すると、このオプションがデフォルトになります。
標準ライブラリーや組込み関数のインライン展開を無効にするには、-nolib-inline オプションを指定します。
コードの特性によっては、このオプションはバイナリーサイズを増加させることがあります。