第79部分- Linux x86 64位汇编 优化技巧

优化汇编主要是5中常用的方法:

优化运算/优化变量/优化循环/优化条件分支/优化通用子表达式。

减少运算过程中的局部变量的大量使用。

处理变量有3种方式:使用.data或者.bss段内存中定义变量/堆栈中定义局部变量/使用可用的寄存器。将全局变量存储在FPU中,有个好处是,在使用存储到FPU时候会有固定的延时,但是处理器可以处理其他指令。

优化循环是应用程序中最消耗时间的部分之一。分支对性能的影响可能是灾难性的。预加载到指令缓存中的指令完全失去了利用价值。优化循环,要么是消除要么简化,使用的手段是循环展开。会导致程序变化,具体要看性能提高的收益是否超过程序。

优化条件分支会破坏预加载到指令缓存中的指令,如果采用了没有预测到的分支,就会导致处理器进行额外的工作。代码可以减少实现双重if-then-else语句需要的代码数量。

      通用表达式使用,可以计算一次永久收益,不用反复进行计算。