inline关键字是否会影响链接时间优化?
问题描述:
如果gcc
得到调用链接时优化(-flto
)功能,我使用下面的关键字/属性中的一种:inline关键字是否会影响链接时间优化?
__attribute__((always_inline)) void foo(int i);
inline void bar(int i);
这是否关键字/属性影响的链接时的行为优化(如果编译器不能执行inline
ing)?
链接时间优化是否偏好inline
而不是使用此关键字/属性的函数。
现在的问题是,它是否对链接器 -phase处理不是编译器有所影响。
答
基于以前的答案在这里找到:what “inline __attribute__((always_inline))” means in the function?
__attribute__((always_inline))
使编译器尝试内联,即使它在首真实禁用,
inline
告诉编译器确实努力以内联该功能。
我不认为LTO的影响与已经从属性文档中解释过的情况有很大不同。 –