__attribute__((always_inline))
関数を gcc で強制的にインライン化しますか?
71737 次
8 に答える
52
はい。
always_inline
通常、最適化が指定されていない限り、関数はインライン化されません。インラインで宣言された関数の場合、最適化レベルが指定されていなくても、この属性は関数をインライン化します。
于 2011-12-05T05:24:02.880 に答える
23
はい、そうなります。それは良い考えだという意味ではありません。
于 2011-12-05T05:26:47.017 に答える
13
gcc 最適化オプションのドキュメントによると、パラメーターを使用してインライン化を調整できます。
-finline-limit=n
By default, GCC limits the size of functions that can be inlined. This flag
allows coarse control of this limit. n is the size of functions that can be
inlined in number of pseudo instructions.
Inlining is actually controlled by a number of parameters, which may be specified
individually by using --param name=value. The -finline-limit=n option sets some
of these parameters as follows:
max-inline-insns-single is set to n/2.
max-inline-insns-auto is set to n/2.
インライン化のすべてのパラメーターについて詳しく読んで、適切に設定することをお勧めします。
于 2011-12-11T13:55:38.140 に答える
4
はい。他のオプションセットに関係なく、関数をインライン化します。ここを参照してください。
于 2011-12-05T05:23:36.910 に答える