xref: /linux/rust/zerocopy/benches/ref_from_suffix_dynamic_padding.x86-64 (revision b079329b8691768962aa514b8f8c9077ca352459)
1*c3739801SMiguel Ojedabench_ref_from_suffix_dynamic_padding:
2*c3739801SMiguel Ojeda	lea eax, [rsi + rdi]
3*c3739801SMiguel Ojeda	test al, 3
4*c3739801SMiguel Ojeda	jne .LBB5_1
5*c3739801SMiguel Ojeda	movabs rax, 9223372036854775804
6*c3739801SMiguel Ojeda	and rax, rsi
7*c3739801SMiguel Ojeda	cmp rax, 9
8*c3739801SMiguel Ojeda	jae .LBB5_3
9*c3739801SMiguel Ojeda.LBB5_1:
10*c3739801SMiguel Ojeda	xor eax, eax
11*c3739801SMiguel Ojeda	ret
12*c3739801SMiguel Ojeda.LBB5_3:
13*c3739801SMiguel Ojeda	add rax, -9
14*c3739801SMiguel Ojeda	movabs rcx, -6148914691236517205
15*c3739801SMiguel Ojeda	mul rcx
16*c3739801SMiguel Ojeda	shr rdx
17*c3739801SMiguel Ojeda	lea rax, [rdx + 2*rdx]
18*c3739801SMiguel Ojeda	sub rsi, rax
19*c3739801SMiguel Ojeda	or rax, -4
20*c3739801SMiguel Ojeda	add rsi, rdi
21*c3739801SMiguel Ojeda	add rax, rsi
22*c3739801SMiguel Ojeda	add rax, -8
23*c3739801SMiguel Ojeda	ret
24