Regen assembly files for i386.

This commit is contained in:
Jung-uk Kim 2018-09-20 21:34:05 +00:00
parent acd3ae1266
commit d0f1d030b3
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/projects/openssl111/; revision=338842
28 changed files with 19411 additions and 22676 deletions

View File

@ -59,6 +59,9 @@ sha256-armv8.S: sha512-armv8.pl
${LCRYPTO_SRC}/crypto/whrlpool/asm \
${LCRYPTO_SRC}/engines/asm
# cpuid
SRCS+= x86_64cpuid.pl
# aes
SRCS= aes-x86_64.pl aesni-mb-x86_64.pl aesni-sha1-x86_64.pl \
aesni-sha256-x86_64.pl aesni-x86_64.pl bsaes-x86_64.pl \
@ -77,9 +80,6 @@ SRCS+= chacha-x86_64.pl
# ec
SRCS+= ecp_nistz256-x86_64.pl x25519-x86_64.pl
# engines
SRCS+= e_padlock-x86_64.pl
# md5
SRCS+= md5-x86_64.pl
@ -99,8 +99,8 @@ SRCS+= keccak1600-x86_64.pl sha1-mb-x86_64.pl sha1-x86_64.pl \
# whrlpool
SRCS+= wp-x86_64.pl
# cpuid
SRCS+= x86_64cpuid.pl
# engines
SRCS+= e_padlock-x86_64.pl
SHA_ASM= sha256-x86_64 sha512-x86_64
SHA_SRC= sha512-x86_64.pl
@ -175,22 +175,30 @@ aes-armv4.S: aes-armv4.pl
${LCRYPTO_SRC}/crypto/bf/asm \
${LCRYPTO_SRC}/crypto/bn/asm \
${LCRYPTO_SRC}/crypto/camellia/asm \
${LCRYPTO_SRC}/crypto/cast/asm \
${LCRYPTO_SRC}/crypto/chacha/asm \
${LCRYPTO_SRC}/crypto/des/asm \
${LCRYPTO_SRC}/crypto/ec/asm \
${LCRYPTO_SRC}/crypto/md5/asm \
${LCRYPTO_SRC}/crypto/modes/asm \
${LCRYPTO_SRC}/crypto/poly1305/asm \
${LCRYPTO_SRC}/crypto/rc4/asm \
${LCRYPTO_SRC}/crypto/rc5/asm \
${LCRYPTO_SRC}/crypto/ripemd/asm \
${LCRYPTO_SRC}/crypto/sha/asm \
${LCRYPTO_SRC}/crypto/whrlpool/asm
${LCRYPTO_SRC}/crypto/whrlpool/asm \
${LCRYPTO_SRC}/engines/asm
PERLPATH= -I${LCRYPTO_SRC}/crypto/des/asm -I${LCRYPTO_SRC}/crypto/perlasm
#PERLPATH= -I${LCRYPTO_SRC}/crypto/des/asm -I${LCRYPTO_SRC}/crypto/perlasm
# cpuid
SRCS= x86cpuid.pl
# aes
SRCS= aes-586.pl aesni-x86.pl vpaes-x86.pl
SRCS+= aes-586.pl aesni-x86.pl vpaes-x86.pl
# blowfish
SRCS+= bf-586.pl bf-686.pl
SRCS+= bf-586.pl
# bn
SRCS+= bn-586.pl co-586.pl x86-gf2m.pl x86-mont.pl
@ -198,15 +206,27 @@ SRCS+= bn-586.pl co-586.pl x86-gf2m.pl x86-mont.pl
# camellia
SRCS+= cmll-x86.pl
# cast
SRCS+= cast-586.pl
# chacha
SRCS+= chacha-x86.pl
# des
SRCS+= crypt586.pl des-586.pl
# ec
SRCS+= ecp_nistz256-x86.pl
# md5
SRCS+= md5-586.pl
# modes
SRCS+= ghash-x86.pl
# poly1305
SRCS+= poly1305-x86.pl
# rc4
SRCS+= rc4-586.pl
@ -222,25 +242,26 @@ SRCS+= sha1-586.pl sha256-586.pl sha512-586.pl
# whrlpool
SRCS+= wp-mmx.pl
# cpuid
SRCS+= x86cpuid.pl
# engines
SRCS+= e_padlock-x86.pl
ASM= ${SRCS:R:S/$/.S/}
all: ${ASM}
CLEANFILES= ${ASM}
CLEANFILES= ${ASM} ${SRCS:R:S/$/.s/}
.SUFFIXES: .pl
.pl.S:
( echo '/* $$'FreeBSD'$$ */' ;\
echo '/* Do not modify. This file is auto-generated from ${.IMPSRC:T}. */' ;\
echo '#ifdef PIC' ;\
env CC=cc perl ${PERLPATH} ${.IMPSRC} elf ${CFLAGS} -fpic -DPIC ;\
env CC=cc perl ${PERLPATH} ${.IMPSRC} elf ${CFLAGS} -fpic -DPIC ${.IMPSRC:R:S/$/.s/} ;\
cat ${.IMPSRC:R:S/$/.s/} ;\
echo '#else' ;\
env CC=cc perl ${PERLPATH} ${.IMPSRC} elf ${CFLAGS} ;\
echo '#endif') |\
sed -E 's|(\.file[[:blank:]]+)".*"|\1"${.TARGET}"|' > ${.TARGET}
env CC=cc perl ${PERLPATH} ${.IMPSRC} elf ${CFLAGS} ${.IMPSRC:R:S/$/.s/} ;\
cat ${.IMPSRC:R:S/$/.s/} ;\
echo '#endif' ) > ${.TARGET}
.endif
.include <bsd.prog.mk>

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from aes-586.pl. */
#ifdef PIC
.file "aes-586.S"
.text
.type _x86_AES_encrypt_compact,@function
.align 16
@ -2999,19 +2998,19 @@ _x86_AES_set_encrypt_key:
popl %ebp
ret
.size _x86_AES_set_encrypt_key,.-_x86_AES_set_encrypt_key
.globl private_AES_set_encrypt_key
.type private_AES_set_encrypt_key,@function
.globl AES_set_encrypt_key
.type AES_set_encrypt_key,@function
.align 16
private_AES_set_encrypt_key:
.L_private_AES_set_encrypt_key_begin:
AES_set_encrypt_key:
.L_AES_set_encrypt_key_begin:
call _x86_AES_set_encrypt_key
ret
.size private_AES_set_encrypt_key,.-.L_private_AES_set_encrypt_key_begin
.globl private_AES_set_decrypt_key
.type private_AES_set_decrypt_key,@function
.size AES_set_encrypt_key,.-.L_AES_set_encrypt_key_begin
.globl AES_set_decrypt_key
.type AES_set_decrypt_key,@function
.align 16
private_AES_set_decrypt_key:
.L_private_AES_set_decrypt_key_begin:
AES_set_decrypt_key:
.L_AES_set_decrypt_key_begin:
call _x86_AES_set_encrypt_key
cmpl $0,%eax
je .L054proceed
@ -3240,13 +3239,12 @@ private_AES_set_decrypt_key:
popl %ebx
popl %ebp
ret
.size private_AES_set_decrypt_key,.-.L_private_AES_set_decrypt_key_begin
.size AES_set_decrypt_key,.-.L_AES_set_decrypt_key_begin
.byte 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89
.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114
.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0
.comm OPENSSL_ia32cap_P,16,4
#else
.file "aes-586.S"
.text
.type _x86_AES_encrypt_compact,@function
.align 16
@ -6244,19 +6242,19 @@ _x86_AES_set_encrypt_key:
popl %ebp
ret
.size _x86_AES_set_encrypt_key,.-_x86_AES_set_encrypt_key
.globl private_AES_set_encrypt_key
.type private_AES_set_encrypt_key,@function
.globl AES_set_encrypt_key
.type AES_set_encrypt_key,@function
.align 16
private_AES_set_encrypt_key:
.L_private_AES_set_encrypt_key_begin:
AES_set_encrypt_key:
.L_AES_set_encrypt_key_begin:
call _x86_AES_set_encrypt_key
ret
.size private_AES_set_encrypt_key,.-.L_private_AES_set_encrypt_key_begin
.globl private_AES_set_decrypt_key
.type private_AES_set_decrypt_key,@function
.size AES_set_encrypt_key,.-.L_AES_set_encrypt_key_begin
.globl AES_set_decrypt_key
.type AES_set_decrypt_key,@function
.align 16
private_AES_set_decrypt_key:
.L_private_AES_set_decrypt_key_begin:
AES_set_decrypt_key:
.L_AES_set_decrypt_key_begin:
call _x86_AES_set_encrypt_key
cmpl $0,%eax
je .L054proceed
@ -6485,7 +6483,7 @@ private_AES_set_decrypt_key:
popl %ebx
popl %ebp
ret
.size private_AES_set_decrypt_key,.-.L_private_AES_set_decrypt_key_begin
.size AES_set_decrypt_key,.-.L_AES_set_decrypt_key_begin
.byte 65,69,83,32,102,111,114,32,120,56,54,44,32,67,82,89
.byte 80,84,79,71,65,77,83,32,98,121,32,60,97,112,112,114
.byte 111,64,111,112,101,110,115,115,108,46,111,114,103,62,0

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from bf-586.pl. */
#ifdef PIC
.file "bf-586.S"
.text
.globl BF_encrypt
.type BF_encrypt,@function
@ -898,7 +897,6 @@ BF_cbc_encrypt:
.align 64
.size BF_cbc_encrypt,.-.L_BF_cbc_encrypt_begin
#else
.file "bf-586.S"
.text
.globl BF_encrypt
.type BF_encrypt,@function

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,741 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from chacha-x86.pl. */
#ifdef PIC
.text
.globl ChaCha20_ctr32
.type ChaCha20_ctr32,@function
.align 16
ChaCha20_ctr32:
.L_ChaCha20_ctr32_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
xorl %eax,%eax
cmpl 28(%esp),%eax
je .L000no_data
movl 32(%esp),%esi
movl 36(%esp),%edi
subl $132,%esp
movl (%esi),%eax
movl 4(%esi),%ebx
movl 8(%esi),%ecx
movl 12(%esi),%edx
movl %eax,80(%esp)
movl %ebx,84(%esp)
movl %ecx,88(%esp)
movl %edx,92(%esp)
movl 16(%esi),%eax
movl 20(%esi),%ebx
movl 24(%esi),%ecx
movl 28(%esi),%edx
movl %eax,96(%esp)
movl %ebx,100(%esp)
movl %ecx,104(%esp)
movl %edx,108(%esp)
movl (%edi),%eax
movl 4(%edi),%ebx
movl 8(%edi),%ecx
movl 12(%edi),%edx
subl $1,%eax
movl %eax,112(%esp)
movl %ebx,116(%esp)
movl %ecx,120(%esp)
movl %edx,124(%esp)
jmp .L001entry
.align 16
.L002outer_loop:
movl %ebx,156(%esp)
movl %eax,152(%esp)
movl %ecx,160(%esp)
.L001entry:
movl $1634760805,%eax
movl $857760878,4(%esp)
movl $2036477234,8(%esp)
movl $1797285236,12(%esp)
movl 84(%esp),%ebx
movl 88(%esp),%ebp
movl 104(%esp),%ecx
movl 108(%esp),%esi
movl 116(%esp),%edx
movl 120(%esp),%edi
movl %ebx,20(%esp)
movl %ebp,24(%esp)
movl %ecx,40(%esp)
movl %esi,44(%esp)
movl %edx,52(%esp)
movl %edi,56(%esp)
movl 92(%esp),%ebx
movl 124(%esp),%edi
movl 112(%esp),%edx
movl 80(%esp),%ebp
movl 96(%esp),%ecx
movl 100(%esp),%esi
addl $1,%edx
movl %ebx,28(%esp)
movl %edi,60(%esp)
movl %edx,112(%esp)
movl $10,%ebx
jmp .L003loop
.align 16
.L003loop:
addl %ebp,%eax
movl %ebx,128(%esp)
movl %ebp,%ebx
xorl %eax,%edx
roll $16,%edx
addl %edx,%ecx
xorl %ecx,%ebx
movl 52(%esp),%edi
roll $12,%ebx
movl 20(%esp),%ebp
addl %ebx,%eax
xorl %eax,%edx
movl %eax,(%esp)
roll $8,%edx
movl 4(%esp),%eax
addl %edx,%ecx
movl %edx,48(%esp)
xorl %ecx,%ebx
addl %ebp,%eax
roll $7,%ebx
xorl %eax,%edi
movl %ecx,32(%esp)
roll $16,%edi
movl %ebx,16(%esp)
addl %edi,%esi
movl 40(%esp),%ecx
xorl %esi,%ebp
movl 56(%esp),%edx
roll $12,%ebp
movl 24(%esp),%ebx
addl %ebp,%eax
xorl %eax,%edi
movl %eax,4(%esp)
roll $8,%edi
movl 8(%esp),%eax
addl %edi,%esi
movl %edi,52(%esp)
xorl %esi,%ebp
addl %ebx,%eax
roll $7,%ebp
xorl %eax,%edx
movl %esi,36(%esp)
roll $16,%edx
movl %ebp,20(%esp)
addl %edx,%ecx
movl 44(%esp),%esi
xorl %ecx,%ebx
movl 60(%esp),%edi
roll $12,%ebx
movl 28(%esp),%ebp
addl %ebx,%eax
xorl %eax,%edx
movl %eax,8(%esp)
roll $8,%edx
movl 12(%esp),%eax
addl %edx,%ecx
movl %edx,56(%esp)
xorl %ecx,%ebx
addl %ebp,%eax
roll $7,%ebx
xorl %eax,%edi
roll $16,%edi
movl %ebx,24(%esp)
addl %edi,%esi
xorl %esi,%ebp
roll $12,%ebp
movl 20(%esp),%ebx
addl %ebp,%eax
xorl %eax,%edi
movl %eax,12(%esp)
roll $8,%edi
movl (%esp),%eax
addl %edi,%esi
movl %edi,%edx
xorl %esi,%ebp
addl %ebx,%eax
roll $7,%ebp
xorl %eax,%edx
roll $16,%edx
movl %ebp,28(%esp)
addl %edx,%ecx
xorl %ecx,%ebx
movl 48(%esp),%edi
roll $12,%ebx
movl 24(%esp),%ebp
addl %ebx,%eax
xorl %eax,%edx
movl %eax,(%esp)
roll $8,%edx
movl 4(%esp),%eax
addl %edx,%ecx
movl %edx,60(%esp)
xorl %ecx,%ebx
addl %ebp,%eax
roll $7,%ebx
xorl %eax,%edi
movl %ecx,40(%esp)
roll $16,%edi
movl %ebx,20(%esp)
addl %edi,%esi
movl 32(%esp),%ecx
xorl %esi,%ebp
movl 52(%esp),%edx
roll $12,%ebp
movl 28(%esp),%ebx
addl %ebp,%eax
xorl %eax,%edi
movl %eax,4(%esp)
roll $8,%edi
movl 8(%esp),%eax
addl %edi,%esi
movl %edi,48(%esp)
xorl %esi,%ebp
addl %ebx,%eax
roll $7,%ebp
xorl %eax,%edx
movl %esi,44(%esp)
roll $16,%edx
movl %ebp,24(%esp)
addl %edx,%ecx
movl 36(%esp),%esi
xorl %ecx,%ebx
movl 56(%esp),%edi
roll $12,%ebx
movl 16(%esp),%ebp
addl %ebx,%eax
xorl %eax,%edx
movl %eax,8(%esp)
roll $8,%edx
movl 12(%esp),%eax
addl %edx,%ecx
movl %edx,52(%esp)
xorl %ecx,%ebx
addl %ebp,%eax
roll $7,%ebx
xorl %eax,%edi
roll $16,%edi
movl %ebx,28(%esp)
addl %edi,%esi
xorl %esi,%ebp
movl 48(%esp),%edx
roll $12,%ebp
movl 128(%esp),%ebx
addl %ebp,%eax
xorl %eax,%edi
movl %eax,12(%esp)
roll $8,%edi
movl (%esp),%eax
addl %edi,%esi
movl %edi,56(%esp)
xorl %esi,%ebp
roll $7,%ebp
decl %ebx
jnz .L003loop
movl 160(%esp),%ebx
addl $1634760805,%eax
addl 80(%esp),%ebp
addl 96(%esp),%ecx
addl 100(%esp),%esi
cmpl $64,%ebx
jb .L004tail
movl 156(%esp),%ebx
addl 112(%esp),%edx
addl 120(%esp),%edi
xorl (%ebx),%eax
xorl 16(%ebx),%ebp
movl %eax,(%esp)
movl 152(%esp),%eax
xorl 32(%ebx),%ecx
xorl 36(%ebx),%esi
xorl 48(%ebx),%edx
xorl 56(%ebx),%edi
movl %ebp,16(%eax)
movl %ecx,32(%eax)
movl %esi,36(%eax)
movl %edx,48(%eax)
movl %edi,56(%eax)
movl 4(%esp),%ebp
movl 8(%esp),%ecx
movl 12(%esp),%esi
movl 20(%esp),%edx
movl 24(%esp),%edi
addl $857760878,%ebp
addl $2036477234,%ecx
addl $1797285236,%esi
addl 84(%esp),%edx
addl 88(%esp),%edi
xorl 4(%ebx),%ebp
xorl 8(%ebx),%ecx
xorl 12(%ebx),%esi
xorl 20(%ebx),%edx
xorl 24(%ebx),%edi
movl %ebp,4(%eax)
movl %ecx,8(%eax)
movl %esi,12(%eax)
movl %edx,20(%eax)
movl %edi,24(%eax)
movl 28(%esp),%ebp
movl 40(%esp),%ecx
movl 44(%esp),%esi
movl 52(%esp),%edx
movl 60(%esp),%edi
addl 92(%esp),%ebp
addl 104(%esp),%ecx
addl 108(%esp),%esi
addl 116(%esp),%edx
addl 124(%esp),%edi
xorl 28(%ebx),%ebp
xorl 40(%ebx),%ecx
xorl 44(%ebx),%esi
xorl 52(%ebx),%edx
xorl 60(%ebx),%edi
leal 64(%ebx),%ebx
movl %ebp,28(%eax)
movl (%esp),%ebp
movl %ecx,40(%eax)
movl 160(%esp),%ecx
movl %esi,44(%eax)
movl %edx,52(%eax)
movl %edi,60(%eax)
movl %ebp,(%eax)
leal 64(%eax),%eax
subl $64,%ecx
jnz .L002outer_loop
jmp .L005done
.L004tail:
addl 112(%esp),%edx
addl 120(%esp),%edi
movl %eax,(%esp)
movl %ebp,16(%esp)
movl %ecx,32(%esp)
movl %esi,36(%esp)
movl %edx,48(%esp)
movl %edi,56(%esp)
movl 4(%esp),%ebp
movl 8(%esp),%ecx
movl 12(%esp),%esi
movl 20(%esp),%edx
movl 24(%esp),%edi
addl $857760878,%ebp
addl $2036477234,%ecx
addl $1797285236,%esi
addl 84(%esp),%edx
addl 88(%esp),%edi
movl %ebp,4(%esp)
movl %ecx,8(%esp)
movl %esi,12(%esp)
movl %edx,20(%esp)
movl %edi,24(%esp)
movl 28(%esp),%ebp
movl 40(%esp),%ecx
movl 44(%esp),%esi
movl 52(%esp),%edx
movl 60(%esp),%edi
addl 92(%esp),%ebp
addl 104(%esp),%ecx
addl 108(%esp),%esi
addl 116(%esp),%edx
addl 124(%esp),%edi
movl %ebp,28(%esp)
movl 156(%esp),%ebp
movl %ecx,40(%esp)
movl 152(%esp),%ecx
movl %esi,44(%esp)
xorl %esi,%esi
movl %edx,52(%esp)
movl %edi,60(%esp)
xorl %eax,%eax
xorl %edx,%edx
.L006tail_loop:
movb (%esi,%ebp,1),%al
movb (%esp,%esi,1),%dl
leal 1(%esi),%esi
xorb %dl,%al
movb %al,-1(%ecx,%esi,1)
decl %ebx
jnz .L006tail_loop
.L005done:
addl $132,%esp
.L000no_data:
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size ChaCha20_ctr32,.-.L_ChaCha20_ctr32_begin
.byte 67,104,97,67,104,97,50,48,32,102,111,114,32,120,56,54
.byte 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32
.byte 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111
.byte 114,103,62,0
#else
.text
.globl ChaCha20_ctr32
.type ChaCha20_ctr32,@function
.align 16
ChaCha20_ctr32:
.L_ChaCha20_ctr32_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
xorl %eax,%eax
cmpl 28(%esp),%eax
je .L000no_data
movl 32(%esp),%esi
movl 36(%esp),%edi
subl $132,%esp
movl (%esi),%eax
movl 4(%esi),%ebx
movl 8(%esi),%ecx
movl 12(%esi),%edx
movl %eax,80(%esp)
movl %ebx,84(%esp)
movl %ecx,88(%esp)
movl %edx,92(%esp)
movl 16(%esi),%eax
movl 20(%esi),%ebx
movl 24(%esi),%ecx
movl 28(%esi),%edx
movl %eax,96(%esp)
movl %ebx,100(%esp)
movl %ecx,104(%esp)
movl %edx,108(%esp)
movl (%edi),%eax
movl 4(%edi),%ebx
movl 8(%edi),%ecx
movl 12(%edi),%edx
subl $1,%eax
movl %eax,112(%esp)
movl %ebx,116(%esp)
movl %ecx,120(%esp)
movl %edx,124(%esp)
jmp .L001entry
.align 16
.L002outer_loop:
movl %ebx,156(%esp)
movl %eax,152(%esp)
movl %ecx,160(%esp)
.L001entry:
movl $1634760805,%eax
movl $857760878,4(%esp)
movl $2036477234,8(%esp)
movl $1797285236,12(%esp)
movl 84(%esp),%ebx
movl 88(%esp),%ebp
movl 104(%esp),%ecx
movl 108(%esp),%esi
movl 116(%esp),%edx
movl 120(%esp),%edi
movl %ebx,20(%esp)
movl %ebp,24(%esp)
movl %ecx,40(%esp)
movl %esi,44(%esp)
movl %edx,52(%esp)
movl %edi,56(%esp)
movl 92(%esp),%ebx
movl 124(%esp),%edi
movl 112(%esp),%edx
movl 80(%esp),%ebp
movl 96(%esp),%ecx
movl 100(%esp),%esi
addl $1,%edx
movl %ebx,28(%esp)
movl %edi,60(%esp)
movl %edx,112(%esp)
movl $10,%ebx
jmp .L003loop
.align 16
.L003loop:
addl %ebp,%eax
movl %ebx,128(%esp)
movl %ebp,%ebx
xorl %eax,%edx
roll $16,%edx
addl %edx,%ecx
xorl %ecx,%ebx
movl 52(%esp),%edi
roll $12,%ebx
movl 20(%esp),%ebp
addl %ebx,%eax
xorl %eax,%edx
movl %eax,(%esp)
roll $8,%edx
movl 4(%esp),%eax
addl %edx,%ecx
movl %edx,48(%esp)
xorl %ecx,%ebx
addl %ebp,%eax
roll $7,%ebx
xorl %eax,%edi
movl %ecx,32(%esp)
roll $16,%edi
movl %ebx,16(%esp)
addl %edi,%esi
movl 40(%esp),%ecx
xorl %esi,%ebp
movl 56(%esp),%edx
roll $12,%ebp
movl 24(%esp),%ebx
addl %ebp,%eax
xorl %eax,%edi
movl %eax,4(%esp)
roll $8,%edi
movl 8(%esp),%eax
addl %edi,%esi
movl %edi,52(%esp)
xorl %esi,%ebp
addl %ebx,%eax
roll $7,%ebp
xorl %eax,%edx
movl %esi,36(%esp)
roll $16,%edx
movl %ebp,20(%esp)
addl %edx,%ecx
movl 44(%esp),%esi
xorl %ecx,%ebx
movl 60(%esp),%edi
roll $12,%ebx
movl 28(%esp),%ebp
addl %ebx,%eax
xorl %eax,%edx
movl %eax,8(%esp)
roll $8,%edx
movl 12(%esp),%eax
addl %edx,%ecx
movl %edx,56(%esp)
xorl %ecx,%ebx
addl %ebp,%eax
roll $7,%ebx
xorl %eax,%edi
roll $16,%edi
movl %ebx,24(%esp)
addl %edi,%esi
xorl %esi,%ebp
roll $12,%ebp
movl 20(%esp),%ebx
addl %ebp,%eax
xorl %eax,%edi
movl %eax,12(%esp)
roll $8,%edi
movl (%esp),%eax
addl %edi,%esi
movl %edi,%edx
xorl %esi,%ebp
addl %ebx,%eax
roll $7,%ebp
xorl %eax,%edx
roll $16,%edx
movl %ebp,28(%esp)
addl %edx,%ecx
xorl %ecx,%ebx
movl 48(%esp),%edi
roll $12,%ebx
movl 24(%esp),%ebp
addl %ebx,%eax
xorl %eax,%edx
movl %eax,(%esp)
roll $8,%edx
movl 4(%esp),%eax
addl %edx,%ecx
movl %edx,60(%esp)
xorl %ecx,%ebx
addl %ebp,%eax
roll $7,%ebx
xorl %eax,%edi
movl %ecx,40(%esp)
roll $16,%edi
movl %ebx,20(%esp)
addl %edi,%esi
movl 32(%esp),%ecx
xorl %esi,%ebp
movl 52(%esp),%edx
roll $12,%ebp
movl 28(%esp),%ebx
addl %ebp,%eax
xorl %eax,%edi
movl %eax,4(%esp)
roll $8,%edi
movl 8(%esp),%eax
addl %edi,%esi
movl %edi,48(%esp)
xorl %esi,%ebp
addl %ebx,%eax
roll $7,%ebp
xorl %eax,%edx
movl %esi,44(%esp)
roll $16,%edx
movl %ebp,24(%esp)
addl %edx,%ecx
movl 36(%esp),%esi
xorl %ecx,%ebx
movl 56(%esp),%edi
roll $12,%ebx
movl 16(%esp),%ebp
addl %ebx,%eax
xorl %eax,%edx
movl %eax,8(%esp)
roll $8,%edx
movl 12(%esp),%eax
addl %edx,%ecx
movl %edx,52(%esp)
xorl %ecx,%ebx
addl %ebp,%eax
roll $7,%ebx
xorl %eax,%edi
roll $16,%edi
movl %ebx,28(%esp)
addl %edi,%esi
xorl %esi,%ebp
movl 48(%esp),%edx
roll $12,%ebp
movl 128(%esp),%ebx
addl %ebp,%eax
xorl %eax,%edi
movl %eax,12(%esp)
roll $8,%edi
movl (%esp),%eax
addl %edi,%esi
movl %edi,56(%esp)
xorl %esi,%ebp
roll $7,%ebp
decl %ebx
jnz .L003loop
movl 160(%esp),%ebx
addl $1634760805,%eax
addl 80(%esp),%ebp
addl 96(%esp),%ecx
addl 100(%esp),%esi
cmpl $64,%ebx
jb .L004tail
movl 156(%esp),%ebx
addl 112(%esp),%edx
addl 120(%esp),%edi
xorl (%ebx),%eax
xorl 16(%ebx),%ebp
movl %eax,(%esp)
movl 152(%esp),%eax
xorl 32(%ebx),%ecx
xorl 36(%ebx),%esi
xorl 48(%ebx),%edx
xorl 56(%ebx),%edi
movl %ebp,16(%eax)
movl %ecx,32(%eax)
movl %esi,36(%eax)
movl %edx,48(%eax)
movl %edi,56(%eax)
movl 4(%esp),%ebp
movl 8(%esp),%ecx
movl 12(%esp),%esi
movl 20(%esp),%edx
movl 24(%esp),%edi
addl $857760878,%ebp
addl $2036477234,%ecx
addl $1797285236,%esi
addl 84(%esp),%edx
addl 88(%esp),%edi
xorl 4(%ebx),%ebp
xorl 8(%ebx),%ecx
xorl 12(%ebx),%esi
xorl 20(%ebx),%edx
xorl 24(%ebx),%edi
movl %ebp,4(%eax)
movl %ecx,8(%eax)
movl %esi,12(%eax)
movl %edx,20(%eax)
movl %edi,24(%eax)
movl 28(%esp),%ebp
movl 40(%esp),%ecx
movl 44(%esp),%esi
movl 52(%esp),%edx
movl 60(%esp),%edi
addl 92(%esp),%ebp
addl 104(%esp),%ecx
addl 108(%esp),%esi
addl 116(%esp),%edx
addl 124(%esp),%edi
xorl 28(%ebx),%ebp
xorl 40(%ebx),%ecx
xorl 44(%ebx),%esi
xorl 52(%ebx),%edx
xorl 60(%ebx),%edi
leal 64(%ebx),%ebx
movl %ebp,28(%eax)
movl (%esp),%ebp
movl %ecx,40(%eax)
movl 160(%esp),%ecx
movl %esi,44(%eax)
movl %edx,52(%eax)
movl %edi,60(%eax)
movl %ebp,(%eax)
leal 64(%eax),%eax
subl $64,%ecx
jnz .L002outer_loop
jmp .L005done
.L004tail:
addl 112(%esp),%edx
addl 120(%esp),%edi
movl %eax,(%esp)
movl %ebp,16(%esp)
movl %ecx,32(%esp)
movl %esi,36(%esp)
movl %edx,48(%esp)
movl %edi,56(%esp)
movl 4(%esp),%ebp
movl 8(%esp),%ecx
movl 12(%esp),%esi
movl 20(%esp),%edx
movl 24(%esp),%edi
addl $857760878,%ebp
addl $2036477234,%ecx
addl $1797285236,%esi
addl 84(%esp),%edx
addl 88(%esp),%edi
movl %ebp,4(%esp)
movl %ecx,8(%esp)
movl %esi,12(%esp)
movl %edx,20(%esp)
movl %edi,24(%esp)
movl 28(%esp),%ebp
movl 40(%esp),%ecx
movl 44(%esp),%esi
movl 52(%esp),%edx
movl 60(%esp),%edi
addl 92(%esp),%ebp
addl 104(%esp),%ecx
addl 108(%esp),%esi
addl 116(%esp),%edx
addl 124(%esp),%edi
movl %ebp,28(%esp)
movl 156(%esp),%ebp
movl %ecx,40(%esp)
movl 152(%esp),%ecx
movl %esi,44(%esp)
xorl %esi,%esi
movl %edx,52(%esp)
movl %edi,60(%esp)
xorl %eax,%eax
xorl %edx,%edx
.L006tail_loop:
movb (%esi,%ebp,1),%al
movb (%esp,%esi,1),%dl
leal 1(%esi),%esi
xorb %dl,%al
movb %al,-1(%ecx,%esi,1)
decl %ebx
jnz .L006tail_loop
.L005done:
addl $132,%esp
.L000no_data:
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size ChaCha20_ctr32,.-.L_ChaCha20_ctr32_begin
.byte 67,104,97,67,104,97,50,48,32,102,111,114,32,120,56,54
.byte 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32
.byte 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111
.byte 114,103,62,0
#endif

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from cmll-x86.pl. */
#ifdef PIC
.file "cmll-x86.S"
.text
.globl Camellia_EncryptBlock_Rounds
.type Camellia_EncryptBlock_Rounds,@function
@ -1540,11 +1539,11 @@ Camellia_Ekeygen:
popl %ebp
ret
.size Camellia_Ekeygen,.-.L_Camellia_Ekeygen_begin
.globl private_Camellia_set_key
.type private_Camellia_set_key,@function
.globl Camellia_set_key
.type Camellia_set_key,@function
.align 16
private_Camellia_set_key:
.L_private_Camellia_set_key_begin:
Camellia_set_key:
.L_Camellia_set_key_begin:
pushl %ebx
movl 8(%esp),%ecx
movl 12(%esp),%ebx
@ -1574,7 +1573,7 @@ private_Camellia_set_key:
.L014done:
popl %ebx
ret
.size private_Camellia_set_key,.-.L_private_Camellia_set_key_begin
.size Camellia_set_key,.-.L_Camellia_set_key_begin
.align 64
.LCamellia_SIGMA:
.long 2694735487,1003262091,3061508184,1286239154,3337565999,3914302142,1426019237,4057165596,283453434,3731369245,2958461122,3018244605,0,0,0,0
@ -2377,7 +2376,6 @@ Camellia_cbc_encrypt:
.byte 32,98,121,32,60,97,112,112,114,111,64,111,112,101,110,115
.byte 115,108,46,111,114,103,62,0
#else
.file "cmll-x86.S"
.text
.globl Camellia_EncryptBlock_Rounds
.type Camellia_EncryptBlock_Rounds,@function
@ -3916,11 +3914,11 @@ Camellia_Ekeygen:
popl %ebp
ret
.size Camellia_Ekeygen,.-.L_Camellia_Ekeygen_begin
.globl private_Camellia_set_key
.type private_Camellia_set_key,@function
.globl Camellia_set_key
.type Camellia_set_key,@function
.align 16
private_Camellia_set_key:
.L_private_Camellia_set_key_begin:
Camellia_set_key:
.L_Camellia_set_key_begin:
pushl %ebx
movl 8(%esp),%ecx
movl 12(%esp),%ebx
@ -3950,7 +3948,7 @@ private_Camellia_set_key:
.L014done:
popl %ebx
ret
.size private_Camellia_set_key,.-.L_private_Camellia_set_key_begin
.size Camellia_set_key,.-.L_Camellia_set_key_begin
.align 64
.LCamellia_SIGMA:
.long 2694735487,1003262091,3061508184,1286239154,3337565999,3914302142,1426019237,4057165596,283453434,3731369245,2958461122,3018244605,0,0,0,0

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from co-586.pl. */
#ifdef PIC
.file "co-586.S"
.text
.globl bn_mul_comba8
.type bn_mul_comba8,@function
@ -1256,7 +1255,6 @@ bn_sqr_comba4:
ret
.size bn_sqr_comba4,.-.L_bn_sqr_comba4_begin
#else
.file "co-586.S"
.text
.globl bn_mul_comba8
.type bn_mul_comba8,@function

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from crypt586.pl. */
#ifdef PIC
.file "crypt586.S"
.text
.globl fcrypt_body
.type fcrypt_body,@function
@ -881,7 +880,6 @@ fcrypt_body:
ret
.size fcrypt_body,.-.L_fcrypt_body_begin
#else
.file "crypt586.S"
.text
.globl fcrypt_body
.type fcrypt_body,@function

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from des-586.pl. */
#ifdef PIC
.file "des-586.S"
.text
.globl DES_SPtrans
.type _x86_DES_encrypt,@function
@ -1840,7 +1839,6 @@ DES_SPtrans:
.long 128,545390592,8519808,0
.long 536870912,545259648,131072,8519808
#else
.file "des-586.S"
.text
.globl DES_SPtrans
.type _x86_DES_encrypt,@function

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,557 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from poly1305-x86.pl. */
#ifdef PIC
.text
.align 64
.globl poly1305_init
.type poly1305_init,@function
.align 16
poly1305_init:
.L_poly1305_init_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl 20(%esp),%edi
movl 24(%esp),%esi
movl 28(%esp),%ebp
xorl %eax,%eax
movl %eax,(%edi)
movl %eax,4(%edi)
movl %eax,8(%edi)
movl %eax,12(%edi)
movl %eax,16(%edi)
movl %eax,20(%edi)
cmpl $0,%esi
je .L000nokey
movl (%esi),%eax
movl 4(%esi),%ebx
movl 8(%esi),%ecx
movl 12(%esi),%edx
andl $268435455,%eax
andl $268435452,%ebx
andl $268435452,%ecx
andl $268435452,%edx
movl %eax,24(%edi)
movl %ebx,28(%edi)
movl %ecx,32(%edi)
movl %edx,36(%edi)
movl $0,%eax
.L000nokey:
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size poly1305_init,.-.L_poly1305_init_begin
.globl poly1305_blocks
.type poly1305_blocks,@function
.align 16
poly1305_blocks:
.L_poly1305_blocks_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl 20(%esp),%edi
movl 24(%esp),%esi
movl 28(%esp),%ecx
.L001enter_blocks:
andl $-15,%ecx
jz .L002nodata
subl $64,%esp
movl 24(%edi),%eax
movl 28(%edi),%ebx
leal (%esi,%ecx,1),%ebp
movl 32(%edi),%ecx
movl 36(%edi),%edx
movl %ebp,92(%esp)
movl %esi,%ebp
movl %eax,36(%esp)
movl %ebx,%eax
shrl $2,%eax
movl %ebx,40(%esp)
addl %ebx,%eax
movl %ecx,%ebx
shrl $2,%ebx
movl %ecx,44(%esp)
addl %ecx,%ebx
movl %edx,%ecx
shrl $2,%ecx
movl %edx,48(%esp)
addl %edx,%ecx
movl %eax,52(%esp)
movl %ebx,56(%esp)
movl %ecx,60(%esp)
movl (%edi),%eax
movl 4(%edi),%ebx
movl 8(%edi),%ecx
movl 12(%edi),%esi
movl 16(%edi),%edi
jmp .L003loop
.align 32
.L003loop:
addl (%ebp),%eax
adcl 4(%ebp),%ebx
adcl 8(%ebp),%ecx
adcl 12(%ebp),%esi
leal 16(%ebp),%ebp
adcl 96(%esp),%edi
movl %eax,(%esp)
movl %esi,12(%esp)
mull 36(%esp)
movl %edi,16(%esp)
movl %eax,%edi
movl %ebx,%eax
movl %edx,%esi
mull 60(%esp)
addl %eax,%edi
movl %ecx,%eax
adcl %edx,%esi
mull 56(%esp)
addl %eax,%edi
movl 12(%esp),%eax
adcl %edx,%esi
mull 52(%esp)
addl %eax,%edi
movl (%esp),%eax
adcl %edx,%esi
mull 40(%esp)
movl %edi,20(%esp)
xorl %edi,%edi
addl %eax,%esi
movl %ebx,%eax
adcl %edx,%edi
mull 36(%esp)
addl %eax,%esi
movl %ecx,%eax
adcl %edx,%edi
mull 60(%esp)
addl %eax,%esi
movl 12(%esp),%eax
adcl %edx,%edi
mull 56(%esp)
addl %eax,%esi
movl 16(%esp),%eax
adcl %edx,%edi
imull 52(%esp),%eax
addl %eax,%esi
movl (%esp),%eax
adcl $0,%edi
mull 44(%esp)
movl %esi,24(%esp)
xorl %esi,%esi
addl %eax,%edi
movl %ebx,%eax
adcl %edx,%esi
mull 40(%esp)
addl %eax,%edi
movl %ecx,%eax
adcl %edx,%esi
mull 36(%esp)
addl %eax,%edi
movl 12(%esp),%eax
adcl %edx,%esi
mull 60(%esp)
addl %eax,%edi
movl 16(%esp),%eax
adcl %edx,%esi
imull 56(%esp),%eax
addl %eax,%edi
movl (%esp),%eax
adcl $0,%esi
mull 48(%esp)
movl %edi,28(%esp)
xorl %edi,%edi
addl %eax,%esi
movl %ebx,%eax
adcl %edx,%edi
mull 44(%esp)
addl %eax,%esi
movl %ecx,%eax
adcl %edx,%edi
mull 40(%esp)
addl %eax,%esi
movl 12(%esp),%eax
adcl %edx,%edi
mull 36(%esp)
addl %eax,%esi
movl 16(%esp),%ecx
adcl %edx,%edi
movl %ecx,%edx
imull 60(%esp),%ecx
addl %ecx,%esi
movl 20(%esp),%eax
adcl $0,%edi
imull 36(%esp),%edx
addl %edi,%edx
movl 24(%esp),%ebx
movl 28(%esp),%ecx
movl %edx,%edi
shrl $2,%edx
andl $3,%edi
leal (%edx,%edx,4),%edx
addl %edx,%eax
adcl $0,%ebx
adcl $0,%ecx
adcl $0,%esi
adcl $0,%edi
cmpl 92(%esp),%ebp
jne .L003loop
movl 84(%esp),%edx
addl $64,%esp
movl %eax,(%edx)
movl %ebx,4(%edx)
movl %ecx,8(%edx)
movl %esi,12(%edx)
movl %edi,16(%edx)
.L002nodata:
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size poly1305_blocks,.-.L_poly1305_blocks_begin
.globl poly1305_emit
.type poly1305_emit,@function
.align 16
poly1305_emit:
.L_poly1305_emit_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl 20(%esp),%ebp
.L004enter_emit:
movl 24(%esp),%edi
movl (%ebp),%eax
movl 4(%ebp),%ebx
movl 8(%ebp),%ecx
movl 12(%ebp),%edx
movl 16(%ebp),%esi
addl $5,%eax
adcl $0,%ebx
adcl $0,%ecx
adcl $0,%edx
adcl $0,%esi
shrl $2,%esi
negl %esi
andl %esi,%eax
andl %esi,%ebx
andl %esi,%ecx
andl %esi,%edx
movl %eax,(%edi)
movl %ebx,4(%edi)
movl %ecx,8(%edi)
movl %edx,12(%edi)
notl %esi
movl (%ebp),%eax
movl 4(%ebp),%ebx
movl 8(%ebp),%ecx
movl 12(%ebp),%edx
movl 28(%esp),%ebp
andl %esi,%eax
andl %esi,%ebx
andl %esi,%ecx
andl %esi,%edx
orl (%edi),%eax
orl 4(%edi),%ebx
orl 8(%edi),%ecx
orl 12(%edi),%edx
addl (%ebp),%eax
adcl 4(%ebp),%ebx
adcl 8(%ebp),%ecx
adcl 12(%ebp),%edx
movl %eax,(%edi)
movl %ebx,4(%edi)
movl %ecx,8(%edi)
movl %edx,12(%edi)
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size poly1305_emit,.-.L_poly1305_emit_begin
.byte 80,111,108,121,49,51,48,53,32,102,111,114,32,120,56,54
.byte 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32
.byte 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111
.byte 114,103,62,0
.align 4
#else
.text
.align 64
.globl poly1305_init
.type poly1305_init,@function
.align 16
poly1305_init:
.L_poly1305_init_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl 20(%esp),%edi
movl 24(%esp),%esi
movl 28(%esp),%ebp
xorl %eax,%eax
movl %eax,(%edi)
movl %eax,4(%edi)
movl %eax,8(%edi)
movl %eax,12(%edi)
movl %eax,16(%edi)
movl %eax,20(%edi)
cmpl $0,%esi
je .L000nokey
movl (%esi),%eax
movl 4(%esi),%ebx
movl 8(%esi),%ecx
movl 12(%esi),%edx
andl $268435455,%eax
andl $268435452,%ebx
andl $268435452,%ecx
andl $268435452,%edx
movl %eax,24(%edi)
movl %ebx,28(%edi)
movl %ecx,32(%edi)
movl %edx,36(%edi)
movl $0,%eax
.L000nokey:
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size poly1305_init,.-.L_poly1305_init_begin
.globl poly1305_blocks
.type poly1305_blocks,@function
.align 16
poly1305_blocks:
.L_poly1305_blocks_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl 20(%esp),%edi
movl 24(%esp),%esi
movl 28(%esp),%ecx
.L001enter_blocks:
andl $-15,%ecx
jz .L002nodata
subl $64,%esp
movl 24(%edi),%eax
movl 28(%edi),%ebx
leal (%esi,%ecx,1),%ebp
movl 32(%edi),%ecx
movl 36(%edi),%edx
movl %ebp,92(%esp)
movl %esi,%ebp
movl %eax,36(%esp)
movl %ebx,%eax
shrl $2,%eax
movl %ebx,40(%esp)
addl %ebx,%eax
movl %ecx,%ebx
shrl $2,%ebx
movl %ecx,44(%esp)
addl %ecx,%ebx
movl %edx,%ecx
shrl $2,%ecx
movl %edx,48(%esp)
addl %edx,%ecx
movl %eax,52(%esp)
movl %ebx,56(%esp)
movl %ecx,60(%esp)
movl (%edi),%eax
movl 4(%edi),%ebx
movl 8(%edi),%ecx
movl 12(%edi),%esi
movl 16(%edi),%edi
jmp .L003loop
.align 32
.L003loop:
addl (%ebp),%eax
adcl 4(%ebp),%ebx
adcl 8(%ebp),%ecx
adcl 12(%ebp),%esi
leal 16(%ebp),%ebp
adcl 96(%esp),%edi
movl %eax,(%esp)
movl %esi,12(%esp)
mull 36(%esp)
movl %edi,16(%esp)
movl %eax,%edi
movl %ebx,%eax
movl %edx,%esi
mull 60(%esp)
addl %eax,%edi
movl %ecx,%eax
adcl %edx,%esi
mull 56(%esp)
addl %eax,%edi
movl 12(%esp),%eax
adcl %edx,%esi
mull 52(%esp)
addl %eax,%edi
movl (%esp),%eax
adcl %edx,%esi
mull 40(%esp)
movl %edi,20(%esp)
xorl %edi,%edi
addl %eax,%esi
movl %ebx,%eax
adcl %edx,%edi
mull 36(%esp)
addl %eax,%esi
movl %ecx,%eax
adcl %edx,%edi
mull 60(%esp)
addl %eax,%esi
movl 12(%esp),%eax
adcl %edx,%edi
mull 56(%esp)
addl %eax,%esi
movl 16(%esp),%eax
adcl %edx,%edi
imull 52(%esp),%eax
addl %eax,%esi
movl (%esp),%eax
adcl $0,%edi
mull 44(%esp)
movl %esi,24(%esp)
xorl %esi,%esi
addl %eax,%edi
movl %ebx,%eax
adcl %edx,%esi
mull 40(%esp)
addl %eax,%edi
movl %ecx,%eax
adcl %edx,%esi
mull 36(%esp)
addl %eax,%edi
movl 12(%esp),%eax
adcl %edx,%esi
mull 60(%esp)
addl %eax,%edi
movl 16(%esp),%eax
adcl %edx,%esi
imull 56(%esp),%eax
addl %eax,%edi
movl (%esp),%eax
adcl $0,%esi
mull 48(%esp)
movl %edi,28(%esp)
xorl %edi,%edi
addl %eax,%esi
movl %ebx,%eax
adcl %edx,%edi
mull 44(%esp)
addl %eax,%esi
movl %ecx,%eax
adcl %edx,%edi
mull 40(%esp)
addl %eax,%esi
movl 12(%esp),%eax
adcl %edx,%edi
mull 36(%esp)
addl %eax,%esi
movl 16(%esp),%ecx
adcl %edx,%edi
movl %ecx,%edx
imull 60(%esp),%ecx
addl %ecx,%esi
movl 20(%esp),%eax
adcl $0,%edi
imull 36(%esp),%edx
addl %edi,%edx
movl 24(%esp),%ebx
movl 28(%esp),%ecx
movl %edx,%edi
shrl $2,%edx
andl $3,%edi
leal (%edx,%edx,4),%edx
addl %edx,%eax
adcl $0,%ebx
adcl $0,%ecx
adcl $0,%esi
adcl $0,%edi
cmpl 92(%esp),%ebp
jne .L003loop
movl 84(%esp),%edx
addl $64,%esp
movl %eax,(%edx)
movl %ebx,4(%edx)
movl %ecx,8(%edx)
movl %esi,12(%edx)
movl %edi,16(%edx)
.L002nodata:
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size poly1305_blocks,.-.L_poly1305_blocks_begin
.globl poly1305_emit
.type poly1305_emit,@function
.align 16
poly1305_emit:
.L_poly1305_emit_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl 20(%esp),%ebp
.L004enter_emit:
movl 24(%esp),%edi
movl (%ebp),%eax
movl 4(%ebp),%ebx
movl 8(%ebp),%ecx
movl 12(%ebp),%edx
movl 16(%ebp),%esi
addl $5,%eax
adcl $0,%ebx
adcl $0,%ecx
adcl $0,%edx
adcl $0,%esi
shrl $2,%esi
negl %esi
andl %esi,%eax
andl %esi,%ebx
andl %esi,%ecx
andl %esi,%edx
movl %eax,(%edi)
movl %ebx,4(%edi)
movl %ecx,8(%edi)
movl %edx,12(%edi)
notl %esi
movl (%ebp),%eax
movl 4(%ebp),%ebx
movl 8(%ebp),%ecx
movl 12(%ebp),%edx
movl 28(%esp),%ebp
andl %esi,%eax
andl %esi,%ebx
andl %esi,%ecx
andl %esi,%edx
orl (%edi),%eax
orl 4(%edi),%ebx
orl 8(%edi),%ecx
orl 12(%edi),%edx
addl (%ebp),%eax
adcl 4(%ebp),%ebx
adcl 8(%ebp),%ecx
adcl 12(%ebp),%edx
movl %eax,(%edi)
movl %ebx,4(%edi)
movl %ecx,8(%edi)
movl %edx,12(%edi)
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size poly1305_emit,.-.L_poly1305_emit_begin
.byte 80,111,108,121,49,51,48,53,32,102,111,114,32,120,56,54
.byte 44,32,67,82,89,80,84,79,71,65,77,83,32,98,121,32
.byte 60,97,112,112,114,111,64,111,112,101,110,115,115,108,46,111
.byte 114,103,62,0
.align 4
#endif

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from rc4-586.pl. */
#ifdef PIC
.file "rc4-586.S"
.text
.globl RC4
.type RC4,@function
@ -269,11 +268,11 @@ RC4:
popl %ebp
ret
.size RC4,.-.L_RC4_begin
.globl private_RC4_set_key
.type private_RC4_set_key,@function
.globl RC4_set_key
.type RC4_set_key,@function
.align 16
private_RC4_set_key:
.L_private_RC4_set_key_begin:
RC4_set_key:
.L_RC4_set_key_begin:
pushl %ebp
pushl %ebx
pushl %esi
@ -346,7 +345,7 @@ private_RC4_set_key:
popl %ebx
popl %ebp
ret
.size private_RC4_set_key,.-.L_private_RC4_set_key_begin
.size RC4_set_key,.-.L_RC4_set_key_begin
.globl RC4_options
.type RC4_options,@function
.align 16
@ -383,7 +382,6 @@ RC4_options:
.size RC4_options,.-.L_RC4_options_begin
.comm OPENSSL_ia32cap_P,16,4
#else
.file "rc4-586.S"
.text
.globl RC4
.type RC4,@function
@ -648,11 +646,11 @@ RC4:
popl %ebp
ret
.size RC4,.-.L_RC4_begin
.globl private_RC4_set_key
.type private_RC4_set_key,@function
.globl RC4_set_key
.type RC4_set_key,@function
.align 16
private_RC4_set_key:
.L_private_RC4_set_key_begin:
RC4_set_key:
.L_RC4_set_key_begin:
pushl %ebp
pushl %ebx
pushl %esi
@ -722,7 +720,7 @@ private_RC4_set_key:
popl %ebx
popl %ebp
ret
.size private_RC4_set_key,.-.L_private_RC4_set_key_begin
.size RC4_set_key,.-.L_RC4_set_key_begin
.globl RC4_options
.type RC4_options,@function
.align 16

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from rc5-586.pl. */
#ifdef PIC
.file "rc5-586.S"
.text
.globl RC5_32_encrypt
.type RC5_32_encrypt,@function
@ -566,7 +565,6 @@ RC5_32_cbc_encrypt:
.align 64
.size RC5_32_cbc_encrypt,.-.L_RC5_32_cbc_encrypt_begin
#else
.file "rc5-586.S"
.text
.globl RC5_32_encrypt
.type RC5_32_encrypt,@function

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from rmd-586.pl. */
#ifdef PIC
.file "rmd-586.S"
.text
.globl ripemd160_block_asm_data_order
.type ripemd160_block_asm_data_order,@function
@ -1967,7 +1966,6 @@ ripemd160_block_asm_data_order:
ret
.size ripemd160_block_asm_data_order,.-.L_ripemd160_block_asm_data_order_begin
#else
.file "rmd-586.S"
.text
.globl ripemd160_block_asm_data_order
.type ripemd160_block_asm_data_order,@function

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from vpaes-x86.pl. */
#ifdef PIC
.file "vpaes-x86.S"
.text
.align 64
.L_vpaes_consts:
@ -663,7 +662,6 @@ vpaes_cbc_encrypt:
ret
.size vpaes_cbc_encrypt,.-.L_vpaes_cbc_encrypt_begin
#else
.file "vpaes-x86.S"
.text
.align 64
.L_vpaes_consts:

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from wp-mmx.pl. */
#ifdef PIC
.file "wp-mmx.S"
.text
.globl whirlpool_block_mmx
.type whirlpool_block_mmx,@function
@ -1109,7 +1108,6 @@ whirlpool_block_mmx:
.byte 202,45,191,7,173,90,131,51
.size whirlpool_block_mmx,.-.L_whirlpool_block_mmx_begin
#else
.file "wp-mmx.S"
.text
.globl whirlpool_block_mmx
.type whirlpool_block_mmx,@function

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from x86-gf2m.pl. */
#ifdef PIC
.file "x86-gf2m.S"
.text
.type _mul_1x1_mmx,@function
.align 16
@ -251,18 +250,6 @@ bn_GF2m_mul_2x2:
movl 4(%edx),%edx
testl $8388608,%eax
jz .L001ialu
testl $16777216,%eax
jz .L002mmx
testl $2,%edx
jz .L002mmx
movups 8(%esp),%xmm0
shufps $177,%xmm0,%xmm0
.byte 102,15,58,68,192,1
movl 4(%esp),%eax
movups %xmm0,(%eax)
ret
.align 16
.L002mmx:
pushl %ebp
pushl %ebx
pushl %esi
@ -348,7 +335,6 @@ bn_GF2m_mul_2x2:
.byte 62,0
.comm OPENSSL_ia32cap_P,16,4
#else
.file "x86-gf2m.S"
.text
.type _mul_1x1_mmx,@function
.align 16
@ -595,18 +581,6 @@ bn_GF2m_mul_2x2:
movl 4(%edx),%edx
testl $8388608,%eax
jz .L000ialu
testl $16777216,%eax
jz .L001mmx
testl $2,%edx
jz .L001mmx
movups 8(%esp),%xmm0
shufps $177,%xmm0,%xmm0
.byte 102,15,58,68,192,1
movl 4(%esp),%eax
movups %xmm0,(%eax)
ret
.align 16
.L001mmx:
pushl %ebp
pushl %ebx
pushl %esi

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,6 @@
/* $FreeBSD$ */
/* Do not modify. This file is auto-generated from x86cpuid.pl. */
#ifdef PIC
.file "x86cpuid.S"
.text
.globl OPENSSL_ia32_cpuid
.type OPENSSL_ia32_cpuid,@function
@ -237,18 +236,6 @@ OPENSSL_wipe_cpu:
movl (%ecx),%ecx
btl $1,(%ecx)
jnc .L016no_x87
andl $83886080,%ecx
cmpl $83886080,%ecx
jne .L017no_sse2
pxor %xmm0,%xmm0
pxor %xmm1,%xmm1
pxor %xmm2,%xmm2
pxor %xmm3,%xmm3
pxor %xmm4,%xmm4
pxor %xmm5,%xmm5
pxor %xmm6,%xmm6
pxor %xmm7,%xmm7
.L017no_sse2:
.long 4007259865,4007259865,4007259865,4007259865,2430851995
.L016no_x87:
leal 4(%esp),%eax
@ -264,42 +251,15 @@ OPENSSL_atomic_add:
pushl %ebx
nop
movl (%edx),%eax
.L018spin:
.L017spin:
leal (%eax,%ecx,1),%ebx
nop
.long 447811568
jne .L018spin
jne .L017spin
movl %ebx,%eax
popl %ebx
ret
.size OPENSSL_atomic_add,.-.L_OPENSSL_atomic_add_begin
.globl OPENSSL_indirect_call
.type OPENSSL_indirect_call,@function
.align 16
OPENSSL_indirect_call:
.L_OPENSSL_indirect_call_begin:
pushl %ebp
movl %esp,%ebp
subl $28,%esp
movl 12(%ebp),%ecx
movl %ecx,(%esp)
movl 16(%ebp),%edx
movl %edx,4(%esp)
movl 20(%ebp),%eax
movl %eax,8(%esp)
movl 24(%ebp),%eax
movl %eax,12(%esp)
movl 28(%ebp),%eax
movl %eax,16(%esp)
movl 32(%ebp),%eax
movl %eax,20(%esp)
movl 36(%ebp),%eax
movl %eax,24(%esp)
call *8(%ebp)
movl %ebp,%esp
popl %ebp
ret
.size OPENSSL_indirect_call,.-.L_OPENSSL_indirect_call_begin
.globl OPENSSL_cleanse
.type OPENSSL_cleanse,@function
.align 16
@ -309,71 +269,187 @@ OPENSSL_cleanse:
movl 8(%esp),%ecx
xorl %eax,%eax
cmpl $7,%ecx
jae .L019lot
jae .L018lot
cmpl $0,%ecx
je .L020ret
.L021little:
je .L019ret
.L020little:
movb %al,(%edx)
subl $1,%ecx
leal 1(%edx),%edx
jnz .L021little
.L020ret:
jnz .L020little
.L019ret:
ret
.align 16
.L019lot:
.L018lot:
testl $3,%edx
jz .L022aligned
jz .L021aligned
movb %al,(%edx)
leal -1(%ecx),%ecx
leal 1(%edx),%edx
jmp .L019lot
.L022aligned:
jmp .L018lot
.L021aligned:
movl %eax,(%edx)
leal -4(%ecx),%ecx
testl $-4,%ecx
leal 4(%edx),%edx
jnz .L022aligned
jnz .L021aligned
cmpl $0,%ecx
jne .L021little
jne .L020little
ret
.size OPENSSL_cleanse,.-.L_OPENSSL_cleanse_begin
.globl OPENSSL_ia32_rdrand
.type OPENSSL_ia32_rdrand,@function
.globl CRYPTO_memcmp
.type CRYPTO_memcmp,@function
.align 16
OPENSSL_ia32_rdrand:
.L_OPENSSL_ia32_rdrand_begin:
movl $8,%ecx
CRYPTO_memcmp:
.L_CRYPTO_memcmp_begin:
pushl %esi
pushl %edi
movl 12(%esp),%esi
movl 16(%esp),%edi
movl 20(%esp),%ecx
xorl %eax,%eax
xorl %edx,%edx
cmpl $0,%ecx
je .L022no_data
.L023loop:
.byte 15,199,240
jc .L024break
loop .L023loop
.L024break:
cmpl $0,%eax
cmovel %ecx,%eax
movb (%esi),%dl
leal 1(%esi),%esi
xorb (%edi),%dl
leal 1(%edi),%edi
orb %dl,%al
decl %ecx
jnz .L023loop
negl %eax
shrl $31,%eax
.L022no_data:
popl %edi
popl %esi
ret
.size OPENSSL_ia32_rdrand,.-.L_OPENSSL_ia32_rdrand_begin
.globl OPENSSL_ia32_rdseed
.type OPENSSL_ia32_rdseed,@function
.size CRYPTO_memcmp,.-.L_CRYPTO_memcmp_begin
.globl OPENSSL_instrument_bus
.type OPENSSL_instrument_bus,@function
.align 16
OPENSSL_ia32_rdseed:
.L_OPENSSL_ia32_rdseed_begin:
OPENSSL_instrument_bus:
.L_OPENSSL_instrument_bus_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl $0,%eax
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size OPENSSL_instrument_bus,.-.L_OPENSSL_instrument_bus_begin
.globl OPENSSL_instrument_bus2
.type OPENSSL_instrument_bus2,@function
.align 16
OPENSSL_instrument_bus2:
.L_OPENSSL_instrument_bus2_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl $0,%eax
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size OPENSSL_instrument_bus2,.-.L_OPENSSL_instrument_bus2_begin
.globl OPENSSL_ia32_rdrand_bytes
.type OPENSSL_ia32_rdrand_bytes,@function
.align 16
OPENSSL_ia32_rdrand_bytes:
.L_OPENSSL_ia32_rdrand_bytes_begin:
pushl %edi
pushl %ebx
xorl %eax,%eax
movl 12(%esp),%edi
movl 16(%esp),%ebx
cmpl $0,%ebx
je .L024done
movl $8,%ecx
.L025loop:
.byte 15,199,248
.byte 15,199,242
jc .L026break
loop .L025loop
jmp .L024done
.align 16
.L026break:
cmpl $0,%eax
cmovel %ecx,%eax
cmpl $4,%ebx
jb .L027tail
movl %edx,(%edi)
leal 4(%edi),%edi
addl $4,%eax
subl $4,%ebx
jz .L024done
movl $8,%ecx
jmp .L025loop
.align 16
.L027tail:
movb %dl,(%edi)
leal 1(%edi),%edi
incl %eax
shrl $8,%edx
decl %ebx
jnz .L027tail
.L024done:
xorl %edx,%edx
popl %ebx
popl %edi
ret
.size OPENSSL_ia32_rdseed,.-.L_OPENSSL_ia32_rdseed_begin
.size OPENSSL_ia32_rdrand_bytes,.-.L_OPENSSL_ia32_rdrand_bytes_begin
.globl OPENSSL_ia32_rdseed_bytes
.type OPENSSL_ia32_rdseed_bytes,@function
.align 16
OPENSSL_ia32_rdseed_bytes:
.L_OPENSSL_ia32_rdseed_bytes_begin:
pushl %edi
pushl %ebx
xorl %eax,%eax
movl 12(%esp),%edi
movl 16(%esp),%ebx
cmpl $0,%ebx
je .L028done
movl $8,%ecx
.L029loop:
.byte 15,199,250
jc .L030break
loop .L029loop
jmp .L028done
.align 16
.L030break:
cmpl $4,%ebx
jb .L031tail
movl %edx,(%edi)
leal 4(%edi),%edi
addl $4,%eax
subl $4,%ebx
jz .L028done
movl $8,%ecx
jmp .L029loop
.align 16
.L031tail:
movb %dl,(%edi)
leal 1(%edi),%edi
incl %eax
shrl $8,%edx
decl %ebx
jnz .L031tail
.L028done:
xorl %edx,%edx
popl %ebx
popl %edi
ret
.size OPENSSL_ia32_rdseed_bytes,.-.L_OPENSSL_ia32_rdseed_bytes_begin
.hidden OPENSSL_cpuid_setup
.hidden OPENSSL_ia32cap_P
.comm OPENSSL_ia32cap_P,16,4
.section .init
call OPENSSL_cpuid_setup
#else
.file "x86cpuid.S"
.text
.globl OPENSSL_ia32_cpuid
.type OPENSSL_ia32_cpuid,@function
@ -600,18 +676,6 @@ OPENSSL_wipe_cpu:
movl (%ecx),%ecx
btl $1,(%ecx)
jnc .L013no_x87
andl $83886080,%ecx
cmpl $83886080,%ecx
jne .L014no_sse2
pxor %xmm0,%xmm0
pxor %xmm1,%xmm1
pxor %xmm2,%xmm2
pxor %xmm3,%xmm3
pxor %xmm4,%xmm4
pxor %xmm5,%xmm5
pxor %xmm6,%xmm6
pxor %xmm7,%xmm7
.L014no_sse2:
.long 4007259865,4007259865,4007259865,4007259865,2430851995
.L013no_x87:
leal 4(%esp),%eax
@ -627,42 +691,15 @@ OPENSSL_atomic_add:
pushl %ebx
nop
movl (%edx),%eax
.L015spin:
.L014spin:
leal (%eax,%ecx,1),%ebx
nop
.long 447811568
jne .L015spin
jne .L014spin
movl %ebx,%eax
popl %ebx
ret
.size OPENSSL_atomic_add,.-.L_OPENSSL_atomic_add_begin
.globl OPENSSL_indirect_call
.type OPENSSL_indirect_call,@function
.align 16
OPENSSL_indirect_call:
.L_OPENSSL_indirect_call_begin:
pushl %ebp
movl %esp,%ebp
subl $28,%esp
movl 12(%ebp),%ecx
movl %ecx,(%esp)
movl 16(%ebp),%edx
movl %edx,4(%esp)
movl 20(%ebp),%eax
movl %eax,8(%esp)
movl 24(%ebp),%eax
movl %eax,12(%esp)
movl 28(%ebp),%eax
movl %eax,16(%esp)
movl 32(%ebp),%eax
movl %eax,20(%esp)
movl 36(%ebp),%eax
movl %eax,24(%esp)
call *8(%ebp)
movl %ebp,%esp
popl %ebp
ret
.size OPENSSL_indirect_call,.-.L_OPENSSL_indirect_call_begin
.globl OPENSSL_cleanse
.type OPENSSL_cleanse,@function
.align 16
@ -672,64 +709,181 @@ OPENSSL_cleanse:
movl 8(%esp),%ecx
xorl %eax,%eax
cmpl $7,%ecx
jae .L016lot
jae .L015lot
cmpl $0,%ecx
je .L017ret
.L018little:
je .L016ret
.L017little:
movb %al,(%edx)
subl $1,%ecx
leal 1(%edx),%edx
jnz .L018little
.L017ret:
jnz .L017little
.L016ret:
ret
.align 16
.L016lot:
.L015lot:
testl $3,%edx
jz .L019aligned
jz .L018aligned
movb %al,(%edx)
leal -1(%ecx),%ecx
leal 1(%edx),%edx
jmp .L016lot
.L019aligned:
jmp .L015lot
.L018aligned:
movl %eax,(%edx)
leal -4(%ecx),%ecx
testl $-4,%ecx
leal 4(%edx),%edx
jnz .L019aligned
jnz .L018aligned
cmpl $0,%ecx
jne .L018little
jne .L017little
ret
.size OPENSSL_cleanse,.-.L_OPENSSL_cleanse_begin
.globl OPENSSL_ia32_rdrand
.type OPENSSL_ia32_rdrand,@function
.globl CRYPTO_memcmp
.type CRYPTO_memcmp,@function
.align 16
OPENSSL_ia32_rdrand:
.L_OPENSSL_ia32_rdrand_begin:
movl $8,%ecx
CRYPTO_memcmp:
.L_CRYPTO_memcmp_begin:
pushl %esi
pushl %edi
movl 12(%esp),%esi
movl 16(%esp),%edi
movl 20(%esp),%ecx
xorl %eax,%eax
xorl %edx,%edx
cmpl $0,%ecx
je .L019no_data
.L020loop:
.byte 15,199,240
jc .L021break
loop .L020loop
.L021break:
cmpl $0,%eax
cmovel %ecx,%eax
movb (%esi),%dl
leal 1(%esi),%esi
xorb (%edi),%dl
leal 1(%edi),%edi
orb %dl,%al
decl %ecx
jnz .L020loop
negl %eax
shrl $31,%eax
.L019no_data:
popl %edi
popl %esi
ret
.size OPENSSL_ia32_rdrand,.-.L_OPENSSL_ia32_rdrand_begin
.globl OPENSSL_ia32_rdseed
.type OPENSSL_ia32_rdseed,@function
.size CRYPTO_memcmp,.-.L_CRYPTO_memcmp_begin
.globl OPENSSL_instrument_bus
.type OPENSSL_instrument_bus,@function
.align 16
OPENSSL_ia32_rdseed:
.L_OPENSSL_ia32_rdseed_begin:
OPENSSL_instrument_bus:
.L_OPENSSL_instrument_bus_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl $0,%eax
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size OPENSSL_instrument_bus,.-.L_OPENSSL_instrument_bus_begin
.globl OPENSSL_instrument_bus2
.type OPENSSL_instrument_bus2,@function
.align 16
OPENSSL_instrument_bus2:
.L_OPENSSL_instrument_bus2_begin:
pushl %ebp
pushl %ebx
pushl %esi
pushl %edi
movl $0,%eax
popl %edi
popl %esi
popl %ebx
popl %ebp
ret
.size OPENSSL_instrument_bus2,.-.L_OPENSSL_instrument_bus2_begin
.globl OPENSSL_ia32_rdrand_bytes
.type OPENSSL_ia32_rdrand_bytes,@function
.align 16
OPENSSL_ia32_rdrand_bytes:
.L_OPENSSL_ia32_rdrand_bytes_begin:
pushl %edi
pushl %ebx
xorl %eax,%eax
movl 12(%esp),%edi
movl 16(%esp),%ebx
cmpl $0,%ebx
je .L021done
movl $8,%ecx
.L022loop:
.byte 15,199,248
.byte 15,199,242
jc .L023break
loop .L022loop
jmp .L021done
.align 16
.L023break:
cmpl $0,%eax
cmovel %ecx,%eax
cmpl $4,%ebx
jb .L024tail
movl %edx,(%edi)
leal 4(%edi),%edi
addl $4,%eax
subl $4,%ebx
jz .L021done
movl $8,%ecx
jmp .L022loop
.align 16
.L024tail:
movb %dl,(%edi)
leal 1(%edi),%edi
incl %eax
shrl $8,%edx
decl %ebx
jnz .L024tail
.L021done:
xorl %edx,%edx
popl %ebx
popl %edi
ret
.size OPENSSL_ia32_rdseed,.-.L_OPENSSL_ia32_rdseed_begin
.size OPENSSL_ia32_rdrand_bytes,.-.L_OPENSSL_ia32_rdrand_bytes_begin
.globl OPENSSL_ia32_rdseed_bytes
.type OPENSSL_ia32_rdseed_bytes,@function
.align 16
OPENSSL_ia32_rdseed_bytes:
.L_OPENSSL_ia32_rdseed_bytes_begin:
pushl %edi
pushl %ebx
xorl %eax,%eax
movl 12(%esp),%edi
movl 16(%esp),%ebx
cmpl $0,%ebx
je .L025done
movl $8,%ecx
.L026loop:
.byte 15,199,250
jc .L027break
loop .L026loop
jmp .L025done
.align 16
.L027break:
cmpl $4,%ebx
jb .L028tail
movl %edx,(%edi)
leal 4(%edi),%edi
addl $4,%eax
subl $4,%ebx
jz .L025done
movl $8,%ecx
jmp .L026loop
.align 16
.L028tail:
movb %dl,(%edi)
leal 1(%edi),%edi
incl %eax
shrl $8,%edx
decl %ebx
jnz .L028tail
.L025done:
xorl %edx,%edx
popl %ebx
popl %edi
ret
.size OPENSSL_ia32_rdseed_bytes,.-.L_OPENSSL_ia32_rdseed_bytes_begin
.hidden OPENSSL_cpuid_setup
.hidden OPENSSL_ia32cap_P
.comm OPENSSL_ia32cap_P,16,4