91优化的主要种类 917强度削弱和归纳变量删除 j和t的值步伐一致地变化 B ·这样的变量叫做归纳变量 在循环中有多个归纳变量时,t=4*j 也许只需要留下一个 这个操作由归纳变量删除 if ts >v goto B 过程来完成 对本例可以先做强度削弱 它给删除归纳变量创造机会
9.1 优化的主要种类 9.1.7 强度削弱和归纳变量删除 • j和t 4的值步伐一致地变化 • 这样的变量叫做归纳变量 • 在循环中有多个归纳变量时, 也许只需要留下一个 • 这个操作由归纳变量删除 过程来完成 • 对本例可以先做强度削弱 它给删除归纳变量创造机会 j = j −1 t4 = 4 j t5 = a[t4 ] if t5 > v goto B3 B3
91优化的主要种类 m B B n 4*j 4*n ifts>v goto B 除第一次外, B t==4*j在B3的入 B 3 口一定保持 在j=j-1后, 4 if ts >v goto B3 关系t=4*j+4也 保持 if is=igoto B]B4 B5匚 -B6
9.1 优化的主要种类 i = m −1 j = n t1 = 4 n v = a[t1 ] B1 B2 j = j −1 t4 = t4 − 4 t5 = a[t4 ] if t5 > v goto B3 B4 B3 B5 B6 t4 = 4 j if i >= j goto B6 j = j −1 t4 = 4 j t5 = a[t4 ] if t5 > v goto B3 B3 除第一次外, t 4 == 4 j在B3的入 口一定保持 在j = j −1后, 关系t 4 == 4 j + 4也 保持
9优化的主要种类 m B n 事n atIL B2B2也可以进行 atl 类似的变换 v goto B2 B t4l ts >v goto B3 if i>=j goto B B4 B B
9.1 优化的主要种类 i = m −1 j = n t1 = 4 n v = a[t1 ] t4 = 4 j i = i + 1 t2 = 4 i t3 = a[t2 ] if t3 < v goto B2 B1 B2 j = j −1 t4 = t4−4 t5 = a[t4 ] if t5 > v goto B3 if i >= j goto B6 B4 B3 B5 B6 B2也可以进行 类似的变换
9优化的主要种类 m B n 事n a t2=4 t** B v goto B2 B t4l ts >v goto B3 if i>=j goto B B4 B B
9.1 优化的主要种类 i = m −1 j = n t1 = 4 n v = a[t1] t4 = 4 j t2 = 4 i i = i + 1 t2 = t2+ 4 t3 = a[t2] if t 3 < v goto B 2 B 1 B 2 j = j − 1 t 4 = t 4 − 4 t 5 = a[t 4 ] if t 5 > v goto B 3 if i >= j goto B 6 B 4 B 3 B 5 B 6
9优化的主要种类 m B n4a44 事n t** B2循环控制条件 t,+4 alt 可以用t2和t gooD,」来表示 B t4l ts >v goto B3 ii>= j goto B。B B B
9.1 优化的主要种类 i = m −1 j = n t1 = 4 n v = a[t1] t4 = 4 j t2 = 4 i i = i + 1 t2 = t2+ 4 t3 = a[t2] if t 3 < v goto B 2 B 1 B 2 j = j − 1 t 4 = t 4 − 4 t 5 = a[t 4 ] if t 5 > v goto B 3 if i >= j goto B 6 B 4 B 3 B 5 B 6 循环控制条件 可以用 t 2 和 t 4 来表示