1# This file is generated from a similarly-named Perl script in the BoringSSL 2# source tree. Do not edit by hand. 3 4#if defined(__has_feature) 5#if __has_feature(memory_sanitizer) && !defined(OPENSSL_NO_ASM) 6#define OPENSSL_NO_ASM 7#endif 8#endif 9 10#if defined(__x86_64__) && !defined(OPENSSL_NO_ASM) 11#if defined(BORINGSSL_PREFIX) 12#include <boringssl_prefix_symbols_asm.h> 13#endif 14.text 15 16 17 18 19.globl _CRYPTO_rdrand 20.private_extern _CRYPTO_rdrand 21 22.p2align 4 23_CRYPTO_rdrand: 24 25 xorq %rax,%rax 26.byte 72,15,199,242 27 28 adcq %rax,%rax 29 movq %rdx,0(%rdi) 30 .byte 0xf3,0xc3 31 32 33 34 35 36 37 38.globl _CRYPTO_rdrand_multiple8_buf 39.private_extern _CRYPTO_rdrand_multiple8_buf 40 41.p2align 4 42_CRYPTO_rdrand_multiple8_buf: 43 44 testq %rsi,%rsi 45 jz L$out 46 movq $8,%rdx 47L$loop: 48.byte 72,15,199,241 49 jnc L$err 50 movq %rcx,0(%rdi) 51 addq %rdx,%rdi 52 subq %rdx,%rsi 53 jnz L$loop 54L$out: 55 movq $1,%rax 56 .byte 0xf3,0xc3 57L$err: 58 xorq %rax,%rax 59 .byte 0xf3,0xc3 60 61 62#endif 63