Oracle Solaris Studio 12.2: C ユーザーガイド

B.2.77 -xbuiltin[=( %all|%none)]

標準ライブラリ関数を呼び出すコードをさらに最適化する場合、-xbuiltin[=(%all| %none)] コマンドを使用します。多くの標準ライブラリ関数 (math.hstdio.h で定義された関数など) は、さまざまなプログラムで一般的に使用されます。このコマンドを使用すると、コンパイラは、パフォーマンス向上の見込める場所で組み込み関数またはインラインシステム関数を代用します。オブジェクトファイル内のコンパイラのコメントからコンパイラが実際に置換を行う関数を特定する方法については、er_src(1) のマニュアルページを参照してください。

ただし、こうした置換によって errno の値の信頼性が失われることがあります。プログラムが errno の値に依存している場合、このオプションの使用は避けてください。「2.13 errno の値の保持」も参照してください。

-xbuiltin を指定しない場合は、デフォルトは -xbuiltin=%none になります。この場合は、標準ライブラリの関数の代替やインライン化は行われません。-xbuiltin を引数なしで指定した場合は、デフォルトは -xbuiltin%all になります。この場合は、最適化に有効と判断されるときには、組込型関数の代替や標準ライブラリの関数のインライン化が実行されます。

-fast を指定してコンパイルする場合は、-xbuiltin%all になります。


注 –

-xbuiltin は、システムのヘッダーファイルで定義された大域関数だけをインライン化します。ユーザー定義の静的関数はインライン化しません。