ARM汇编优化1

1 改完a1段要看后面的a2段有没有使用a1中改动的寄存器

2 根据左移的正负数对循环进行分情况拆分
3 可以用连续的
ldr r1,[r0]
ldr r2,[r0,#4]
ldr r3,[r0,#8]
add r0,r0,#12
代替循环中的 ldr r1,[r0],#4
要确定好循环次数是能被2整除还是被4整除。只有确定了每个frame的循环次数都是能被4整除的,才能4个一起处理。能被2整除的自然是2个循环做成一个循环进行处理。
多次循环做成一个循环放在一起处理主要是为了能够插入去NOP,如无NOP可去,单纯减少循环次数实际并不会对cycle有影响。
原文地址:https://www.cnblogs.com/wuqi1003/p/12258710.html