在armv8中,由于processor的预取,流水线, 以及多线程并行的执行方式,而且armv8-a中,使用的是一种weakly-ordered memory model, 不保证program order和execute order一致. 所以有时需要显式的执行一些指令,来order自己的代码. armv8涉及到的优化包括: 1) multiple issue of instructions,超流水线技术,每个cycle,都会有多个issue和execute,保证不了各个指令的执行order.…