xref: /linux/rust/zerocopy/benches/new_vec_zeroed.x86-64 (revision b079329b8691768962aa514b8f8c9077ca352459)
1bench_new_vec_zeroed:
2	mov rax, rdi
3	movabs rcx, 1537228672809129301
4	cmp rsi, rcx
5	ja .LBB5_5
6	test rsi, rsi
7	je .LBB5_2
8	push r15
9	push r14
10	push rbx
11	lea rcx, [rsi + rsi]
12	lea rbx, [rcx + 2*rcx]
13	mov r14, rax
14	mov r15, rsi
15	call qword ptr [rip + __rustc::__rust_no_alloc_shim_is_unstable_v2@GOTPCREL]
16	mov esi, 2
17	mov rdi, rbx
18	call qword ptr [rip + __rustc::__rust_alloc_zeroed@GOTPCREL]
19	mov rsi, r15
20	mov rcx, rax
21	mov rax, r14
22	test rcx, rcx
23	pop rbx
24	pop r14
25	pop r15
26	je .LBB5_5
27	mov qword ptr [rax], rsi
28	mov qword ptr [rax + 8], rcx
29	mov qword ptr [rax + 16], rsi
30	ret
31.LBB5_5:
32	movabs rcx, -9223372036854775808
33	mov qword ptr [rax], rcx
34	ret
35.LBB5_2:
36	mov ecx, 2
37	mov qword ptr [rax], rsi
38	mov qword ptr [rax + 8], rcx
39	mov qword ptr [rax + 16], rsi
40	ret
41