• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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