cmll-x86_64.pl: fix bug in cbc tail processing and comply with Win64 ABI spec.

This commit is contained in:
Andy Polyakov 2008-12-27 13:39:38 +00:00
parent 3b0ee0d2bf
commit bec45a35bb

@ -650,7 +650,7 @@ Camellia_cbc_encrypt:
neg %r10 neg %r10
and \$0x3C0,%r10 and \$0x3C0,%r10
sub %r10,%rsp sub %r10,%rsp
add \$8,%rsp # 8 is reserved for callee's ra #add \$8,%rsp # 8 is reserved for callee's ra
mov %rdi,$inp # inp argument mov %rdi,$inp # inp argument
mov %rsi,$out # out argument mov %rsi,$out # out argument
@ -746,7 +746,7 @@ Camellia_cbc_encrypt:
pushfq pushfq
cld cld
mov $inp,%rsi mov $inp,%rsi
lea $ivec,%rdi lea 8+$ivec,%rdi
.long 0x9066A4F3 # rep movsb .long 0x9066A4F3 # rep movsb
popfq popfq
.Lcbc_enc_popf: .Lcbc_enc_popf:
@ -835,7 +835,7 @@ Camellia_cbc_encrypt:
.Lcbc_dec_pushf: .Lcbc_dec_pushf:
pushfq pushfq
cld cld
lea $ivec,%rsi lea 8+$ivec,%rsi
lea ($out),%rdi lea ($out),%rdi
.long 0x9066A4F3 # rep movsb .long 0x9066A4F3 # rep movsb
popfq popfq