rlp uint perf
77 removals
Words removed | 123 |
Total words | 282 |
Words removed (%) | 43.62 |
153 lines
21 additions
Words added | 28 |
Total words | 187 |
Words added (%) | 14.97 |
96 lines
<u64 as Encodable>::encode:
<u64 as Encodable>::encode:
.cfi_startproc
.cfi_startproc
push r15
push r15
.cfi_def_cfa_offset 16
.cfi_def_cfa_offset 16
push r14
push r14
.cfi_def_cfa_offset 24
.cfi_def_cfa_offset 24
push r12
push r12
.cfi_def_cfa_offset 32
.cfi_def_cfa_offset 32
push rbx
push rbx
.cfi_def_cfa_offset 40
.cfi_def_cfa_offset 40
push rax
push rax
.cfi_def_cfa_offset 48
.cfi_def_cfa_offset 48
.cfi_offset rbx, -40
.cfi_offset rbx, -40
.cfi_offset r12, -32
.cfi_offset r12, -32
.cfi_offset r14, -24
.cfi_offset r14, -24
.cfi_offset r15, -16
.cfi_offset r15, -16
mov rbx, rsi
mov rbx, rsi
mov rsi, qword ptr [rdi]
mov rsi, qword ptr [rdi]
mov r14, rdx
mov r14, rdx
test rsi, rsi
test rsi, rsi
je .LBB49_1
je .LBB26_1
cmp rsi, 128
cmp rsi, 128
jae .LBB49_4
jae .LBB26_4
mov rax, qword ptr [r14 + 72]
mov rax, qword ptr [r14 + 72]
mov rdi, rbx
mov rdi, rbx
jmp .LBB49_2
jmp .LBB26_2
.LBB49_1:
.LBB26_1:
mov rax, qword ptr [r14 + 72]
mov rax, qword ptr [r14 + 72]
mov esi, 128
mov esi, 128
mov rdi, rbx
mov rdi, rbx
.LBB49_2:
.LBB26_2:
add rsp, 8
add rsp, 8
.cfi_def_cfa_offset 40
.cfi_def_cfa_offset 40
pop rbx
pop rbx
.cfi_def_cfa_offset 32
.cfi_def_cfa_offset 32
pop r12
pop r12
.cfi_def_cfa_offset 24
.cfi_def_cfa_offset 24
pop r14
pop r14
.cfi_def_cfa_offset 16
.cfi_def_cfa_offset 16
pop r15
pop r15
.cfi_def_cfa_offset 8
.cfi_def_cfa_offset 8
jmp rax
jmp rax
.LBB49_4:
.LBB26_4:
.cfi_def_cfa_offset 48
.cfi_def_cfa_offset 48
movbe qword ptr [rsp], rsi
lzcnt rax, rsi
bswap rsi
test sil, sil
je .LBB49_6
xor eax, eax
jmp .LBB49_13
.LBB49_6:
mov eax, 1
test esi, 65280
jne .LBB49_13
mov eax, 2
test esi, 16711680
jne .LBB49_13
mov rcx, rsi
shr rcx, 24
mov eax, 3
test cl, cl
jne .LBB49_13
mov rcx, rsi
shr rcx, 32
mov eax, 4
test cl, cl
jne .LBB49_13
mov rcx, rsi
shr rcx, 40
mov eax, 5
test cl, cl
jne .LBB49_13
mov rcx, rsi
shr rcx, 48
mov eax, 6
test cl, cl
jne .LBB49_13
shr rsi, 56
mov eax, 7
mov ecx, 8
je .LBB49_14
.LBB49_13:
mov rcx, rax
.LBB49_14:
mov r15d, 8
mov r15d, 8
lea r12, [rsp + rcx]
movbe qword ptr [rsp], rsi
mov rdi, rbx
mov rdi, rbx
sub r15, rcx
shr rax, 3
mov eax, r15d
sub r15, rax
or al, -128
movzx esi, al
lea r12, [rsp + rax]
mov ecx, r15d
or cl, -128
movzx esi, cl
call qword ptr [r14 + 72]
call qword ptr [r14 + 72]
mov rdi, rbx
mov rdi, rbx
mov rsi, r12
mov rsi, r12
mov rdx, r15
mov rdx, r15
call qword ptr [r14 + 56]
call qword ptr [r14 + 56]
add rsp, 8
add rsp, 8
.cfi_def_cfa_offset 40
.cfi_def_cfa_offset 40
pop rbx
pop rbx
.cfi_def_cfa_offset 32
.cfi_def_cfa_offset 32
pop r12
pop r12
.cfi_def_cfa_offset 24
.cfi_def_cfa_offset 24
pop r14
pop r14
.cfi_def_cfa_offset 16
.cfi_def_cfa_offset 16
pop r15
pop r15
.cfi_def_cfa_offset 8
.cfi_def_cfa_offset 8
ret
ret