optimize pragma

最適化を関数ごとに指定します。

構文

#pragma optimize( " [ optimization-list ] ", { on | off } )

解説

optimizepragma は関数の外部に示される必要があります。 pragma の後で定義されている最初の関数に対して効果があります。 on 引数と off 引数は、optimization-list で指定されたオプションのオンとオフを切り替えます。

optimization-list には、次の表に示す 0 個以上のパラメーターを指定できます。

optimize プラグマのパラメーター

パラメーター 最適化の種類
g グローバル最適化を有効にします。 削除されました。 詳細については、「/Og (グローバル最適化)」を参照してください。
s または t マシン語コードの省略シーケンスまたは高速シーケンスを指定します。
y プログラム スタックにフレーム ポインターを生成します。

これらのパラメーターは、/O コンパイラ オプションで使用されるのと同じ文字です。 たとえば、次の pragmaは /Os コンパイラ オプションと等価です。

#pragma optimize( "s", on )

optimizepragma の特殊な形式として、空の文字列 ("") でこのディレクティブを使用できます。

off パラメーターを使用すると、gsty のすべての最適化がオフになります。

on パラメーターを使用すると、/O コンパイラ オプションを使用して指定した最適化にリセットされます。

#pragma optimize( "", off )
/* unoptimized code section */
#pragma optimize( "", on )

関連項目

pragma ディレクティブと __pragma および _Pragma キーワード