文档目录
编译期代码优化与硬件性能桥梁
目标:掌握如何引导编译器生成执行效率更高的汇编指令。
-
2.1 函数内联(Inline)与全程序优化(LTO)
inline关键字的本质:它是指令还是建议?- 什么是链接时优化(Link-Time Optimization)?它是如何打破跨文件编译屏障、实现全局死代码消除(Dead Code Elimination)的?
-
2.2 分支预测优化与零成本开销
- 深入理解编译期分支静态预测。如何利用 C++20
[[likely]]/[[unlikely]]优化 CPU 流水线? constexpr与consteval强制编译期计算:如何让编译器在编译时把代码运行完,实现真正的零运行时开销。
- 深入理解编译期分支静态预测。如何利用 C++20
-
2.3 RVO(返回值优化)与 NRVO
- 当函数返回一个大对象时,编译器是如何在不触发任何拷贝、移动构造的前提下,直接把对象"生"在外层接收者的内存里的。