__declspec(noinline)

__declspec(noinline) を使用すると、その関数の呼び出し時に、その関数をインライン展開しないようにすることができます。

__declspec(noinline) を定数データに適用して、コンパイラによる最適化を抑制することもできます。オブジェクト内の値の配置には影響しません。この機能は、パッチ可能な定数(後で別の値に適用されるデータ)に使用することができます。定数値が必須であるようなコンテキストでこのような定数を使用すのは誤った用法です(配列の次元など)。

Note

この __declspec 属性には、同等の関数属性 __attribute__((noinline)) があります。

Show/hide

/* y の最適化を抑制 */
__declspec(noinline) const int y = 5;
/* foo() のインライン展開を抑制 */
__declspec(noinline) int foo(void);

Show/hide関連項目

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0491EJ
Non-ConfidentialID081711