强制GCC压缩和优化一个功能?

时间:2015-10-11 19:53:31

标签: c++ gcc optimization inline

我正在尝试让GCC在一个特定函数中内联所有调用,并优化它,而不管全局优化设置如何。 flatten属性似乎做了我想要的,但只有当整个源文件使用相同的-O设置进行编译时。当同时指定__attribute__((flatten, optimize("O2")))时,如果源文件的其余部分使用除-O2之外的任何其他设置进行编译,则GCC显然会忽略flatten属性。

这个特定的函数是一个中断例程,我需要确保整个函数包含在一个连续的内存块中。唯一的函数调用是__builtin_ia32_rdtsc()(仅包含rdtscret)和两个std::atomic操作。

因此,正如标题所说,有没有办法强制这些调用内联和优化?

0 个答案:

没有答案