1// This file is generated from a similarly-named Perl script in the BoringSSL 2// source tree. Do not edit by hand. 3 4#include <openssl/asm_base.h> 5 6#if !defined(OPENSSL_NO_ASM) && defined(OPENSSL_X86_64) && defined(__ELF__) 7.text 8 9 10 11 12.globl CRYPTO_rdrand 13.hidden CRYPTO_rdrand 14.type CRYPTO_rdrand,@function 15.align 16 16CRYPTO_rdrand: 17.cfi_startproc 18_CET_ENDBR 19 xorq %rax,%rax 20.byte 72,15,199,242 21 22 adcq %rax,%rax 23 movq %rdx,0(%rdi) 24 ret 25.cfi_endproc 26.size CRYPTO_rdrand,.-CRYPTO_rdrand 27 28 29 30 31 32.globl CRYPTO_rdrand_multiple8_buf 33.hidden CRYPTO_rdrand_multiple8_buf 34.type CRYPTO_rdrand_multiple8_buf,@function 35.align 16 36CRYPTO_rdrand_multiple8_buf: 37.cfi_startproc 38_CET_ENDBR 39 testq %rsi,%rsi 40 jz .Lout 41 movq $8,%rdx 42.Lloop: 43.byte 72,15,199,241 44 jnc .Lerr 45 movq %rcx,0(%rdi) 46 addq %rdx,%rdi 47 subq %rdx,%rsi 48 jnz .Lloop 49.Lout: 50 movq $1,%rax 51 ret 52.Lerr: 53 xorq %rax,%rax 54 ret 55.cfi_endproc 56.size CRYPTO_rdrand_multiple8_buf,.-CRYPTO_rdrand_multiple8_buf 57#endif 58