loop unroll a[100] s = 0 for i = 0 to 99 s = s + a[i] return s move r1 #0 for loop on i ld r2 a[i] add r1 r1 r2 ( r1 = r1 + r2) i = i + 1 return r1 unroll one time move r1 #0 for loop on i ld r2 a[i] add r1 r1 r2 i = i + 1 ld r2 a[i] add r1 r1 r2 i = i + 1 return r1 improvement ld r2 a[i] add r1 r1 r2 ld r2 a[i+1] add r1 r1 r2 i = i + 2