diff --git a/crypto/cipher/asm/chacha20_poly1305_x86_64.pl b/crypto/cipher/asm/chacha20_poly1305_x86_64.pl index 1d4bbcbf..af303b97 100644 --- a/crypto/cipher/asm/chacha20_poly1305_x86_64.pl +++ b/crypto/cipher/asm/chacha20_poly1305_x86_64.pl @@ -138,7 +138,7 @@ $code.="mov 0+$r_store, %rax mov %rdx, $t1 mov 0+$r_store, %rax mul $acc1 - imul $acc2, $t2 + imulq $acc2, $t2 add %rax, $t1 adc %rdx, $t2\n"; } @@ -157,7 +157,7 @@ $code.="mov 8+$r_store, %rax } sub poly_stage3 { -$code.="imul $acc2, $t3 +$code.="imulq $acc2, $t3 add $acc0, $t2 adc %rdx, $t3\n"; } @@ -1378,7 +1378,7 @@ $code.=<<___; mov %rdx, $t2 mulx $acc0, $t0, $t1 mulx $acc1, %rax, %rdx - imul $acc2, $t2 + imulq $acc2, $t2 add %rax, $t1 adc %rdx, $t2 ___ @@ -1392,7 +1392,7 @@ $code.=<<___; mulx $acc1, $acc1, $t3 adc $acc1, $t2 adc \$0, $t3 - imul $acc2, %rdx + imulq $acc2, %rdx ___ }