[adjust lea offsets to simply addressing modes peter@cordes.ca**20080319044041] { hunk ./rshift.asm 254 - leaq (%rsi,%rdx,8), %rsi C rsi = rsi + rdx*8 = last limb + 1 + leaq -8(%rsi,%rdx,8), %rsi C rsi = rsi + rdx*8 = last limb. hunk ./rshift.asm 265 - movq -8(%rsi,%rdx,8), %xmm6 C %6 = limb1 + movq (%rsi,%rdx,8), %xmm6 C %6 = limb1 hunk ./rshift.asm 270 - movq (%rsi,%rdx,8), %xmm7 C %7 = limb2 + movq 8(%rsi,%rdx,8), %xmm7 C %7 = limb2 hunk ./rshift.asm 277 -C movq 8(%rsi,%rdx,8), %xmm6 C %6 = limb3 (about to become limb1) +C movq 16(%rsi,%rdx,8), %xmm6 C %6 = limb3 (about to become limb1) hunk ./rshift.asm 285 - cmovng -8(%rsi,%rdx,8), %rcx + cmovng (%rsi), %rcx C (%rsi,%rdx,8), but the move happens only when rdx is zero. }