Есть несколько примеров сборки ATT от Computer Systems: точка зрения программиста.Вот один из них:
элемент массива A [i] [j] может быть скопирован для регистрации% eax с помощью следующего кода:
(A in %rdi, i in %rsi, and j in %rdx)
1 leaq (%rsi,%rsi,2), %rax Compute 3i
2 leaq (%rdi,%rax,4), %rax Compute x_A + 12i
3 movl (%rax,%rdx,4), %eax Read from M[x_A + 12i + 4j]
Может первые дваинструкции должны быть объединены в
leaq (%rdi,%rsi,12), %rax
, поскольку он также вычисляет x_A + 12i?
Почему книга предпочитает писать две инструкции вместо?То же самое происходит и в других примерах.
Спасибо.