|  | // This file is generated from a similarly-named Perl script in the BoringSSL | 
|  | // source tree. Do not edit by hand. | 
|  |  | 
|  | #include <openssl/asm_base.h> | 
|  |  | 
|  | #if !defined(OPENSSL_NO_ASM) && defined(OPENSSL_X86_64) && defined(__ELF__) | 
|  | .text | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | .globl	CRYPTO_rdrand | 
|  | .hidden CRYPTO_rdrand | 
|  | .type	CRYPTO_rdrand,@function | 
|  | .align	16 | 
|  | CRYPTO_rdrand: | 
|  | .cfi_startproc | 
|  | _CET_ENDBR | 
|  | xorq	%rax,%rax | 
|  | rdrand	%rdx | 
|  |  | 
|  | adcq	%rax,%rax | 
|  | movq	%rdx,0(%rdi) | 
|  | ret | 
|  | .cfi_endproc | 
|  | .size	CRYPTO_rdrand,.-CRYPTO_rdrand | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  |  | 
|  | .globl	CRYPTO_rdrand_multiple8_buf | 
|  | .hidden CRYPTO_rdrand_multiple8_buf | 
|  | .type	CRYPTO_rdrand_multiple8_buf,@function | 
|  | .align	16 | 
|  | CRYPTO_rdrand_multiple8_buf: | 
|  | .cfi_startproc | 
|  | _CET_ENDBR | 
|  | testq	%rsi,%rsi | 
|  | jz	.Lout | 
|  | movq	$8,%rdx | 
|  | .Lloop: | 
|  | rdrand	%rcx | 
|  | jnc	.Lerr | 
|  | movq	%rcx,0(%rdi) | 
|  | addq	%rdx,%rdi | 
|  | subq	%rdx,%rsi | 
|  | jnz	.Lloop | 
|  | .Lout: | 
|  | movq	$1,%rax | 
|  | ret | 
|  | .Lerr: | 
|  | xorq	%rax,%rax | 
|  | ret | 
|  | .cfi_endproc | 
|  | .size	CRYPTO_rdrand_multiple8_buf,.-CRYPTO_rdrand_multiple8_buf | 
|  | #endif |