optimize
関数ごとに実行される最適化を指定します。
#pragma optimize( "[optimization-list]", {on | off} )
解説
optimize プラグマは関数の外に表示する必要があり、プラグマが発生した後に定義される最初の関数で適用されます。on 引数と off 引数は optimization-list で指定するオプションのオンとオフを切り替えます。
optimization-list は、次の表に示す 0 またはそれ以上のパラメーターにすることができます。
optimize プラグマのパラメーター
パラメーター |
最適化の型 |
---|---|
g |
グローバル最適化を有効にします。 |
s または t |
マシン語コードの省略シーケンスまたは高速シーケンスを指定します。 |
y |
プログラム スタックにフレーム ポインターを生成します。 |
これらは /O コンパイラ オプションで使用される同じ文字です。たとえば、次のプラグマは /Os コンパイラ オプションと等価です。
#pragma optimize( "ts", on )
空の文字列 ("") での optimize プラグマの使用は、ディレクティブの特殊な形式です。
off パラメーターを使用すると、このトピックの前の表で示した最適化がオフになります。
on パラメーターを使用すると、最適化が /O コンパイラ オプションで指定した最適化にリセットされます。
#pragma optimize( "", off )
.
.
.
#pragma optimize( "", on )