Created
November 15, 2023 16:21
-
-
Save tylerarnold/27e9eac161432412038155b8d6a79ab4 to your computer and use it in GitHub Desktop.
x86 assembly of rust atomic implementation with acquire /release semantics
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::fold: | |
sub rsp, 56 | |
mov rcx, rsi | |
mov rax, rdi | |
mov edi, dword ptr [rax + 8] | |
mov esi, dword ptr [rax + 12] | |
mov rax, qword ptr [rax] | |
mov rdx, qword ptr [rcx + 16] | |
mov qword ptr [rsp + 16], rdx | |
movups xmm0, xmmword ptr [rcx] | |
movaps xmmword ptr [rsp], xmm0 | |
mov qword ptr [rsp + 24], rax | |
mov rax, qword ptr [rip + core::iter::traits::iterator::Iterator::fold@GOTPCREL] | |
mov rdx, rsp | |
call rax | |
jmp .LBB0_3 | |
.LBB0_1: | |
xor eax, eax | |
test al, 1 | |
jne .LBB0_5 | |
jmp .LBB0_4 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB0_1 | |
.LBB0_3: | |
add rsp, 56 | |
ret | |
.LBB0_4: | |
xor eax, eax | |
test al, 1 | |
jne .LBB0_7 | |
jmp .LBB0_6 | |
.LBB0_5: | |
jmp .LBB0_4 | |
.LBB0_6: | |
mov rdi, qword ptr [rsp + 40] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB0_7: | |
jmp .LBB0_6 | |
<core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::size_hint: | |
push rax | |
mov rax, rdi | |
mov qword ptr [rsp], rax | |
add rsi, 8 | |
call qword ptr [rip + core::iter::range::<impl core::iter::traits::iterator::Iterator for core::ops::range::Range<A>>::size_hint@GOTPCREL] | |
mov rax, qword ptr [rsp] | |
pop rcx | |
ret | |
<alloc::vec::into_iter::IntoIter<T,A> as core::iter::traits::iterator::Iterator>::next: | |
sub rsp, 168 | |
mov qword ptr [rsp], rsi | |
mov qword ptr [rsp + 8], rdi | |
mov qword ptr [rsp + 16], rdi | |
mov rax, qword ptr [rsi + 16] | |
cmp rax, qword ptr [rsi + 24] | |
je .LBB2_2 | |
xor eax, eax | |
test al, 1 | |
jne .LBB2_4 | |
jmp .LBB2_3 | |
.LBB2_2: | |
mov rax, qword ptr [rsp + 8] | |
mov qword ptr [rax], 0 | |
jmp .LBB2_6 | |
.LBB2_3: | |
mov rax, qword ptr [rsp + 8] | |
mov rdx, qword ptr [rsp] | |
mov rcx, qword ptr [rdx + 16] | |
mov rsi, qword ptr [rdx + 16] | |
add rsi, 24 | |
mov qword ptr [rdx + 16], rsi | |
mov rdx, qword ptr [rcx] | |
mov qword ptr [rsp + 48], rdx | |
mov rdx, qword ptr [rcx + 8] | |
mov qword ptr [rsp + 56], rdx | |
mov rcx, qword ptr [rcx + 16] | |
mov qword ptr [rsp + 64], rcx | |
mov rcx, qword ptr [rsp + 48] | |
mov qword ptr [rax], rcx | |
mov rcx, qword ptr [rsp + 56] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsp + 64] | |
mov qword ptr [rax + 16], rcx | |
jmp .LBB2_5 | |
.LBB2_4: | |
mov rax, qword ptr [rsp] | |
mov rcx, qword ptr [rax + 24] | |
add rcx, -1 | |
mov qword ptr [rsp + 160], rcx | |
mov rcx, qword ptr [rsp + 160] | |
mov qword ptr [rsp + 80], rcx | |
mov rcx, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 72], rcx | |
mov rcx, qword ptr [rsp + 72] | |
mov qword ptr [rax + 24], rcx | |
lea rdi, [rip + str.0] | |
mov esi, 81 | |
call qword ptr [rip + core::panicking::panic_nounwind@GOTPCREL] | |
lea rdi, [rsp + 112] | |
xor esi, esi | |
mov edx, 24 | |
call memset@PLT | |
mov rax, qword ptr [rsp + 8] | |
mov rcx, qword ptr [rsp + 112] | |
mov qword ptr [rsp + 88], rcx | |
mov rcx, qword ptr [rsp + 120] | |
mov qword ptr [rsp + 96], rcx | |
mov rcx, qword ptr [rsp + 128] | |
mov qword ptr [rsp + 104], rcx | |
mov rcx, qword ptr [rsp + 88] | |
mov qword ptr [rsp + 136], rcx | |
mov rcx, qword ptr [rsp + 96] | |
mov qword ptr [rsp + 144], rcx | |
mov rcx, qword ptr [rsp + 104] | |
mov qword ptr [rsp + 152], rcx | |
mov rcx, qword ptr [rsp + 136] | |
mov qword ptr [rsp + 24], rcx | |
mov rcx, qword ptr [rsp + 144] | |
mov qword ptr [rsp + 32], rcx | |
mov rcx, qword ptr [rsp + 152] | |
mov qword ptr [rsp + 40], rcx | |
mov rcx, qword ptr [rsp + 24] | |
mov qword ptr [rax], rcx | |
mov rcx, qword ptr [rsp + 32] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsp + 40] | |
mov qword ptr [rax + 16], rcx | |
.LBB2_5: | |
jmp .LBB2_6 | |
.LBB2_6: | |
mov rax, qword ptr [rsp + 16] | |
add rsp, 168 | |
ret | |
<alloc::vec::into_iter::IntoIter<T,A> as core::iter::traits::iterator::Iterator>::size_hint: | |
sub rsp, 72 | |
mov qword ptr [rsp + 16], rsi | |
mov qword ptr [rsp + 24], rdi | |
mov qword ptr [rsp + 32], rdi | |
xor eax, eax | |
test al, 1 | |
jne .LBB3_2 | |
mov rax, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rax + 24] | |
mov qword ptr [rsp], rcx | |
mov rax, qword ptr [rax + 16] | |
mov qword ptr [rsp + 8], rax | |
mov al, 1 | |
test al, 1 | |
jne .LBB3_4 | |
jmp .LBB3_3 | |
.LBB3_2: | |
mov rcx, qword ptr [rsp + 16] | |
mov rax, qword ptr [rcx + 24] | |
mov rcx, qword ptr [rcx + 16] | |
sub rax, rcx | |
mov qword ptr [rsp + 40], rax | |
jmp .LBB3_8 | |
.LBB3_3: | |
mov byte ptr [rsp + 71], 0 | |
jmp .LBB3_5 | |
.LBB3_4: | |
mov byte ptr [rsp + 71], 1 | |
.LBB3_5: | |
mov al, byte ptr [rsp + 71] | |
xor al, -1 | |
test al, 1 | |
jne .LBB3_7 | |
mov rcx, qword ptr [rsp + 8] | |
mov rax, qword ptr [rsp] | |
sub rax, rcx | |
mov ecx, 24 | |
xor edx, edx | |
div rcx | |
mov qword ptr [rsp + 40], rax | |
jmp .LBB3_8 | |
.LBB3_7: | |
lea rdi, [rip + .L__unnamed_1] | |
lea rdx, [rip + .L__unnamed_2] | |
mov rax, qword ptr [rip + core::panicking::panic@GOTPCREL] | |
mov esi, 73 | |
call rax | |
ud2 | |
.LBB3_8: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 24] | |
mov rdx, qword ptr [rsp + 40] | |
mov rsi, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 56], rsi | |
mov qword ptr [rsp + 48], 1 | |
mov qword ptr [rcx], rdx | |
mov rsi, qword ptr [rsp + 48] | |
mov rdx, qword ptr [rsp + 56] | |
mov qword ptr [rcx + 8], rsi | |
mov qword ptr [rcx + 16], rdx | |
add rsp, 72 | |
ret | |
<std::thread::Builder::spawn_unchecked_::MaybeDangling<T> as core::ops::drop::Drop>::drop: | |
ret | |
<core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index_mut: | |
sub rsp, 72 | |
mov qword ptr [rsp], rdi | |
mov qword ptr [rsp + 8], rsi | |
mov qword ptr [rsp + 16], rdx | |
mov qword ptr [rsp + 24], rcx | |
mov qword ptr [rsp + 32], r8 | |
cmp rdi, rsi | |
ja .LBB5_2 | |
mov rax, qword ptr [rsp + 8] | |
mov rcx, qword ptr [rsp + 24] | |
cmp rax, rcx | |
ja .LBB5_4 | |
jmp .LBB5_3 | |
.LBB5_2: | |
mov rdx, qword ptr [rsp + 32] | |
mov rsi, qword ptr [rsp + 8] | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rip + core::slice::index::slice_index_order_fail@GOTPCREL] | |
call rax | |
ud2 | |
.LBB5_3: | |
mov rdx, qword ptr [rsp] | |
mov rcx, qword ptr [rsp + 16] | |
mov rax, qword ptr [rsp + 8] | |
sub rax, rdx | |
add rcx, rdx | |
mov qword ptr [rsp + 56], rcx | |
mov qword ptr [rsp + 64], rax | |
mov rcx, qword ptr [rsp + 56] | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 40], rcx | |
mov qword ptr [rsp + 48], rax | |
mov rax, qword ptr [rsp + 40] | |
mov rdx, qword ptr [rsp + 48] | |
add rsp, 72 | |
ret | |
.LBB5_4: | |
mov rdx, qword ptr [rsp + 32] | |
mov rsi, qword ptr [rsp + 24] | |
mov rdi, qword ptr [rsp + 8] | |
mov rax, qword ptr [rip + core::slice::index::slice_end_index_len_fail@GOTPCREL] | |
call rax | |
ud2 | |
<alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter: | |
sub rsp, 248 | |
mov qword ptr [rsp + 24], rsi | |
mov qword ptr [rsp + 32], rdi | |
mov qword ptr [rsp + 40], rdi | |
mov byte ptr [rsp + 167], 1 | |
mov rax, qword ptr [rip + <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::size_hint@GOTPCREL] | |
lea rdi, [rsp + 72] | |
call rax | |
jmp .LBB6_3 | |
.LBB6_1: | |
test byte ptr [rsp + 167], 1 | |
jne .LBB6_16 | |
jmp .LBB6_15 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 232], rcx | |
mov dword ptr [rsp + 240], eax | |
jmp .LBB6_1 | |
.LBB6_3: | |
cmp qword ptr [rsp + 80], 1 | |
jne .LBB6_5 | |
mov rdi, qword ptr [rsp + 88] | |
mov rax, qword ptr [rip + alloc::raw_vec::RawVec<T,A>::allocate_in@GOTPCREL] | |
xor esi, esi | |
call rax | |
mov qword ptr [rsp + 8], rdx | |
mov qword ptr [rsp + 16], rax | |
jmp .LBB6_6 | |
.LBB6_5: | |
xor eax, eax | |
test al, 1 | |
jne .LBB6_12 | |
jmp .LBB6_11 | |
.LBB6_6: | |
mov rax, qword ptr [rsp + 24] | |
mov rcx, qword ptr [rsp + 8] | |
mov rdx, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 48], rdx | |
mov qword ptr [rsp + 56], rcx | |
mov qword ptr [rsp + 64], 0 | |
mov byte ptr [rsp + 167], 0 | |
movups xmm0, xmmword ptr [rax] | |
movaps xmmword ptr [rsp + 144], xmm0 | |
mov rax, qword ptr [rip + <alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend@GOTPCREL] | |
lea rdi, [rsp + 48] | |
lea rsi, [rsp + 144] | |
call rax | |
jmp .LBB6_9 | |
.LBB6_7: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::vec::Vec<std::thread::JoinHandle<()>>>@GOTPCREL] | |
lea rdi, [rsp + 48] | |
call rax | |
jmp .LBB6_1 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 232], rcx | |
mov dword ptr [rsp + 240], eax | |
jmp .LBB6_7 | |
.LBB6_9: | |
mov rax, qword ptr [rsp + 40] | |
mov rcx, qword ptr [rsp + 32] | |
mov rdx, qword ptr [rsp + 48] | |
mov qword ptr [rcx], rdx | |
mov rdx, qword ptr [rsp + 56] | |
mov qword ptr [rcx + 8], rdx | |
mov rdx, qword ptr [rsp + 64] | |
mov qword ptr [rcx + 16], rdx | |
add rsp, 248 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB6_11: | |
mov qword ptr [rsp + 216], 0 | |
lea rax, [rip + .L__unnamed_3] | |
mov qword ptr [rsp + 96], rax | |
mov qword ptr [rsp + 104], 1 | |
mov rcx, qword ptr [rsp + 216] | |
mov rax, qword ptr [rsp + 224] | |
mov qword ptr [rsp + 128], rcx | |
mov qword ptr [rsp + 136], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 112], rax | |
mov qword ptr [rsp + 120], 0 | |
lea rsi, [rip + .L__unnamed_5] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 96] | |
call rax | |
jmp .LBB6_13 | |
.LBB6_12: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 168] | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
jmp .LBB6_14 | |
.LBB6_13: | |
ud2 | |
.LBB6_14: | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 168] | |
call rax | |
jmp .LBB6_13 | |
.LBB6_15: | |
mov rdi, qword ptr [rsp + 232] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB6_16: | |
jmp .LBB6_15 | |
<core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once: | |
push rax | |
call core::ops::function::FnOnce::call_once | |
pop rax | |
ret | |
<core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once: | |
push rax | |
call qword ptr [rip + std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}@GOTPCREL] | |
pop rax | |
ret | |
<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 56 | |
mov rax, qword ptr [rdi] | |
mov rcx, qword ptr [rax] | |
mov rax, qword ptr [rax + 8] | |
mov qword ptr [rsp + 32], rcx | |
mov rcx, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 24], rcx | |
mov rcx, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rax | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::raw_vec::RawVec<std::thread::JoinHandle<()>>>@GOTPCREL] | |
lea rdi, [rsp + 8] | |
call rax | |
jmp .LBB9_3 | |
.LBB9_1: | |
xor eax, eax | |
test al, 1 | |
jne .LBB9_5 | |
jmp .LBB9_4 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB9_1 | |
.LBB9_3: | |
add rsp, 56 | |
ret | |
.LBB9_4: | |
mov rdi, qword ptr [rsp + 40] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB9_5: | |
jmp .LBB9_4 | |
std::sys_common::backtrace::__rust_begin_short_backtrace: | |
push rax | |
call example::main::{{closure}}::{{closure}} | |
pop rax | |
ret | |
std::io::Write::write_all: | |
sub rsp, 184 | |
mov qword ptr [rsp + 32], rdi | |
mov qword ptr [rsp + 40], rsi | |
mov qword ptr [rsp + 48], rdx | |
.LBB11_1: | |
cmp qword ptr [rsp + 48], 0 | |
sete al | |
xor al, -1 | |
test al, 1 | |
jne .LBB11_3 | |
mov qword ptr [rsp + 56], 0 | |
jmp .LBB11_4 | |
.LBB11_3: | |
mov rsi, qword ptr [rsp + 32] | |
mov rdx, qword ptr [rsp + 40] | |
mov rcx, qword ptr [rsp + 48] | |
lea rdi, [rsp + 64] | |
call qword ptr [rip + <std::sys::unix::stdio::Stderr as std::io::Write>::write@GOTPCREL] | |
cmp qword ptr [rsp + 64], 0 | |
je .LBB11_5 | |
jmp .LBB11_6 | |
.LBB11_4: | |
mov rax, qword ptr [rsp + 56] | |
add rsp, 184 | |
ret | |
.LBB11_5: | |
cmp qword ptr [rsp + 72], 0 | |
je .LBB11_7 | |
jmp .LBB11_8 | |
.LBB11_6: | |
lea rax, [rsp + 72] | |
mov qword ptr [rsp + 88], rax | |
mov rdi, qword ptr [rsp + 88] | |
call std::io::error::Error::kind | |
mov byte ptr [rsp + 31], al | |
jmp .LBB11_16 | |
.LBB11_7: | |
lea rax, [rip + .L__unnamed_8] | |
mov qword ptr [rsp + 112], rax | |
mov rax, qword ptr [rsp + 112] | |
mov qword ptr [rsp + 104], rax | |
mov rax, qword ptr [rsp + 104] | |
mov qword ptr [rsp + 80], rax | |
mov rax, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 56], rax | |
jmp .LBB11_9 | |
.LBB11_8: | |
mov rax, qword ptr [rsp + 72] | |
mov qword ptr [rsp], rax | |
mov rcx, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 8], rcx | |
mov rcx, qword ptr [rsp + 48] | |
mov qword ptr [rsp + 16], rcx | |
cmp rax, rcx | |
ja .LBB11_11 | |
jmp .LBB11_10 | |
.LBB11_9: | |
jmp .LBB11_4 | |
.LBB11_10: | |
mov rdx, qword ptr [rsp] | |
mov rcx, qword ptr [rsp + 8] | |
mov rax, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 120], rcx | |
mov qword ptr [rsp + 128], rax | |
mov rax, qword ptr [rsp + 128] | |
sub rax, rdx | |
add rcx, rdx | |
mov qword ptr [rsp + 152], rcx | |
mov qword ptr [rsp + 160], rax | |
mov rcx, qword ptr [rsp + 152] | |
mov rax, qword ptr [rsp + 160] | |
mov qword ptr [rsp + 136], rcx | |
mov qword ptr [rsp + 144], rax | |
mov rcx, qword ptr [rsp + 136] | |
mov rax, qword ptr [rsp + 144] | |
mov qword ptr [rsp + 40], rcx | |
mov qword ptr [rsp + 48], rax | |
jmp .LBB11_12 | |
.LBB11_11: | |
mov rsi, qword ptr [rsp + 16] | |
mov rdi, qword ptr [rsp] | |
lea rdx, [rip + .L__unnamed_9] | |
mov rax, qword ptr [rip + core::slice::index::slice_start_index_len_fail@GOTPCREL] | |
call rax | |
jmp .LBB11_15 | |
.LBB11_12: | |
cmp qword ptr [rsp + 64], 1 | |
je .LBB11_19 | |
jmp .LBB11_20 | |
.LBB11_13: | |
cmp qword ptr [rsp + 64], 1 | |
je .LBB11_22 | |
jmp .LBB11_23 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 168], rcx | |
mov dword ptr [rsp + 176], eax | |
jmp .LBB11_13 | |
.LBB11_15: | |
ud2 | |
.LBB11_16: | |
mov al, byte ptr [rsp + 31] | |
mov byte ptr [rsp + 103], al | |
movzx eax, byte ptr [rsp + 103] | |
movzx ecx, byte ptr [rip + .L__unnamed_10] | |
cmp rax, rcx | |
je .LBB11_18 | |
mov rax, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 56], rax | |
jmp .LBB11_9 | |
.LBB11_18: | |
jmp .LBB11_12 | |
.LBB11_19: | |
mov al, 1 | |
test al, 1 | |
jne .LBB11_21 | |
jmp .LBB11_20 | |
.LBB11_20: | |
jmp .LBB11_1 | |
.LBB11_21: | |
lea rdi, [rsp + 64] | |
add rdi, 8 | |
call qword ptr [rip + core::ptr::drop_in_place<std::io::error::Error>@GOTPCREL] | |
jmp .LBB11_20 | |
.LBB11_22: | |
mov al, 1 | |
test al, 1 | |
jne .LBB11_24 | |
jmp .LBB11_23 | |
.LBB11_23: | |
mov rdi, qword ptr [rsp + 168] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB11_24: | |
lea rdi, [rsp + 72] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::io::error::Error>@GOTPCREL] | |
call rax | |
jmp .LBB11_23 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
std::io::Write::write_fmt: | |
sub rsp, 88 | |
mov rdx, rsi | |
mov byte ptr [rsp + 55], 1 | |
mov qword ptr [rsp + 16], rdi | |
mov qword ptr [rsp + 24], 0 | |
lea rsi, [rip + .L__unnamed_11] | |
mov rax, qword ptr [rip + core::fmt::write@GOTPCREL] | |
lea rdi, [rsp + 16] | |
call rax | |
mov byte ptr [rsp + 7], al | |
jmp .LBB12_3 | |
.LBB12_1: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::io::Write::write_fmt::Adapter<std::sys::unix::stdio::Stderr>>@GOTPCREL] | |
lea rdi, [rsp + 16] | |
call rax | |
jmp .LBB12_13 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 72], rcx | |
mov dword ptr [rsp + 80], eax | |
jmp .LBB12_1 | |
.LBB12_3: | |
mov al, byte ptr [rsp + 7] | |
and al, 1 | |
mov byte ptr [rsp + 39], al | |
mov al, byte ptr [rsp + 39] | |
and al, 1 | |
movzx eax, al | |
cmp rax, 0 | |
jne .LBB12_5 | |
mov qword ptr [rsp + 8], 0 | |
jmp .LBB12_6 | |
.LBB12_5: | |
mov rdx, qword ptr [rsp + 24] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
sete al | |
xor al, -1 | |
test al, 1 | |
jne .LBB12_8 | |
jmp .LBB12_7 | |
.LBB12_6: | |
test byte ptr [rsp + 55], 1 | |
jne .LBB12_11 | |
jmp .LBB12_10 | |
.LBB12_7: | |
lea rax, [rip + .L__unnamed_12] | |
mov qword ptr [rsp + 64], rax | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 56], rax | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 40], rax | |
mov rax, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 8], rax | |
jmp .LBB12_9 | |
.LBB12_8: | |
mov byte ptr [rsp + 55], 0 | |
mov rax, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 8], rax | |
.LBB12_9: | |
jmp .LBB12_6 | |
.LBB12_10: | |
mov rax, qword ptr [rsp + 8] | |
add rsp, 88 | |
ret | |
.LBB12_11: | |
lea rdi, [rsp + 16] | |
add rdi, 8 | |
call qword ptr [rip + core::ptr::drop_in_place<core::result::Result<(),std::io::error::Error>>@GOTPCREL] | |
jmp .LBB12_10 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB12_13: | |
mov rdi, qword ptr [rsp + 72] | |
call _Unwind_Resume@PLT | |
ud2 | |
std::io::error::repr_bitpacked::decode_repr: | |
sub rsp, 136 | |
mov qword ptr [rsp + 24], rsi | |
mov qword ptr [rsp + 32], rdi | |
mov qword ptr [rsp + 40], rdi | |
mov byte ptr [rsp + 95], 1 | |
mov rax, rsi | |
mov qword ptr [rsp + 48], rax | |
mov eax, esi | |
and eax, 3 | |
mov qword ptr [rsp + 56], rax | |
sub rax, 3 | |
ja .LBB13_1 | |
mov rax, qword ptr [rsp + 56] | |
lea rcx, [rip + .LJTI13_0] | |
movsxd rax, dword ptr [rcx + 4*rax] | |
add rax, rcx | |
jmp rax | |
.LBB13_1: | |
lea rdi, [rip + .L__unnamed_13] | |
lea rdx, [rip + .L__unnamed_14] | |
mov rax, qword ptr [rip + core::panicking::panic@GOTPCREL] | |
mov esi, 40 | |
call rax | |
jmp .LBB13_15 | |
.LBB13_2: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 48] | |
sar rcx, 32 | |
mov dword ptr [rax + 4], ecx | |
mov byte ptr [rax], 0 | |
jmp .LBB13_6 | |
.LBB13_3: | |
mov rax, qword ptr [rsp + 48] | |
shr rax, 32 | |
mov edi, eax | |
call std::io::error::repr_bitpacked::kind_from_prim | |
mov byte ptr [rsp + 23], al | |
jmp .LBB13_9 | |
.LBB13_4: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 72], rcx | |
mov rcx, qword ptr [rsp + 72] | |
mov qword ptr [rax + 8], rcx | |
mov byte ptr [rax], 2 | |
jmp .LBB13_6 | |
.LBB13_5: | |
mov rax, qword ptr [rsp + 24] | |
dec rax | |
mov qword ptr [rsp + 128], rax | |
mov rax, qword ptr [rsp + 128] | |
mov qword ptr [rsp + 104], rax | |
mov rax, qword ptr [rsp + 104] | |
mov qword ptr [rsp + 96], rax | |
mov rax, qword ptr [rsp + 96] | |
mov byte ptr [rsp + 95], 0 | |
mov qword ptr [rsp + 80], rax | |
mov rdi, qword ptr [rsp + 80] | |
mov rax, qword ptr [rip + std::io::error::repr_bitpacked::Repr::data::{{closure}}@GOTPCREL] | |
call rax | |
mov qword ptr [rsp + 8], rax | |
jmp .LBB13_12 | |
.LBB13_6: | |
test byte ptr [rsp + 95], 1 | |
jne .LBB13_14 | |
jmp .LBB13_13 | |
.LBB13_7: | |
test byte ptr [rsp + 95], 1 | |
jne .LBB13_17 | |
jmp .LBB13_16 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 112], rcx | |
mov dword ptr [rsp + 120], eax | |
jmp .LBB13_7 | |
.LBB13_9: | |
mov al, byte ptr [rsp + 23] | |
mov byte ptr [rsp + 71], al | |
mov eax, 1 | |
xor ecx, ecx | |
cmp byte ptr [rsp + 71], 41 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB13_11 | |
ud2 | |
.LBB13_11: | |
mov rax, qword ptr [rsp + 32] | |
mov cl, byte ptr [rsp + 71] | |
mov byte ptr [rax + 1], cl | |
mov byte ptr [rax], 1 | |
jmp .LBB13_6 | |
.LBB13_12: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 8] | |
mov qword ptr [rax + 8], rcx | |
mov byte ptr [rax], 3 | |
jmp .LBB13_6 | |
.LBB13_13: | |
mov rax, qword ptr [rsp + 40] | |
add rsp, 136 | |
ret | |
.LBB13_14: | |
jmp .LBB13_13 | |
.LBB13_15: | |
ud2 | |
.LBB13_16: | |
mov rdi, qword ptr [rsp + 112] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB13_17: | |
jmp .LBB13_16 | |
.LJTI13_0: | |
.long .LBB13_4-.LJTI13_0 | |
.long .LBB13_5-.LJTI13_0 | |
.long .LBB13_2-.LJTI13_0 | |
.long .LBB13_3-.LJTI13_0 | |
std::io::error::repr_bitpacked::decode_repr: | |
sub rsp, 136 | |
mov qword ptr [rsp + 24], rsi | |
mov qword ptr [rsp + 32], rdi | |
mov qword ptr [rsp + 40], rdi | |
mov byte ptr [rsp + 95], 1 | |
mov rax, rsi | |
mov qword ptr [rsp + 48], rax | |
mov eax, esi | |
and eax, 3 | |
mov qword ptr [rsp + 56], rax | |
sub rax, 3 | |
ja .LBB14_1 | |
mov rax, qword ptr [rsp + 56] | |
lea rcx, [rip + .LJTI14_0] | |
movsxd rax, dword ptr [rcx + 4*rax] | |
add rax, rcx | |
jmp rax | |
.LBB14_1: | |
lea rdi, [rip + .L__unnamed_13] | |
lea rdx, [rip + .L__unnamed_14] | |
mov rax, qword ptr [rip + core::panicking::panic@GOTPCREL] | |
mov esi, 40 | |
call rax | |
jmp .LBB14_15 | |
.LBB14_2: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 48] | |
sar rcx, 32 | |
mov dword ptr [rax + 4], ecx | |
mov byte ptr [rax], 0 | |
jmp .LBB14_6 | |
.LBB14_3: | |
mov rax, qword ptr [rsp + 48] | |
shr rax, 32 | |
mov edi, eax | |
call std::io::error::repr_bitpacked::kind_from_prim | |
mov byte ptr [rsp + 23], al | |
jmp .LBB14_9 | |
.LBB14_4: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 72], rcx | |
mov rcx, qword ptr [rsp + 72] | |
mov qword ptr [rax + 8], rcx | |
mov byte ptr [rax], 2 | |
jmp .LBB14_6 | |
.LBB14_5: | |
mov rax, qword ptr [rsp + 24] | |
dec rax | |
mov qword ptr [rsp + 128], rax | |
mov rax, qword ptr [rsp + 128] | |
mov qword ptr [rsp + 104], rax | |
mov rax, qword ptr [rsp + 104] | |
mov qword ptr [rsp + 96], rax | |
mov rax, qword ptr [rsp + 96] | |
mov byte ptr [rsp + 95], 0 | |
mov qword ptr [rsp + 80], rax | |
mov rdi, qword ptr [rsp + 80] | |
mov rax, qword ptr [rip + <std::io::error::repr_bitpacked::Repr as core::ops::drop::Drop>::drop::{{closure}}@GOTPCREL] | |
call rax | |
mov qword ptr [rsp + 8], rax | |
jmp .LBB14_12 | |
.LBB14_6: | |
test byte ptr [rsp + 95], 1 | |
jne .LBB14_14 | |
jmp .LBB14_13 | |
.LBB14_7: | |
test byte ptr [rsp + 95], 1 | |
jne .LBB14_17 | |
jmp .LBB14_16 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 112], rcx | |
mov dword ptr [rsp + 120], eax | |
jmp .LBB14_7 | |
.LBB14_9: | |
mov al, byte ptr [rsp + 23] | |
mov byte ptr [rsp + 71], al | |
mov eax, 1 | |
xor ecx, ecx | |
cmp byte ptr [rsp + 71], 41 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB14_11 | |
ud2 | |
.LBB14_11: | |
mov rax, qword ptr [rsp + 32] | |
mov cl, byte ptr [rsp + 71] | |
mov byte ptr [rax + 1], cl | |
mov byte ptr [rax], 1 | |
jmp .LBB14_6 | |
.LBB14_12: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 8] | |
mov qword ptr [rax + 8], rcx | |
mov byte ptr [rax], 3 | |
jmp .LBB14_6 | |
.LBB14_13: | |
mov rax, qword ptr [rsp + 40] | |
add rsp, 136 | |
ret | |
.LBB14_14: | |
jmp .LBB14_13 | |
.LBB14_15: | |
ud2 | |
.LBB14_16: | |
mov rdi, qword ptr [rsp + 112] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB14_17: | |
jmp .LBB14_16 | |
.LJTI14_0: | |
.long .LBB14_4-.LJTI14_0 | |
.long .LBB14_5-.LJTI14_0 | |
.long .LBB14_2-.LJTI14_0 | |
.long .LBB14_3-.LJTI14_0 | |
std::io::error::repr_bitpacked::kind_from_prim: | |
mov dword ptr [rsp - 8], edi | |
cmp edi, 0 | |
jne .LBB15_2 | |
mov byte ptr [rsp - 1], 0 | |
jmp .LBB15_3 | |
.LBB15_2: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 1 | |
je .LBB15_4 | |
jmp .LBB15_5 | |
.LBB15_3: | |
mov al, byte ptr [rsp - 1] | |
ret | |
.LBB15_4: | |
mov byte ptr [rsp - 1], 1 | |
jmp .LBB15_3 | |
.LBB15_5: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 2 | |
jne .LBB15_7 | |
mov byte ptr [rsp - 1], 2 | |
jmp .LBB15_3 | |
.LBB15_7: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 3 | |
jne .LBB15_9 | |
mov byte ptr [rsp - 1], 3 | |
jmp .LBB15_3 | |
.LBB15_9: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 4 | |
jne .LBB15_11 | |
mov byte ptr [rsp - 1], 4 | |
jmp .LBB15_3 | |
.LBB15_11: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 5 | |
jne .LBB15_13 | |
mov byte ptr [rsp - 1], 5 | |
jmp .LBB15_3 | |
.LBB15_13: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 6 | |
jne .LBB15_15 | |
mov byte ptr [rsp - 1], 6 | |
jmp .LBB15_3 | |
.LBB15_15: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 7 | |
jne .LBB15_17 | |
mov byte ptr [rsp - 1], 7 | |
jmp .LBB15_3 | |
.LBB15_17: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 8 | |
jne .LBB15_19 | |
mov byte ptr [rsp - 1], 8 | |
jmp .LBB15_3 | |
.LBB15_19: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 9 | |
jne .LBB15_21 | |
mov byte ptr [rsp - 1], 9 | |
jmp .LBB15_3 | |
.LBB15_21: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 10 | |
jne .LBB15_23 | |
mov byte ptr [rsp - 1], 10 | |
jmp .LBB15_3 | |
.LBB15_23: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 11 | |
jne .LBB15_25 | |
mov byte ptr [rsp - 1], 11 | |
jmp .LBB15_3 | |
.LBB15_25: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 12 | |
jne .LBB15_27 | |
mov byte ptr [rsp - 1], 12 | |
jmp .LBB15_3 | |
.LBB15_27: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 13 | |
jne .LBB15_29 | |
mov byte ptr [rsp - 1], 13 | |
jmp .LBB15_3 | |
.LBB15_29: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 14 | |
jne .LBB15_31 | |
mov byte ptr [rsp - 1], 14 | |
jmp .LBB15_3 | |
.LBB15_31: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 15 | |
jne .LBB15_33 | |
mov byte ptr [rsp - 1], 15 | |
jmp .LBB15_3 | |
.LBB15_33: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 16 | |
jne .LBB15_35 | |
mov byte ptr [rsp - 1], 16 | |
jmp .LBB15_3 | |
.LBB15_35: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 17 | |
jne .LBB15_37 | |
mov byte ptr [rsp - 1], 17 | |
jmp .LBB15_3 | |
.LBB15_37: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 18 | |
jne .LBB15_39 | |
mov byte ptr [rsp - 1], 18 | |
jmp .LBB15_3 | |
.LBB15_39: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 19 | |
jne .LBB15_41 | |
mov byte ptr [rsp - 1], 19 | |
jmp .LBB15_3 | |
.LBB15_41: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 20 | |
jne .LBB15_43 | |
mov byte ptr [rsp - 1], 20 | |
jmp .LBB15_3 | |
.LBB15_43: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 21 | |
jne .LBB15_45 | |
mov byte ptr [rsp - 1], 21 | |
jmp .LBB15_3 | |
.LBB15_45: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 22 | |
jne .LBB15_47 | |
mov byte ptr [rsp - 1], 22 | |
jmp .LBB15_3 | |
.LBB15_47: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 23 | |
jne .LBB15_49 | |
mov byte ptr [rsp - 1], 23 | |
jmp .LBB15_3 | |
.LBB15_49: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 24 | |
jne .LBB15_51 | |
mov byte ptr [rsp - 1], 24 | |
jmp .LBB15_3 | |
.LBB15_51: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 25 | |
jne .LBB15_53 | |
mov byte ptr [rsp - 1], 25 | |
jmp .LBB15_3 | |
.LBB15_53: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 26 | |
jne .LBB15_55 | |
mov byte ptr [rsp - 1], 26 | |
jmp .LBB15_3 | |
.LBB15_55: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 27 | |
jne .LBB15_57 | |
mov byte ptr [rsp - 1], 27 | |
jmp .LBB15_3 | |
.LBB15_57: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 28 | |
jne .LBB15_59 | |
mov byte ptr [rsp - 1], 28 | |
jmp .LBB15_3 | |
.LBB15_59: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 29 | |
jne .LBB15_61 | |
mov byte ptr [rsp - 1], 29 | |
jmp .LBB15_3 | |
.LBB15_61: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 30 | |
jne .LBB15_63 | |
mov byte ptr [rsp - 1], 30 | |
jmp .LBB15_3 | |
.LBB15_63: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 31 | |
jne .LBB15_65 | |
mov byte ptr [rsp - 1], 31 | |
jmp .LBB15_3 | |
.LBB15_65: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 32 | |
jne .LBB15_67 | |
mov byte ptr [rsp - 1], 32 | |
jmp .LBB15_3 | |
.LBB15_67: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 33 | |
jne .LBB15_69 | |
mov byte ptr [rsp - 1], 33 | |
jmp .LBB15_3 | |
.LBB15_69: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 34 | |
jne .LBB15_71 | |
mov byte ptr [rsp - 1], 34 | |
jmp .LBB15_3 | |
.LBB15_71: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 35 | |
jne .LBB15_73 | |
mov byte ptr [rsp - 1], 35 | |
jmp .LBB15_3 | |
.LBB15_73: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 39 | |
jne .LBB15_75 | |
mov byte ptr [rsp - 1], 39 | |
jmp .LBB15_3 | |
.LBB15_75: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 37 | |
jne .LBB15_77 | |
mov byte ptr [rsp - 1], 37 | |
jmp .LBB15_3 | |
.LBB15_77: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 36 | |
jne .LBB15_79 | |
mov byte ptr [rsp - 1], 36 | |
jmp .LBB15_3 | |
.LBB15_79: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 38 | |
jne .LBB15_81 | |
mov byte ptr [rsp - 1], 38 | |
jmp .LBB15_3 | |
.LBB15_81: | |
mov eax, dword ptr [rsp - 8] | |
cmp eax, 40 | |
jne .LBB15_83 | |
mov byte ptr [rsp - 1], 40 | |
jmp .LBB15_3 | |
.LBB15_83: | |
mov byte ptr [rsp - 1], 41 | |
jmp .LBB15_3 | |
std::io::error::repr_bitpacked::Repr::data::{{closure}}: | |
mov rax, rdi | |
ret | |
std::io::error::Error::kind: | |
sub rsp, 40 | |
mov rsi, qword ptr [rdi] | |
mov rax, qword ptr [rip + std::io::error::repr_bitpacked::decode_repr@GOTPCREL] | |
lea rdi, [rsp + 24] | |
call rax | |
movzx eax, byte ptr [rsp + 24] | |
mov qword ptr [rsp + 8], rax | |
mov rax, qword ptr [rsp + 8] | |
lea rcx, [rip + .LJTI17_0] | |
movsxd rax, dword ptr [rcx + 4*rax] | |
add rax, rcx | |
jmp rax | |
ud2 | |
.LBB17_2: | |
mov edi, dword ptr [rsp + 28] | |
call qword ptr [rip + std::sys::unix::decode_error_kind@GOTPCREL] | |
mov byte ptr [rsp + 23], al | |
jmp .LBB17_6 | |
.LBB17_3: | |
mov al, byte ptr [rsp + 25] | |
mov byte ptr [rsp + 23], al | |
jmp .LBB17_6 | |
.LBB17_4: | |
mov rax, qword ptr [rsp + 32] | |
mov al, byte ptr [rax + 16] | |
mov byte ptr [rsp + 23], al | |
jmp .LBB17_6 | |
.LBB17_5: | |
mov rax, qword ptr [rsp + 32] | |
mov al, byte ptr [rax + 16] | |
mov byte ptr [rsp + 23], al | |
.LBB17_6: | |
mov al, byte ptr [rsp + 23] | |
add rsp, 40 | |
ret | |
.LJTI17_0: | |
.long .LBB17_2-.LJTI17_0 | |
.long .LBB17_3-.LJTI17_0 | |
.long .LBB17_4-.LJTI17_0 | |
.long .LBB17_5-.LJTI17_0 | |
std::thread::JoinInner<T>::join: | |
sub rsp, 120 | |
mov qword ptr [rsp + 40], rdi | |
mov rdi, qword ptr [rdi + 16] | |
mov rax, qword ptr [rip + std::sys::unix::thread::Thread::join@GOTPCREL] | |
call rax | |
jmp .LBB18_3 | |
.LBB18_1: | |
mov rdi, qword ptr [rsp + 40] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Thread>@GOTPCREL] | |
call rax | |
jmp .LBB18_18 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 104], rcx | |
mov dword ptr [rsp + 112], eax | |
jmp .LBB18_1 | |
.LBB18_3: | |
mov rdi, qword ptr [rsp + 40] | |
add rdi, 8 | |
mov qword ptr [rsp + 24], rdi | |
mov rax, qword ptr [rip + alloc::sync::Arc<T,A>::is_unique@GOTPCREL] | |
call rax | |
mov byte ptr [rsp + 39], al | |
jmp .LBB18_4 | |
.LBB18_4: | |
mov al, byte ptr [rsp + 39] | |
test al, 1 | |
jne .LBB18_6 | |
jmp .LBB18_5 | |
.LBB18_5: | |
mov qword ptr [rsp + 72], 0 | |
jmp .LBB18_7 | |
.LBB18_6: | |
mov rax, qword ptr [rsp + 24] | |
mov rax, qword ptr [rax] | |
add rax, 16 | |
mov qword ptr [rsp + 72], rax | |
.LBB18_7: | |
mov rdx, qword ptr [rsp + 72] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB18_9 | |
lea rdi, [rip + .L__unnamed_15] | |
lea rdx, [rip + .L__unnamed_16] | |
mov rax, qword ptr [rip + core::panicking::panic@GOTPCREL] | |
mov esi, 43 | |
call rax | |
jmp .LBB18_10 | |
.LBB18_9: | |
mov rax, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 80], 0 | |
mov rcx, qword ptr [rax + 8] | |
mov qword ptr [rsp + 48], rcx | |
mov rcx, qword ptr [rax + 16] | |
mov qword ptr [rsp + 56], rcx | |
mov rcx, qword ptr [rax + 24] | |
mov qword ptr [rsp + 64], rcx | |
mov rcx, qword ptr [rsp + 80] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsp + 88] | |
mov qword ptr [rax + 16], rcx | |
mov rcx, qword ptr [rsp + 96] | |
mov qword ptr [rax + 24], rcx | |
cmp qword ptr [rsp + 48], 0 | |
je .LBB18_11 | |
jmp .LBB18_12 | |
.LBB18_10: | |
ud2 | |
.LBB18_11: | |
lea rdi, [rip + .L__unnamed_15] | |
lea rdx, [rip + .L__unnamed_17] | |
mov rax, qword ptr [rip + core::panicking::panic@GOTPCREL] | |
mov esi, 43 | |
call rax | |
jmp .LBB18_10 | |
.LBB18_12: | |
mov rdi, qword ptr [rsp + 40] | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 8], rax | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 16], rax | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Thread>@GOTPCREL] | |
call rax | |
jmp .LBB18_15 | |
.LBB18_13: | |
mov rdi, qword ptr [rsp + 40] | |
add rdi, 8 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
call rax | |
jmp .LBB18_17 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 104], rcx | |
mov dword ptr [rsp + 112], eax | |
jmp .LBB18_13 | |
.LBB18_15: | |
mov rdi, qword ptr [rsp + 40] | |
add rdi, 8 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
call rax | |
mov rax, qword ptr [rsp + 8] | |
mov rdx, qword ptr [rsp + 16] | |
add rsp, 120 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB18_17: | |
mov rdi, qword ptr [rsp + 104] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB18_18: | |
mov rdi, qword ptr [rsp + 40] | |
add rdi, 8 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
call rax | |
jmp .LBB18_17 | |
std::thread::JoinHandle<T>::join: | |
sub rsp, 24 | |
mov rax, qword ptr [rdi + 16] | |
mov qword ptr [rsp + 16], rax | |
movups xmm0, xmmword ptr [rdi] | |
movaps xmmword ptr [rsp], xmm0 | |
mov rax, qword ptr [rip + std::thread::JoinInner<T>::join@GOTPCREL] | |
mov rdi, rsp | |
call rax | |
add rsp, 24 | |
ret | |
std::thread::spawn: | |
sub rsp, 120 | |
mov qword ptr [rsp + 8], rsi | |
mov qword ptr [rsp + 16], rdi | |
mov qword ptr [rsp + 24], rdi | |
mov byte ptr [rsp + 103], 1 | |
mov rax, qword ptr [rip + std::thread::Builder::new@GOTPCREL] | |
lea rdi, [rsp + 56] | |
call rax | |
jmp .LBB20_3 | |
.LBB20_1: | |
test byte ptr [rsp + 103], 1 | |
jne .LBB20_7 | |
jmp .LBB20_6 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 104], rcx | |
mov dword ptr [rsp + 112], eax | |
jmp .LBB20_1 | |
.LBB20_3: | |
mov rdx, qword ptr [rsp + 8] | |
mov byte ptr [rsp + 103], 0 | |
mov rax, qword ptr [rip + std::thread::Builder::spawn_unchecked@GOTPCREL] | |
lea rdi, [rsp + 32] | |
lea rsi, [rsp + 56] | |
call rax | |
jmp .LBB20_4 | |
.LBB20_4: | |
mov rdi, qword ptr [rsp + 16] | |
lea rdx, [rip + .L__unnamed_18] | |
lea r8, [rip + .L__unnamed_19] | |
mov rax, qword ptr [rip + core::result::Result<T,E>::expect@GOTPCREL] | |
lea rsi, [rsp + 32] | |
mov ecx, 22 | |
call rax | |
jmp .LBB20_5 | |
.LBB20_5: | |
mov rax, qword ptr [rsp + 24] | |
add rsp, 120 | |
ret | |
.LBB20_6: | |
mov rdi, qword ptr [rsp + 104] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB20_7: | |
jmp .LBB20_6 | |
std::thread::Builder::spawn_unchecked: | |
sub rsp, 152 | |
mov qword ptr [rsp], rdi | |
mov qword ptr [rsp + 8], rdi | |
lea rdi, [rsp + 64] | |
xor eax, eax | |
mov ecx, eax | |
call qword ptr [rip + std::thread::Builder::spawn_unchecked_@GOTPCREL] | |
mov rdx, qword ptr [rsp + 64] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB21_2 | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 120], rax | |
mov rax, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 128], rax | |
mov rax, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 136], rax | |
mov rax, qword ptr [rsp + 120] | |
mov qword ptr [rsp + 40], rax | |
mov rax, qword ptr [rsp + 128] | |
mov qword ptr [rsp + 48], rax | |
mov rax, qword ptr [rsp + 136] | |
mov qword ptr [rsp + 56], rax | |
jmp .LBB21_3 | |
.LBB21_2: | |
mov rax, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 144], rax | |
mov rax, qword ptr [rsp + 144] | |
mov qword ptr [rsp + 48], rax | |
mov qword ptr [rsp + 40], 0 | |
.LBB21_3: | |
mov rdx, qword ptr [rsp + 40] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB21_5 | |
mov rax, qword ptr [rsp] | |
mov rcx, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 96], rcx | |
mov rcx, qword ptr [rsp + 48] | |
mov qword ptr [rsp + 104], rcx | |
mov rcx, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 112], rcx | |
mov rcx, qword ptr [rsp + 96] | |
mov qword ptr [rsp + 16], rcx | |
mov rcx, qword ptr [rsp + 104] | |
mov qword ptr [rsp + 24], rcx | |
mov rcx, qword ptr [rsp + 112] | |
mov qword ptr [rsp + 32], rcx | |
mov rcx, qword ptr [rsp + 16] | |
mov qword ptr [rax], rcx | |
mov rcx, qword ptr [rsp + 24] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsp + 32] | |
mov qword ptr [rax + 16], rcx | |
jmp .LBB21_6 | |
.LBB21_5: | |
mov rax, qword ptr [rsp] | |
mov rcx, qword ptr [rsp + 48] | |
mov qword ptr [rsp + 88], rcx | |
mov rcx, qword ptr [rsp + 88] | |
mov qword ptr [rax + 8], rcx | |
mov qword ptr [rax], 0 | |
.LBB21_6: | |
mov rax, qword ptr [rsp + 8] | |
add rsp, 152 | |
ret | |
std::thread::Builder::spawn_unchecked_: | |
sub rsp, 648 | |
mov qword ptr [rsp + 128], rdx | |
mov qword ptr [rsp + 136], rdi | |
mov qword ptr [rsp + 144], rdi | |
mov qword ptr [rsp + 152], rcx | |
mov byte ptr [rsp + 527], 1 | |
mov byte ptr [rsp + 526], 1 | |
mov byte ptr [rsp + 525], 1 | |
mov rax, qword ptr [rsi + 16] | |
mov qword ptr [rsp + 160], rax | |
mov rax, qword ptr [rsi + 24] | |
mov qword ptr [rsp + 168], rax | |
mov rax, qword ptr [rsi + 32] | |
mov qword ptr [rsp + 176], rax | |
mov rcx, qword ptr [rsi] | |
mov rax, qword ptr [rsi + 8] | |
mov qword ptr [rsp + 184], rcx | |
mov qword ptr [rsp + 192], rax | |
cmp qword ptr [rsp + 184], 0 | |
jne .LBB22_2 | |
call core::ops::function::FnOnce::call_once | |
mov qword ptr [rsp + 120], rax | |
jmp .LBB22_5 | |
.LBB22_2: | |
mov rax, qword ptr [rsp + 192] | |
mov qword ptr [rsp + 200], rax | |
jmp .LBB22_6 | |
.LBB22_3: | |
test byte ptr [rsp + 525], 1 | |
jne .LBB22_62 | |
jmp .LBB22_54 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 616], rcx | |
mov dword ptr [rsp + 624], eax | |
jmp .LBB22_3 | |
.LBB22_5: | |
mov rax, qword ptr [rsp + 120] | |
mov qword ptr [rsp + 200], rax | |
.LBB22_6: | |
mov byte ptr [rsp + 525], 0 | |
mov rax, qword ptr [rsp + 160] | |
mov qword ptr [rsp + 232], rax | |
mov rax, qword ptr [rsp + 168] | |
mov qword ptr [rsp + 240], rax | |
mov rax, qword ptr [rsp + 176] | |
mov qword ptr [rsp + 248], rax | |
mov rdx, qword ptr [rsp + 232] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB22_8 | |
mov qword ptr [rsp + 216], 0 | |
jmp .LBB22_9 | |
.LBB22_8: | |
mov rax, qword ptr [rsp + 248] | |
mov qword ptr [rsp + 544], rax | |
movups xmm0, xmmword ptr [rsp + 232] | |
movaps xmmword ptr [rsp + 528], xmm0 | |
mov rax, qword ptr [rip + <T as alloc::ffi::c_str::CString::new::SpecNewImpl>::spec_new_impl@GOTPCREL] | |
lea rdi, [rsp + 552] | |
lea rsi, [rsp + 528] | |
call rax | |
jmp .LBB22_10 | |
.LBB22_9: | |
mov rdi, qword ptr [rsp + 216] | |
mov rsi, qword ptr [rsp + 224] | |
mov rax, qword ptr [rip + std::thread::Thread::new@GOTPCREL] | |
call rax | |
mov qword ptr [rsp + 112], rax | |
jmp .LBB22_12 | |
.LBB22_10: | |
lea rsi, [rip + .L__unnamed_20] | |
lea rcx, [rip + .L__unnamed_21] | |
mov rax, qword ptr [rip + core::result::Result<T,E>::expect@GOTPCREL] | |
lea rdi, [rsp + 552] | |
mov edx, 47 | |
call rax | |
mov qword ptr [rsp + 96], rdx | |
mov qword ptr [rsp + 104], rax | |
jmp .LBB22_11 | |
.LBB22_11: | |
mov rax, qword ptr [rsp + 96] | |
mov rcx, qword ptr [rsp + 104] | |
mov qword ptr [rsp + 216], rcx | |
mov qword ptr [rsp + 224], rax | |
jmp .LBB22_9 | |
.LBB22_12: | |
mov rax, qword ptr [rsp + 112] | |
mov qword ptr [rsp + 208], rax | |
mov rax, qword ptr [rip + <alloc::sync::Arc<T,A> as core::clone::Clone>::clone@GOTPCREL] | |
lea rdi, [rsp + 208] | |
call rax | |
mov qword ptr [rsp + 88], rax | |
jmp .LBB22_15 | |
.LBB22_13: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Thread>@GOTPCREL] | |
lea rdi, [rsp + 208] | |
call rax | |
jmp .LBB22_3 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 616], rcx | |
mov dword ptr [rsp + 624], eax | |
jmp .LBB22_13 | |
.LBB22_15: | |
mov rax, qword ptr [rsp + 88] | |
mov qword ptr [rsp + 584], rax | |
mov rax, qword ptr [rsp + 584] | |
mov qword ptr [rsp + 256], rax | |
mov byte ptr [rsp + 524], 1 | |
mov byte ptr [rsp + 526], 0 | |
mov rax, qword ptr [rsp + 152] | |
mov qword ptr [rsp + 328], 0 | |
mov rcx, qword ptr [rsp + 344] | |
mov qword ptr [rsp + 320], rcx | |
movups xmm0, xmmword ptr [rsp + 328] | |
movaps xmmword ptr [rsp + 304], xmm0 | |
mov qword ptr [rsp + 272], rax | |
mov rax, qword ptr [rsp + 320] | |
mov qword ptr [rsp + 296], rax | |
movaps xmm0, xmmword ptr [rsp + 304] | |
movups xmmword ptr [rsp + 280], xmm0 | |
mov rax, qword ptr [rip + alloc::sync::Arc<T>::new@GOTPCREL] | |
lea rdi, [rsp + 272] | |
call rax | |
mov qword ptr [rsp + 80], rax | |
jmp .LBB22_18 | |
.LBB22_16: | |
test byte ptr [rsp + 524], 1 | |
jne .LBB22_61 | |
jmp .LBB22_13 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 616], rcx | |
mov dword ptr [rsp + 624], eax | |
jmp .LBB22_16 | |
.LBB22_18: | |
mov rax, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 264], rax | |
mov rax, qword ptr [rip + <alloc::sync::Arc<T,A> as core::clone::Clone>::clone@GOTPCREL] | |
lea rdi, [rsp + 264] | |
call rax | |
mov qword ptr [rsp + 72], rax | |
jmp .LBB22_21 | |
.LBB22_19: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
lea rdi, [rsp + 264] | |
call rax | |
jmp .LBB22_16 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 616], rcx | |
mov dword ptr [rsp + 624], eax | |
jmp .LBB22_19 | |
.LBB22_21: | |
mov rax, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 352], rax | |
mov byte ptr [rsp + 523], 1 | |
mov rax, qword ptr [rip + std::io::stdio::set_output_capture@GOTPCREL] | |
xor ecx, ecx | |
mov edi, ecx | |
call rax | |
mov qword ptr [rsp + 64], rax | |
jmp .LBB22_24 | |
.LBB22_22: | |
test byte ptr [rsp + 523], 1 | |
jne .LBB22_60 | |
jmp .LBB22_19 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 616], rcx | |
mov dword ptr [rsp + 624], eax | |
jmp .LBB22_22 | |
.LBB22_24: | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 360], rax | |
mov byte ptr [rsp + 522], 1 | |
mov rdx, qword ptr [rsp + 360] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB22_26 | |
mov qword ptr [rsp + 376], 0 | |
jmp .LBB22_27 | |
.LBB22_26: | |
mov rax, qword ptr [rip + <alloc::sync::Arc<T,A> as core::clone::Clone>::clone@GOTPCREL] | |
lea rdi, [rsp + 360] | |
call rax | |
mov qword ptr [rsp + 56], rax | |
jmp .LBB22_30 | |
.LBB22_27: | |
mov rdi, qword ptr [rsp + 376] | |
mov rax, qword ptr [rip + std::io::stdio::set_output_capture@GOTPCREL] | |
call rax | |
mov qword ptr [rsp + 48], rax | |
jmp .LBB22_31 | |
.LBB22_28: | |
test byte ptr [rsp + 522], 1 | |
jne .LBB22_59 | |
jmp .LBB22_22 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 616], rcx | |
mov dword ptr [rsp + 624], eax | |
jmp .LBB22_28 | |
.LBB22_30: | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 376], rax | |
jmp .LBB22_27 | |
.LBB22_31: | |
mov rax, qword ptr [rsp + 48] | |
mov qword ptr [rsp + 368], rax | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<alloc::sync::Arc<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>>>>@GOTPCREL] | |
lea rdi, [rsp + 368] | |
call rax | |
jmp .LBB22_32 | |
.LBB22_32: | |
mov rax, qword ptr [rsp + 128] | |
mov byte ptr [rsp + 527], 0 | |
mov qword ptr [rsp + 600], rax | |
mov rax, qword ptr [rsp + 600] | |
mov qword ptr [rsp + 592], rax | |
mov rax, qword ptr [rsp + 592] | |
mov qword ptr [rsp + 384], rax | |
mov byte ptr [rsp + 524], 0 | |
mov byte ptr [rsp + 522], 0 | |
mov byte ptr [rsp + 523], 0 | |
mov byte ptr [rsp + 521], 1 | |
mov rax, qword ptr [rsp + 256] | |
mov qword ptr [rsp + 392], rax | |
mov rax, qword ptr [rsp + 360] | |
mov qword ptr [rsp + 408], rax | |
mov rax, qword ptr [rsp + 384] | |
mov qword ptr [rsp + 416], rax | |
mov rax, qword ptr [rsp + 352] | |
mov qword ptr [rsp + 400], rax | |
mov rax, qword ptr [rsp + 264] | |
mov qword ptr [rsp + 40], rax | |
mov rdx, qword ptr [rax + 16] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
jne .LBB22_34 | |
mov rax, qword ptr [rsp + 40] | |
mov rdi, qword ptr [rax + 16] | |
add rdi, 16 | |
mov rax, qword ptr [rip + std::thread::scoped::ScopeData::increment_num_running_threads@GOTPCREL] | |
call rax | |
jmp .LBB22_42 | |
.LBB22_34: | |
mov rax, qword ptr [rsp + 200] | |
mov qword ptr [rsp + 24], rax | |
mov byte ptr [rsp + 521], 0 | |
movups xmm0, xmmword ptr [rsp + 392] | |
movups xmm1, xmmword ptr [rsp + 408] | |
movaps xmmword ptr [rsp + 496], xmm1 | |
movaps xmmword ptr [rsp + 480], xmm0 | |
mov edi, 32 | |
mov esi, 8 | |
call alloc::alloc::exchange_malloc | |
mov qword ptr [rsp + 32], rax | |
jmp .LBB22_38 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 632], rcx | |
mov dword ptr [rsp + 640], eax | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Builder::spawn_unchecked_<example::main::{{closure}}::{{closure}},()>::{{closure}}>@GOTPCREL] | |
lea rdi, [rsp + 480] | |
call rax | |
jmp .LBB22_37 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB22_37: | |
mov rcx, qword ptr [rsp + 632] | |
mov eax, dword ptr [rsp + 640] | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 20], eax | |
jmp .LBB22_41 | |
.LBB22_38: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 480] | |
mov qword ptr [rax], rcx | |
mov rcx, qword ptr [rsp + 488] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsp + 496] | |
mov qword ptr [rax + 16], rcx | |
mov rcx, qword ptr [rsp + 504] | |
mov qword ptr [rax + 24], rcx | |
jmp .LBB22_43 | |
.LBB22_39: | |
test byte ptr [rsp + 521], 1 | |
jne .LBB22_58 | |
jmp .LBB22_28 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 20], eax | |
jmp .LBB22_41 | |
.LBB22_41: | |
mov rcx, qword ptr [rsp + 8] | |
mov eax, dword ptr [rsp + 20] | |
mov qword ptr [rsp + 616], rcx | |
mov dword ptr [rsp + 624], eax | |
jmp .LBB22_39 | |
.LBB22_42: | |
jmp .LBB22_34 | |
.LBB22_43: | |
mov rdx, qword ptr [rsp + 32] | |
mov rsi, qword ptr [rsp + 24] | |
lea rcx, [rip + .L__unnamed_22] | |
mov rax, qword ptr [rip + std::sys::unix::thread::Thread::new@GOTPCREL] | |
lea rdi, [rsp + 464] | |
call rax | |
jmp .LBB22_44 | |
.LBB22_44: | |
cmp qword ptr [rsp + 464], 0 | |
jne .LBB22_46 | |
mov rax, qword ptr [rsp + 472] | |
mov qword ptr [rsp + 456], rax | |
mov qword ptr [rsp + 448], 0 | |
jmp .LBB22_47 | |
.LBB22_46: | |
mov rax, qword ptr [rsp + 472] | |
mov qword ptr [rsp + 608], rax | |
mov rax, qword ptr [rsp + 608] | |
mov qword ptr [rsp + 456], rax | |
mov qword ptr [rsp + 448], 1 | |
.LBB22_47: | |
cmp qword ptr [rsp + 448], 0 | |
jne .LBB22_49 | |
mov rax, qword ptr [rsp + 136] | |
mov rsi, qword ptr [rsp + 456] | |
mov rdx, qword ptr [rsp + 208] | |
mov rcx, qword ptr [rsp + 264] | |
mov qword ptr [rsp + 440], rsi | |
mov qword ptr [rsp + 424], rdx | |
mov qword ptr [rsp + 432], rcx | |
mov rcx, qword ptr [rsp + 424] | |
mov qword ptr [rax], rcx | |
mov rcx, qword ptr [rsp + 432] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsp + 440] | |
mov qword ptr [rax + 16], rcx | |
jmp .LBB22_50 | |
.LBB22_49: | |
mov rax, qword ptr [rsp + 136] | |
mov rcx, qword ptr [rsp + 456] | |
mov qword ptr [rsp + 512], rcx | |
mov rcx, qword ptr [rsp + 512] | |
mov qword ptr [rax + 8], rcx | |
mov qword ptr [rax], 0 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
lea rdi, [rsp + 264] | |
call rax | |
jmp .LBB22_53 | |
.LBB22_50: | |
mov rax, qword ptr [rsp + 144] | |
add rsp, 648 | |
ret | |
.LBB22_51: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Thread>@GOTPCREL] | |
lea rdi, [rsp + 208] | |
call rax | |
jmp .LBB22_54 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 616], rcx | |
mov dword ptr [rsp + 624], eax | |
jmp .LBB22_51 | |
.LBB22_53: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Thread>@GOTPCREL] | |
lea rdi, [rsp + 208] | |
call rax | |
jmp .LBB22_56 | |
.LBB22_54: | |
test byte ptr [rsp + 526], 1 | |
jne .LBB22_64 | |
jmp .LBB22_63 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 616], rcx | |
mov dword ptr [rsp + 624], eax | |
jmp .LBB22_54 | |
.LBB22_56: | |
jmp .LBB22_50 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB22_58: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Builder::spawn_unchecked_<example::main::{{closure}}::{{closure}},()>::{{closure}}>@GOTPCREL] | |
lea rdi, [rsp + 392] | |
call rax | |
jmp .LBB22_28 | |
.LBB22_59: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<alloc::sync::Arc<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>>>>@GOTPCREL] | |
lea rdi, [rsp + 360] | |
call rax | |
jmp .LBB22_22 | |
.LBB22_60: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
lea rdi, [rsp + 352] | |
call rax | |
jmp .LBB22_19 | |
.LBB22_61: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Thread>@GOTPCREL] | |
lea rdi, [rsp + 256] | |
call rax | |
jmp .LBB22_13 | |
.LBB22_62: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<alloc::string::String>>@GOTPCREL] | |
lea rdi, [rsp + 160] | |
call rax | |
jmp .LBB22_54 | |
.LBB22_63: | |
test byte ptr [rsp + 527], 1 | |
jne .LBB22_66 | |
jmp .LBB22_65 | |
.LBB22_64: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<alloc::sync::Arc<std::thread::scoped::ScopeData>>>@GOTPCREL] | |
lea rdi, [rsp + 152] | |
call rax | |
jmp .LBB22_63 | |
.LBB22_65: | |
mov rdi, qword ptr [rsp + 616] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB22_66: | |
jmp .LBB22_65 | |
std::thread::Builder::spawn_unchecked_::{{closure}}: | |
sub rsp, 200 | |
mov qword ptr [rsp + 48], rdi | |
mov byte ptr [rsp + 180], 1 | |
mov byte ptr [rsp + 181], 1 | |
mov byte ptr [rsp + 182], 1 | |
mov byte ptr [rsp + 183], 1 | |
mov rax, qword ptr [rip + std::thread::Thread::cname@GOTPCREL] | |
call rax | |
mov qword ptr [rsp + 56], rdx | |
mov qword ptr [rsp + 64], rax | |
jmp .LBB23_3 | |
.LBB23_1: | |
test byte ptr [rsp + 181], 1 | |
jne .LBB23_20 | |
jmp .LBB23_19 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 184], rcx | |
mov dword ptr [rsp + 192], eax | |
jmp .LBB23_1 | |
.LBB23_3: | |
mov rax, qword ptr [rsp + 56] | |
mov rcx, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 72], rcx | |
mov qword ptr [rsp + 80], rax | |
mov rdx, qword ptr [rsp + 72] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
jne .LBB23_5 | |
mov rdi, qword ptr [rsp + 72] | |
mov rsi, qword ptr [rsp + 80] | |
mov rax, qword ptr [rip + std::sys::unix::thread::Thread::set_name@GOTPCREL] | |
call rax | |
jmp .LBB23_6 | |
.LBB23_5: | |
mov rax, qword ptr [rsp + 48] | |
mov byte ptr [rsp + 183], 0 | |
mov rdi, qword ptr [rax + 16] | |
mov rax, qword ptr [rip + std::io::stdio::set_output_capture@GOTPCREL] | |
call rax | |
mov qword ptr [rsp + 40], rax | |
jmp .LBB23_7 | |
.LBB23_6: | |
jmp .LBB23_5 | |
.LBB23_7: | |
mov rax, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 88], rax | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<alloc::sync::Arc<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>>>>@GOTPCREL] | |
lea rdi, [rsp + 88] | |
call rax | |
jmp .LBB23_8 | |
.LBB23_8: | |
mov rax, qword ptr [rsp + 48] | |
mov byte ptr [rsp + 182], 0 | |
mov rax, qword ptr [rax + 24] | |
mov qword ptr [rsp + 96], rax | |
mov rax, qword ptr [rsp + 96] | |
mov qword ptr [rsp + 32], rax | |
mov byte ptr [rsp + 179], 1 | |
mov rax, qword ptr [rip + std::sys::unix::thread::guard::current@GOTPCREL] | |
lea rdi, [rsp + 104] | |
call rax | |
jmp .LBB23_11 | |
.LBB23_9: | |
test byte ptr [rsp + 179], 1 | |
jne .LBB23_18 | |
jmp .LBB23_1 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 184], rcx | |
mov dword ptr [rsp + 192], eax | |
jmp .LBB23_9 | |
.LBB23_11: | |
mov rax, qword ptr [rsp + 48] | |
mov byte ptr [rsp + 181], 0 | |
mov rsi, qword ptr [rax] | |
mov rax, qword ptr [rip + std::sys_common::thread_info::set@GOTPCREL] | |
lea rdi, [rsp + 104] | |
call rax | |
jmp .LBB23_12 | |
.LBB23_12: | |
mov rax, qword ptr [rsp + 32] | |
mov byte ptr [rsp + 179], 0 | |
mov qword ptr [rsp + 136], rax | |
mov rax, qword ptr [rsp + 136] | |
mov qword ptr [rsp + 128], rax | |
mov rdi, qword ptr [rsp + 128] | |
mov rax, qword ptr [rip + std::panicking::try@GOTPCREL] | |
call rax | |
mov qword ptr [rsp + 16], rdx | |
mov qword ptr [rsp + 24], rax | |
jmp .LBB23_13 | |
.LBB23_13: | |
mov rax, qword ptr [rsp + 48] | |
mov rcx, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 152], rdx | |
mov qword ptr [rsp + 160], rcx | |
mov qword ptr [rsp + 144], 1 | |
mov rdi, qword ptr [rax + 8] | |
add rdi, 24 | |
mov qword ptr [rsp + 8], rdi | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<core::result::Result<(),alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>>>@GOTPCREL] | |
call rax | |
jmp .LBB23_16 | |
.LBB23_14: | |
mov rax, qword ptr [rsp + 8] | |
mov rcx, qword ptr [rsp + 144] | |
mov qword ptr [rax], rcx | |
mov rcx, qword ptr [rsp + 152] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsp + 160] | |
mov qword ptr [rax + 16], rcx | |
jmp .LBB23_9 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 184], rcx | |
mov dword ptr [rsp + 192], eax | |
jmp .LBB23_14 | |
.LBB23_16: | |
mov rax, qword ptr [rsp + 48] | |
mov rcx, qword ptr [rsp + 8] | |
mov rdx, qword ptr [rsp + 160] | |
mov qword ptr [rcx + 16], rdx | |
movups xmm0, xmmword ptr [rsp + 144] | |
movups xmmword ptr [rcx], xmm0 | |
mov byte ptr [rsp + 180], 0 | |
mov rax, qword ptr [rax + 8] | |
mov qword ptr [rsp + 168], rax | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
lea rdi, [rsp + 168] | |
call rax | |
jmp .LBB23_17 | |
.LBB23_17: | |
add rsp, 200 | |
ret | |
.LBB23_18: | |
jmp .LBB23_1 | |
.LBB23_19: | |
test byte ptr [rsp + 183], 1 | |
jne .LBB23_23 | |
jmp .LBB23_22 | |
.LBB23_20: | |
mov rdi, qword ptr [rsp + 48] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Thread>@GOTPCREL] | |
call rax | |
jmp .LBB23_19 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB23_22: | |
test byte ptr [rsp + 182], 1 | |
jne .LBB23_25 | |
jmp .LBB23_24 | |
.LBB23_23: | |
mov rdi, qword ptr [rsp + 48] | |
add rdi, 16 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<alloc::sync::Arc<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>>>>@GOTPCREL] | |
call rax | |
jmp .LBB23_22 | |
.LBB23_24: | |
test byte ptr [rsp + 180], 1 | |
jne .LBB23_27 | |
jmp .LBB23_26 | |
.LBB23_25: | |
mov rdi, qword ptr [rsp + 48] | |
add rdi, 24 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Builder::spawn_unchecked_::MaybeDangling<example::main::{{closure}}::{{closure}}>>@GOTPCREL] | |
call rax | |
jmp .LBB23_24 | |
.LBB23_26: | |
mov rdi, qword ptr [rsp + 184] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB23_27: | |
mov rdi, qword ptr [rsp + 48] | |
add rdi, 8 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
call rax | |
jmp .LBB23_26 | |
std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}: | |
push rax | |
call qword ptr [rip + std::sys_common::backtrace::__rust_begin_short_backtrace@GOTPCREL] | |
pop rax | |
ret | |
std::panicking::try: | |
sub rsp, 56 | |
mov qword ptr [rsp + 40], rdi | |
mov rax, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 24], rax | |
mov rdi, qword ptr [rip + std::panicking::try::do_call@GOTPCREL] | |
lea rsi, [rsp + 24] | |
mov rdx, qword ptr [rip + std::panicking::try::do_catch@GOTPCREL] | |
call __rust_try | |
mov dword ptr [rsp + 52], eax | |
cmp dword ptr [rsp + 52], 0 | |
jne .LBB25_2 | |
mov qword ptr [rsp + 8], 0 | |
jmp .LBB25_3 | |
.LBB25_2: | |
mov rcx, qword ptr [rsp + 24] | |
mov rax, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rax | |
.LBB25_3: | |
mov rax, qword ptr [rsp + 8] | |
mov rdx, qword ptr [rsp + 16] | |
add rsp, 56 | |
ret | |
std::panicking::try: | |
sub rsp, 56 | |
mov qword ptr [rsp + 40], rdi | |
mov rax, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 24], rax | |
mov rdi, qword ptr [rip + std::panicking::try::do_call@GOTPCREL] | |
lea rsi, [rsp + 24] | |
mov rdx, qword ptr [rip + std::panicking::try::do_catch@GOTPCREL] | |
call __rust_try | |
mov dword ptr [rsp + 52], eax | |
cmp dword ptr [rsp + 52], 0 | |
jne .LBB26_2 | |
mov qword ptr [rsp + 8], 0 | |
jmp .LBB26_3 | |
.LBB26_2: | |
mov rcx, qword ptr [rsp + 24] | |
mov rax, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rax | |
.LBB26_3: | |
mov rax, qword ptr [rsp + 8] | |
mov rdx, qword ptr [rsp + 16] | |
add rsp, 56 | |
ret | |
std::panicking::try::do_call: | |
push rax | |
mov rdi, qword ptr [rdi] | |
call qword ptr [rip + <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once@GOTPCREL] | |
pop rax | |
ret | |
std::panicking::try::do_call: | |
push rax | |
mov rdi, qword ptr [rdi] | |
call qword ptr [rip + <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once@GOTPCREL] | |
pop rax | |
ret | |
std::panicking::try::do_catch: | |
sub rsp, 56 | |
mov qword ptr [rsp + 8], rsi | |
mov rax, rdi | |
mov rdi, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 16], rax | |
mov rax, qword ptr [rip + std::panicking::try::cleanup@GOTPCREL] | |
call rax | |
mov qword ptr [rsp + 24], rdx | |
mov qword ptr [rsp + 32], rax | |
jmp .LBB29_2 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB29_2: | |
mov rax, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rsp + 24] | |
mov rdx, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 40], rdx | |
mov qword ptr [rsp + 48], rcx | |
mov rdx, qword ptr [rsp + 40] | |
mov rcx, qword ptr [rsp + 48] | |
mov qword ptr [rax], rdx | |
mov qword ptr [rax + 8], rcx | |
add rsp, 56 | |
ret | |
std::panicking::try::do_catch: | |
sub rsp, 56 | |
mov qword ptr [rsp + 8], rsi | |
mov rax, rdi | |
mov rdi, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 16], rax | |
mov rax, qword ptr [rip + std::panicking::try::cleanup@GOTPCREL] | |
call rax | |
mov qword ptr [rsp + 24], rdx | |
mov qword ptr [rsp + 32], rax | |
jmp .LBB30_2 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB30_2: | |
mov rax, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rsp + 24] | |
mov rdx, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 40], rdx | |
mov qword ptr [rsp + 48], rcx | |
mov rdx, qword ptr [rsp + 40] | |
mov rcx, qword ptr [rsp + 48] | |
mov qword ptr [rax], rdx | |
mov qword ptr [rax + 8], rcx | |
add rsp, 56 | |
ret | |
<&T as core::fmt::Debug>::fmt: | |
push rax | |
mov rdi, qword ptr [rdi] | |
call qword ptr [rip + <core::option::Option<T> as core::fmt::Debug>::fmt@GOTPCREL] | |
and al, 1 | |
movzx eax, al | |
pop rcx | |
ret | |
<&T as core::fmt::Debug>::fmt: | |
push rax | |
mov rdi, qword ptr [rdi] | |
call core::fmt::num::<impl core::fmt::Debug for usize>::fmt | |
and al, 1 | |
movzx eax, al | |
pop rcx | |
ret | |
<i32 as core::iter::range::Step>::steps_between: | |
mov qword ptr [rsp - 32], rdi | |
mov qword ptr [rsp - 24], rsi | |
mov eax, dword ptr [rdi] | |
cmp eax, dword ptr [rsi] | |
jle .LBB33_2 | |
mov qword ptr [rsp - 16], 0 | |
jmp .LBB33_3 | |
.LBB33_2: | |
mov rcx, qword ptr [rsp - 32] | |
mov rax, qword ptr [rsp - 24] | |
movsxd rax, dword ptr [rax] | |
movsxd rcx, dword ptr [rcx] | |
sub rax, rcx | |
mov qword ptr [rsp - 8], rax | |
mov qword ptr [rsp - 16], 1 | |
.LBB33_3: | |
mov rax, qword ptr [rsp - 16] | |
mov rdx, qword ptr [rsp - 8] | |
ret | |
<i32 as core::iter::range::Step>::forward_unchecked: | |
mov eax, edi | |
mov ecx, esi | |
add eax, ecx | |
ret | |
<&A as core::alloc::Allocator>::deallocate: | |
push rax | |
mov rdi, qword ptr [rdi] | |
call <alloc::alloc::Global as core::alloc::Allocator>::deallocate | |
pop rax | |
ret | |
core::cmp::impls::<impl core::cmp::Ord for usize>::cmp: | |
mov qword ptr [rsp - 24], rdi | |
mov qword ptr [rsp - 16], rsi | |
mov rax, qword ptr [rdi] | |
cmp rax, qword ptr [rsi] | |
jb .LBB36_2 | |
mov rcx, qword ptr [rsp - 16] | |
mov rax, qword ptr [rsp - 24] | |
mov rax, qword ptr [rax] | |
cmp rax, qword ptr [rcx] | |
je .LBB36_4 | |
jmp .LBB36_3 | |
.LBB36_2: | |
mov byte ptr [rsp - 1], -1 | |
jmp .LBB36_6 | |
.LBB36_3: | |
mov byte ptr [rsp - 1], 1 | |
jmp .LBB36_5 | |
.LBB36_4: | |
mov byte ptr [rsp - 1], 0 | |
.LBB36_5: | |
jmp .LBB36_6 | |
.LBB36_6: | |
mov al, byte ptr [rsp - 1] | |
ret | |
core::cmp::max_by: | |
sub rsp, 88 | |
mov qword ptr [rsp + 16], rdi | |
mov qword ptr [rsp + 24], rsi | |
mov byte ptr [rsp + 71], 1 | |
mov byte ptr [rsp + 70], 1 | |
lea rax, [rsp + 16] | |
mov qword ptr [rsp + 48], rax | |
lea rax, [rsp + 24] | |
mov qword ptr [rsp + 56], rax | |
mov rdi, qword ptr [rsp + 48] | |
mov rsi, qword ptr [rsp + 56] | |
call core::ops::function::FnOnce::call_once | |
mov byte ptr [rsp + 15], al | |
jmp .LBB37_3 | |
.LBB37_1: | |
jmp .LBB37_12 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 72], rcx | |
mov dword ptr [rsp + 80], eax | |
jmp .LBB37_1 | |
.LBB37_3: | |
mov al, byte ptr [rsp + 15] | |
mov byte ptr [rsp + 47], al | |
mov al, byte ptr [rsp + 47] | |
inc al | |
sub al, 2 | |
jb .LBB37_5 | |
jmp .LBB37_15 | |
.LBB37_15: | |
jmp .LBB37_6 | |
ud2 | |
.LBB37_5: | |
mov byte ptr [rsp + 70], 0 | |
mov rax, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 32], rax | |
jmp .LBB37_7 | |
.LBB37_6: | |
mov byte ptr [rsp + 71], 0 | |
mov rax, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 32], rax | |
.LBB37_7: | |
test byte ptr [rsp + 70], 1 | |
jne .LBB37_9 | |
.LBB37_8: | |
test byte ptr [rsp + 71], 1 | |
jne .LBB37_11 | |
jmp .LBB37_10 | |
.LBB37_9: | |
jmp .LBB37_8 | |
.LBB37_10: | |
mov rax, qword ptr [rsp + 32] | |
add rsp, 88 | |
ret | |
.LBB37_11: | |
jmp .LBB37_10 | |
.LBB37_12: | |
test byte ptr [rsp + 71], 1 | |
jne .LBB37_14 | |
.LBB37_13: | |
mov rdi, qword ptr [rsp + 72] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB37_14: | |
jmp .LBB37_13 | |
core::fmt::num::<impl core::fmt::Debug for usize>::fmt: | |
sub rsp, 40 | |
mov qword ptr [rsp + 8], rsi | |
mov rax, rdi | |
mov rdi, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 16], rax | |
mov qword ptr [rsp + 24], rdi | |
call qword ptr [rip + core::fmt::Formatter::debug_lower_hex@GOTPCREL] | |
test al, 1 | |
jne .LBB38_2 | |
mov rdi, qword ptr [rsp + 24] | |
call qword ptr [rip + core::fmt::Formatter::debug_upper_hex@GOTPCREL] | |
test al, 1 | |
jne .LBB38_4 | |
jmp .LBB38_3 | |
.LBB38_2: | |
mov rsi, qword ptr [rsp + 24] | |
mov rdi, qword ptr [rsp + 16] | |
call qword ptr [rip + core::fmt::num::<impl core::fmt::LowerHex for usize>::fmt@GOTPCREL] | |
and al, 1 | |
mov byte ptr [rsp + 39], al | |
jmp .LBB38_6 | |
.LBB38_3: | |
mov rsi, qword ptr [rsp + 24] | |
mov rdi, qword ptr [rsp + 16] | |
call qword ptr [rip + core::fmt::num::imp::<impl core::fmt::Display for usize>::fmt@GOTPCREL] | |
and al, 1 | |
mov byte ptr [rsp + 39], al | |
jmp .LBB38_5 | |
.LBB38_4: | |
mov rsi, qword ptr [rsp + 24] | |
mov rdi, qword ptr [rsp + 16] | |
call qword ptr [rip + core::fmt::num::<impl core::fmt::UpperHex for usize>::fmt@GOTPCREL] | |
and al, 1 | |
mov byte ptr [rsp + 39], al | |
.LBB38_5: | |
jmp .LBB38_6 | |
.LBB38_6: | |
mov al, byte ptr [rsp + 39] | |
and al, 1 | |
movzx eax, al | |
add rsp, 40 | |
ret | |
core::fmt::Write::write_char: | |
sub rsp, 24 | |
mov qword ptr [rsp + 8], rdi | |
mov dword ptr [rsp + 4], esi | |
lea rdi, [rsp + 20] | |
xor esi, esi | |
mov edx, 4 | |
call memset@PLT | |
mov edi, dword ptr [rsp + 4] | |
lea rsi, [rsp + 20] | |
mov edx, 4 | |
call core::char::methods::encode_utf8_raw | |
mov rdi, qword ptr [rsp + 8] | |
mov rsi, rax | |
call qword ptr [rip + <std::io::Write::write_fmt::Adapter<T> as core::fmt::Write>::write_str@GOTPCREL] | |
and al, 1 | |
movzx eax, al | |
add rsp, 24 | |
ret | |
core::fmt::Write::write_fmt: | |
push rax | |
mov rdx, rsi | |
mov qword ptr [rsp], rdi | |
mov rdi, rsp | |
lea rsi, [rip + .L__unnamed_23] | |
call qword ptr [rip + core::fmt::write@GOTPCREL] | |
and al, 1 | |
movzx eax, al | |
pop rcx | |
ret | |
core::fmt::Arguments::new_v1: | |
sub rsp, 136 | |
mov qword ptr [rsp], r8 | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rdx | |
mov qword ptr [rsp + 24], rsi | |
mov qword ptr [rsp + 32], rdi | |
mov qword ptr [rsp + 40], rdi | |
cmp rdx, r8 | |
jb .LBB41_2 | |
mov rax, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rsp] | |
add rcx, 1 | |
cmp rax, rcx | |
seta al | |
and al, 1 | |
mov byte ptr [rsp + 55], al | |
jmp .LBB41_3 | |
.LBB41_2: | |
mov byte ptr [rsp + 55], 1 | |
.LBB41_3: | |
test byte ptr [rsp + 55], 1 | |
jne .LBB41_5 | |
mov rax, qword ptr [rsp + 40] | |
mov rcx, qword ptr [rsp + 32] | |
mov rdx, qword ptr [rsp] | |
mov rsi, qword ptr [rsp + 8] | |
mov rdi, qword ptr [rsp + 16] | |
mov r8, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 104], 0 | |
mov qword ptr [rcx], r8 | |
mov qword ptr [rcx + 8], rdi | |
mov r8, qword ptr [rsp + 104] | |
mov rdi, qword ptr [rsp + 112] | |
mov qword ptr [rcx + 32], r8 | |
mov qword ptr [rcx + 40], rdi | |
mov qword ptr [rcx + 16], rsi | |
mov qword ptr [rcx + 24], rdx | |
add rsp, 136 | |
ret | |
.LBB41_5: | |
mov qword ptr [rsp + 120], 0 | |
lea rax, [rip + .L__unnamed_6] | |
mov qword ptr [rsp + 56], rax | |
mov qword ptr [rsp + 64], 1 | |
mov rcx, qword ptr [rsp + 120] | |
mov rax, qword ptr [rsp + 128] | |
mov qword ptr [rsp + 88], rcx | |
mov qword ptr [rsp + 96], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 72], rax | |
mov qword ptr [rsp + 80], 0 | |
lea rsi, [rip + .L__unnamed_24] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 56] | |
call rax | |
ud2 | |
core::fmt::Arguments::new_const: | |
sub rsp, 104 | |
mov qword ptr [rsp + 8], rdx | |
mov qword ptr [rsp + 16], rsi | |
mov qword ptr [rsp + 24], rdi | |
mov qword ptr [rsp + 32], rdi | |
cmp rdx, 1 | |
ja .LBB42_2 | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 24] | |
mov rdx, qword ptr [rsp + 8] | |
mov rsi, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 88], 0 | |
mov qword ptr [rcx], rsi | |
mov qword ptr [rcx + 8], rdx | |
mov rsi, qword ptr [rsp + 88] | |
mov rdx, qword ptr [rsp + 96] | |
mov qword ptr [rcx + 32], rsi | |
mov qword ptr [rcx + 40], rdx | |
lea rdx, [rip + .L__unnamed_4] | |
mov qword ptr [rcx + 16], rdx | |
mov qword ptr [rcx + 24], 0 | |
add rsp, 104 | |
ret | |
.LBB42_2: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 40] | |
mov qword ptr [rsp], rdi | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
mov rdi, qword ptr [rsp] | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
core::ops::function::FnOnce::call_once{{vtable.shim}}: | |
push rax | |
call qword ptr [rip + std::thread::Builder::spawn_unchecked_::{{closure}}@GOTPCREL] | |
pop rax | |
ret | |
core::ops::function::FnOnce::call_once: | |
push rax | |
call qword ptr [rip + std::sys_common::thread::min_stack@GOTPCREL] | |
pop rcx | |
ret | |
core::ops::function::FnOnce::call_once: | |
sub rsp, 24 | |
mov qword ptr [rsp + 8], rdi | |
mov qword ptr [rsp + 16], rsi | |
mov rdi, qword ptr [rsp + 8] | |
mov rsi, qword ptr [rsp + 16] | |
call core::cmp::impls::<impl core::cmp::Ord for usize>::cmp | |
add rsp, 24 | |
ret | |
core::ops::function::FnOnce::call_once: | |
sub rsp, 40 | |
mov qword ptr [rsp + 8], rdi | |
mov rax, qword ptr [rip + <std::thread::Packet<T> as core::ops::drop::Drop>::drop::{{closure}}@GOTPCREL] | |
lea rdi, [rsp + 8] | |
call rax | |
jmp .LBB46_3 | |
.LBB46_1: | |
mov rdi, qword ptr [rsp + 24] | |
call _Unwind_Resume@PLT | |
ud2 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 24], rcx | |
mov dword ptr [rsp + 32], eax | |
jmp .LBB46_1 | |
.LBB46_3: | |
add rsp, 40 | |
ret | |
core::ptr::drop_in_place<alloc::sync::Arc<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>>>: | |
push rax | |
call qword ptr [rip + <alloc::sync::Arc<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<std::io::error::ErrorData<alloc::boxed::Box<std::io::error::Custom>>>: | |
push rax | |
mov qword ptr [rsp], rdi | |
mov al, byte ptr [rdi] | |
sub al, 3 | |
jb .LBB48_2 | |
jmp .LBB48_1 | |
.LBB48_1: | |
mov rdi, qword ptr [rsp] | |
add rdi, 8 | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::boxed::Box<std::io::error::Custom>>@GOTPCREL] | |
.LBB48_2: | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::sync::Weak<std::thread::scoped::ScopeData,&alloc::alloc::Global>>: | |
push rax | |
call qword ptr [rip + <alloc::sync::Weak<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<core::option::Option<alloc::sync::Arc<std::thread::scoped::ScopeData>>>: | |
push rax | |
mov qword ptr [rsp], rdi | |
mov rdx, qword ptr [rdi] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB50_2 | |
.LBB50_1: | |
pop rax | |
ret | |
.LBB50_2: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::scoped::ScopeData>>@GOTPCREL] | |
jmp .LBB50_1 | |
core::ptr::drop_in_place<&mut std::io::Write::write_fmt::Adapter<std::sys::unix::stdio::Stderr>>: | |
ret | |
core::ptr::drop_in_place<alloc::sync::Weak<std::thread::Packet<()>,&alloc::alloc::Global>>: | |
push rax | |
call qword ptr [rip + <alloc::sync::Weak<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::boxed::Box<dyn core::error::Error+core::marker::Sync+core::marker::Send>>: | |
sub rsp, 24 | |
mov rax, rdi | |
mov qword ptr [rsp], rax | |
mov rdi, qword ptr [rax] | |
mov rax, qword ptr [rax + 8] | |
mov rax, qword ptr [rax] | |
call rax | |
jmp .LBB53_3 | |
.LBB53_1: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rip + <alloc::boxed::Box<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
call rax | |
jmp .LBB53_5 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB53_1 | |
.LBB53_3: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + <alloc::boxed::Box<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
add rsp, 24 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB53_5: | |
mov rdi, qword ptr [rsp + 8] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::ptr::drop_in_place<alloc::sync::Weak<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>,&alloc::alloc::Global>>: | |
push rax | |
call qword ptr [rip + <alloc::sync::Weak<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<core::option::Option<alloc::sync::Arc<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>>>>: | |
push rax | |
mov qword ptr [rsp], rdi | |
mov rdx, qword ptr [rdi] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB55_2 | |
.LBB55_1: | |
pop rax | |
ret | |
.LBB55_2: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>>>@GOTPCREL] | |
jmp .LBB55_1 | |
core::ptr::drop_in_place<core::result::Result<(),alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>>: | |
push rax | |
mov qword ptr [rsp], rdi | |
mov rdx, qword ptr [rdi] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB56_2 | |
.LBB56_1: | |
pop rax | |
ret | |
.LBB56_2: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>@GOTPCREL] | |
jmp .LBB56_1 | |
core::ptr::drop_in_place<std::thread::Builder::spawn_unchecked_::MaybeDangling<example::main::{{closure}}::{{closure}}>>: | |
push rax | |
call qword ptr [rip + <std::thread::Builder::spawn_unchecked_::MaybeDangling<T> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<core::option::Option<core::result::Result<(),alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>>>: | |
push rax | |
mov qword ptr [rsp], rdi | |
cmp qword ptr [rdi], 0 | |
jne .LBB58_2 | |
.LBB58_1: | |
pop rax | |
ret | |
.LBB58_2: | |
mov rdi, qword ptr [rsp] | |
add rdi, 8 | |
call qword ptr [rip + core::ptr::drop_in_place<core::result::Result<(),alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>>@GOTPCREL] | |
jmp .LBB58_1 | |
core::ptr::drop_in_place<std::thread::Builder::spawn_unchecked_<example::main::{{closure}}::{{closure}},()>::{{closure}}>: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Thread>@GOTPCREL] | |
call rax | |
jmp .LBB59_3 | |
.LBB59_1: | |
mov rdi, qword ptr [rsp] | |
add rdi, 16 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<alloc::sync::Arc<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>>>>@GOTPCREL] | |
call rax | |
jmp .LBB59_4 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB59_1 | |
.LBB59_3: | |
mov rdi, qword ptr [rsp] | |
add rdi, 16 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<alloc::sync::Arc<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>>>>@GOTPCREL] | |
call rax | |
jmp .LBB59_6 | |
.LBB59_4: | |
mov rdi, qword ptr [rsp] | |
add rdi, 24 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Builder::spawn_unchecked_::MaybeDangling<example::main::{{closure}}::{{closure}}>>@GOTPCREL] | |
call rax | |
jmp .LBB59_7 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB59_4 | |
.LBB59_6: | |
mov rdi, qword ptr [rsp] | |
add rdi, 24 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Builder::spawn_unchecked_::MaybeDangling<example::main::{{closure}}::{{closure}}>>@GOTPCREL] | |
call rax | |
jmp .LBB59_9 | |
.LBB59_7: | |
mov rdi, qword ptr [rsp] | |
add rdi, 8 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
call rax | |
jmp .LBB59_11 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB59_7 | |
.LBB59_9: | |
mov rdi, qword ptr [rsp] | |
add rdi, 8 | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
add rsp, 24 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB59_11: | |
mov rdi, qword ptr [rsp + 8] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::ptr::drop_in_place<core::cell::UnsafeCell<core::option::Option<core::result::Result<(),alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>>>>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<core::option::Option<core::result::Result<(),alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<std::thread::JoinHandle<()>,alloc::alloc::Global>>: | |
push rax | |
call qword ptr [rip + <<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::vec::Vec<std::thread::JoinHandle<()>>::extend_trusted<core::iter::adapters::map::Map<core::ops::range::Range<i32>,example::main::{{closure}}>>::{{closure}}>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::vec::set_len_on_drop::SetLenOnDrop>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<&usize>: | |
ret | |
core::ptr::drop_in_place<core::iter::traits::iterator::Iterator::for_each::call<std::thread::JoinHandle<()>,alloc::vec::Vec<std::thread::JoinHandle<()>>::extend_trusted<core::iter::adapters::map::Map<core::ops::range::Range<i32>,example::main::{{closure}}>>::{{closure}}>::{{closure}}>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::vec::Vec<std::thread::JoinHandle<()>>::extend_trusted<core::iter::adapters::map::Map<core::ops::range::Range<i32>,example::main::{{closure}}>>::{{closure}}>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<std::thread::Inner>: | |
push rax | |
add rdi, 8 | |
call qword ptr [rip + core::ptr::drop_in_place<core::option::Option<alloc::ffi::c_str::CString>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<std::thread::Thread>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<core::pin::Pin<alloc::sync::Arc<std::thread::Inner>>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::string::String>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::vec::Vec<u8>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<std::io::error::Error>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<std::io::error::repr_bitpacked::Repr>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<std::io::error::Custom>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::boxed::Box<dyn core::error::Error+core::marker::Sync+core::marker::Send>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::vec::Vec<u8>>: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rip + <alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
call rax | |
jmp .LBB70_3 | |
.LBB70_1: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>>@GOTPCREL] | |
call rax | |
jmp .LBB70_5 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB70_1 | |
.LBB70_3: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>>@GOTPCREL] | |
add rsp, 24 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB70_5: | |
mov rdi, qword ptr [rsp + 8] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::ptr::drop_in_place<alloc::ffi::c_str::CString>: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
call <alloc::ffi::c_str::CString as core::ops::drop::Drop>::drop | |
jmp .LBB71_3 | |
.LBB71_1: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::boxed::Box<[u8]>>@GOTPCREL] | |
call rax | |
jmp .LBB71_5 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB71_1 | |
.LBB71_3: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::boxed::Box<[u8]>>@GOTPCREL] | |
add rsp, 24 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB71_5: | |
mov rdi, qword ptr [rsp + 8] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::ptr::drop_in_place<alloc::ffi::c_str::NulError>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::vec::Vec<u8>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<std::sys::unix::thread::Thread>: | |
push rax | |
call qword ptr [rip + <std::sys::unix::thread::Thread as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<std::thread::scoped::ScopeData>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<std::thread::Thread>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::raw_vec::RawVec<u8>>: | |
push rax | |
call qword ptr [rip + <alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<core::iter::adapters::map::map_fold<i32,std::thread::JoinHandle<()>,(),example::main::{{closure}},core::iter::traits::iterator::Iterator::for_each::call<std::thread::JoinHandle<()>,alloc::vec::Vec<std::thread::JoinHandle<()>>::extend_trusted<core::iter::adapters::map::Map<core::ops::range::Range<i32>,example::main::{{closure}}>>::{{closure}}>::{{closure}}>::{{closure}}>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<core::iter::traits::iterator::Iterator::for_each::call<std::thread::JoinHandle<()>,alloc::vec::Vec<std::thread::JoinHandle<()>>::extend_trusted<core::iter::adapters::map::Map<core::ops::range::Range<i32>,example::main::{{closure}}>>::{{closure}}>::{{closure}}>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<std::thread::Packet<()>>: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rip + <std::thread::Packet<T> as core::ops::drop::Drop>::drop@GOTPCREL] | |
call rax | |
jmp .LBB77_3 | |
.LBB77_1: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<alloc::sync::Arc<std::thread::scoped::ScopeData>>>@GOTPCREL] | |
call rax | |
jmp .LBB77_4 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB77_1 | |
.LBB77_3: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<alloc::sync::Arc<std::thread::scoped::ScopeData>>>@GOTPCREL] | |
call rax | |
jmp .LBB77_6 | |
.LBB77_4: | |
mov rdi, qword ptr [rsp] | |
add rdi, 8 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::cell::UnsafeCell<core::option::Option<core::result::Result<(),alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>>>>@GOTPCREL] | |
call rax | |
jmp .LBB77_8 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB77_4 | |
.LBB77_6: | |
mov rdi, qword ptr [rsp] | |
add rdi, 8 | |
call qword ptr [rip + core::ptr::drop_in_place<core::cell::UnsafeCell<core::option::Option<core::result::Result<(),alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>>>>@GOTPCREL] | |
add rsp, 24 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB77_8: | |
mov rdi, qword ptr [rsp + 8] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::ptr::drop_in_place<std::io::error::repr_bitpacked::Repr>: | |
push rax | |
call <std::io::error::repr_bitpacked::Repr as core::ops::drop::Drop>::drop | |
pop rax | |
ret | |
core::ptr::drop_in_place<&core::option::Option<usize>>: | |
ret | |
core::ptr::drop_in_place<alloc::boxed::Box<[u8]>>: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + <alloc::boxed::Box<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
add rsp, 24 | |
ret | |
core::ptr::drop_in_place<std::thread::JoinInner<()>>: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
add rdi, 16 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::sys::unix::thread::Thread>@GOTPCREL] | |
call rax | |
jmp .LBB81_3 | |
.LBB81_1: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Thread>@GOTPCREL] | |
call rax | |
jmp .LBB81_4 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB81_1 | |
.LBB81_3: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Thread>@GOTPCREL] | |
call rax | |
jmp .LBB81_6 | |
.LBB81_4: | |
mov rdi, qword ptr [rsp] | |
add rdi, 8 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
call rax | |
jmp .LBB81_8 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB81_4 | |
.LBB81_6: | |
mov rdi, qword ptr [rsp] | |
add rdi, 8 | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>@GOTPCREL] | |
add rsp, 24 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB81_8: | |
mov rdi, qword ptr [rsp + 8] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::ptr::drop_in_place<std::thread::JoinHandle<()>>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<std::thread::JoinInner<()>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::vec::set_len_on_drop::SetLenOnDrop>: | |
push rax | |
call <alloc::vec::set_len_on_drop::SetLenOnDrop as core::ops::drop::Drop>::drop | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Inner>>: | |
push rax | |
call qword ptr [rip + <alloc::sync::Arc<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<dyn core::any::Any+core::marker::Send>: | |
push rax | |
call qword ptr [rsi] | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::boxed::Box<std::io::error::Custom>>: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
mov rdi, qword ptr [rdi] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::io::error::Custom>@GOTPCREL] | |
call rax | |
jmp .LBB86_3 | |
.LBB86_1: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rip + <alloc::boxed::Box<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
call rax | |
jmp .LBB86_5 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB86_1 | |
.LBB86_3: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + <alloc::boxed::Box<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
add rsp, 24 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB86_5: | |
mov rdi, qword ptr [rsp + 8] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::ptr::drop_in_place<[std::thread::JoinHandle<()>]>: | |
sub rsp, 40 | |
mov qword ptr [rsp], rdi | |
mov qword ptr [rsp + 8], rsi | |
mov qword ptr [rsp + 16], 0 | |
.LBB87_1: | |
mov rax, qword ptr [rsp + 8] | |
cmp qword ptr [rsp + 16], rax | |
je .LBB87_3 | |
mov rcx, qword ptr [rsp] | |
mov rax, qword ptr [rsp + 16] | |
lea rdx, [rax + 2*rax] | |
lea rdi, [rcx + 8*rdx] | |
inc rax | |
mov qword ptr [rsp + 16], rax | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::JoinHandle<()>>@GOTPCREL] | |
call rax | |
jmp .LBB87_1 | |
.LBB87_3: | |
add rsp, 40 | |
ret | |
.LBB87_4: | |
mov rax, qword ptr [rsp + 8] | |
cmp qword ptr [rsp + 16], rax | |
je .LBB87_7 | |
jmp .LBB87_6 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 24], rcx | |
mov dword ptr [rsp + 32], eax | |
jmp .LBB87_4 | |
.LBB87_6: | |
mov rcx, qword ptr [rsp] | |
mov rax, qword ptr [rsp + 16] | |
lea rdx, [rax + 2*rax] | |
lea rdi, [rcx + 8*rdx] | |
inc rax | |
mov qword ptr [rsp + 16], rax | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::JoinHandle<()>>@GOTPCREL] | |
call rax | |
jmp .LBB87_4 | |
.LBB87_7: | |
mov rdi, qword ptr [rsp + 24] | |
call _Unwind_Resume@PLT | |
ud2 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
core::ptr::drop_in_place<core::option::Option<alloc::string::String>>: | |
push rax | |
mov qword ptr [rsp], rdi | |
mov rdx, qword ptr [rdi] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB88_2 | |
.LBB88_1: | |
pop rax | |
ret | |
.LBB88_2: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::string::String>@GOTPCREL] | |
jmp .LBB88_1 | |
core::ptr::drop_in_place<alloc::sync::Arc<std::thread::scoped::ScopeData>>: | |
push rax | |
call qword ptr [rip + <alloc::sync::Arc<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<core::option::Option<alloc::ffi::c_str::CString>>: | |
push rax | |
mov qword ptr [rsp], rdi | |
mov rdx, qword ptr [rdi] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB90_2 | |
.LBB90_1: | |
pop rax | |
ret | |
.LBB90_2: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::ffi::c_str::CString>@GOTPCREL] | |
jmp .LBB90_1 | |
core::ptr::drop_in_place<core::cell::UnsafeCell<alloc::vec::Vec<u8>>>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::vec::Vec<u8>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>>: | |
push rax | |
add rdi, 8 | |
call qword ptr [rip + core::ptr::drop_in_place<core::cell::UnsafeCell<alloc::vec::Vec<u8>>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Packet<()>>>: | |
push rax | |
call qword ptr [rip + <alloc::sync::Arc<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<core::result::Result<(),std::io::error::Error>>: | |
push rax | |
mov qword ptr [rsp], rdi | |
mov rdx, qword ptr [rdi] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB94_2 | |
.LBB94_1: | |
pop rax | |
ret | |
.LBB94_2: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + core::ptr::drop_in_place<std::io::error::Error>@GOTPCREL] | |
jmp .LBB94_1 | |
core::ptr::drop_in_place<alloc::vec::Vec<std::thread::JoinHandle<()>>>: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rip + <alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
call rax | |
jmp .LBB95_3 | |
.LBB95_1: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::raw_vec::RawVec<std::thread::JoinHandle<()>>>@GOTPCREL] | |
call rax | |
jmp .LBB95_5 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB95_1 | |
.LBB95_3: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::raw_vec::RawVec<std::thread::JoinHandle<()>>>@GOTPCREL] | |
add rsp, 24 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB95_5: | |
mov rdi, qword ptr [rsp + 8] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::ptr::drop_in_place<alloc::sync::ArcInner<std::thread::Packet<()>>>: | |
push rax | |
add rdi, 16 | |
call qword ptr [rip + core::ptr::drop_in_place<std::thread::Packet<()>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<core::pin::Pin<alloc::sync::Arc<std::thread::Inner>>>: | |
push rax | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Arc<std::thread::Inner>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::raw_vec::RawVec<std::thread::JoinHandle<()>>>: | |
push rax | |
call qword ptr [rip + <alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>: | |
sub rsp, 24 | |
mov rax, rdi | |
mov qword ptr [rsp], rax | |
mov rdi, qword ptr [rax] | |
mov rax, qword ptr [rax + 8] | |
mov rax, qword ptr [rax] | |
call rax | |
jmp .LBB99_3 | |
.LBB99_1: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rip + <alloc::boxed::Box<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
call rax | |
jmp .LBB99_5 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 8], rcx | |
mov dword ptr [rsp + 16], eax | |
jmp .LBB99_1 | |
.LBB99_3: | |
mov rdi, qword ptr [rsp] | |
call qword ptr [rip + <alloc::boxed::Box<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
add rsp, 24 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB99_5: | |
mov rdi, qword ptr [rsp + 8] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::ptr::drop_in_place<alloc::sync::Weak<std::thread::Inner,&alloc::alloc::Global>>: | |
push rax | |
call qword ptr [rip + <alloc::sync::Weak<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<std::io::Write::write_fmt::Adapter<std::sys::unix::stdio::Stderr>>: | |
push rax | |
add rdi, 8 | |
call qword ptr [rip + core::ptr::drop_in_place<core::result::Result<(),std::io::error::Error>>@GOTPCREL] | |
pop rax | |
ret | |
core::ptr::drop_in_place<dyn core::error::Error+core::marker::Sync+core::marker::Send>: | |
push rax | |
call qword ptr [rsi] | |
pop rax | |
ret | |
core::ptr::drop_in_place<alloc::vec::into_iter::IntoIter<std::thread::JoinHandle<()>>>: | |
push rax | |
call qword ptr [rip + <alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop@GOTPCREL] | |
pop rax | |
ret | |
core::char::methods::encode_utf8_raw: | |
sub rsp, 216 | |
mov qword ptr [rsp + 16], rsi | |
mov qword ptr [rsp + 24], rdx | |
mov dword ptr [rsp + 36], edi | |
mov eax, dword ptr [rsp + 36] | |
mov dword ptr [rsp + 32], eax | |
cmp eax, 128 | |
jb .LBB104_2 | |
mov eax, dword ptr [rsp + 32] | |
cmp eax, 2048 | |
jb .LBB104_4 | |
jmp .LBB104_3 | |
.LBB104_2: | |
mov qword ptr [rsp + 40], 1 | |
jmp .LBB104_9 | |
.LBB104_3: | |
mov eax, dword ptr [rsp + 32] | |
cmp eax, 65536 | |
jb .LBB104_6 | |
jmp .LBB104_5 | |
.LBB104_4: | |
mov qword ptr [rsp + 40], 2 | |
jmp .LBB104_8 | |
.LBB104_5: | |
mov qword ptr [rsp + 40], 4 | |
jmp .LBB104_7 | |
.LBB104_6: | |
mov qword ptr [rsp + 40], 3 | |
.LBB104_7: | |
jmp .LBB104_8 | |
.LBB104_8: | |
jmp .LBB104_9 | |
.LBB104_9: | |
mov rax, qword ptr [rsp + 40] | |
dec rax | |
mov qword ptr [rsp + 8], rax | |
sub rax, 3 | |
ja .LBB104_10 | |
mov rax, qword ptr [rsp + 8] | |
lea rcx, [rip + .LJTI104_0] | |
movsxd rax, dword ptr [rcx + 4*rax] | |
add rax, rcx | |
jmp rax | |
.LBB104_10: | |
mov rcx, qword ptr [rsp + 24] | |
lea rax, [rsp + 40] | |
mov qword ptr [rsp + 144], rax | |
mov rax, qword ptr [rip + core::fmt::num::imp::<impl core::fmt::Display for usize>::fmt@GOTPCREL] | |
mov qword ptr [rsp + 152], rax | |
lea rdx, [rsp + 36] | |
mov qword ptr [rsp + 160], rdx | |
mov rdx, qword ptr [rip + core::fmt::num::<impl core::fmt::UpperHex for u32>::fmt@GOTPCREL] | |
mov qword ptr [rsp + 168], rdx | |
mov qword ptr [rsp + 192], rcx | |
lea rcx, [rsp + 192] | |
mov qword ptr [rsp + 176], rcx | |
mov qword ptr [rsp + 184], rax | |
mov rcx, qword ptr [rsp + 144] | |
mov rax, qword ptr [rsp + 152] | |
mov qword ptr [rsp + 96], rcx | |
mov qword ptr [rsp + 104], rax | |
mov rcx, qword ptr [rsp + 160] | |
mov rax, qword ptr [rsp + 168] | |
mov qword ptr [rsp + 112], rcx | |
mov qword ptr [rsp + 120], rax | |
mov rcx, qword ptr [rsp + 176] | |
mov rax, qword ptr [rsp + 184] | |
mov qword ptr [rsp + 128], rcx | |
mov qword ptr [rsp + 136], rax | |
lea rsi, [rip + .L__unnamed_25] | |
lea rdi, [rsp + 48] | |
mov qword ptr [rsp], rdi | |
lea rcx, [rsp + 96] | |
mov r8d, 3 | |
mov rdx, r8 | |
call core::fmt::Arguments::new_v1 | |
mov rdi, qword ptr [rsp] | |
lea rsi, [rip + .L__unnamed_26] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
.LBB104_11: | |
mov rax, qword ptr [rsp + 24] | |
cmp rax, 1 | |
jae .LBB104_15 | |
jmp .LBB104_10 | |
.LBB104_12: | |
mov rax, qword ptr [rsp + 24] | |
cmp rax, 2 | |
jae .LBB104_17 | |
jmp .LBB104_10 | |
.LBB104_13: | |
mov rax, qword ptr [rsp + 24] | |
cmp rax, 3 | |
jae .LBB104_18 | |
jmp .LBB104_10 | |
.LBB104_14: | |
mov rax, qword ptr [rsp + 24] | |
cmp rax, 4 | |
jae .LBB104_19 | |
jmp .LBB104_10 | |
.LBB104_15: | |
mov rax, qword ptr [rsp + 16] | |
mov ecx, dword ptr [rsp + 36] | |
mov byte ptr [rax], cl | |
.LBB104_16: | |
mov rcx, qword ptr [rsp + 24] | |
mov rdx, qword ptr [rsp + 16] | |
mov rax, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 200], 0 | |
mov qword ptr [rsp + 208], rax | |
mov rdi, qword ptr [rsp + 200] | |
mov rsi, qword ptr [rsp + 208] | |
lea r8, [rip + .L__unnamed_27] | |
mov rax, qword ptr [rip + <core::ops::range::Range<usize> as core::slice::index::SliceIndex<[T]>>::index_mut@GOTPCREL] | |
call rax | |
add rsp, 216 | |
ret | |
.LBB104_17: | |
mov rax, qword ptr [rsp + 16] | |
mov ecx, dword ptr [rsp + 36] | |
shr ecx, 6 | |
and ecx, 31 | |
or cl, -64 | |
mov byte ptr [rax], cl | |
mov ecx, dword ptr [rsp + 36] | |
and ecx, 63 | |
or cl, -128 | |
mov byte ptr [rax + 1], cl | |
jmp .LBB104_16 | |
.LBB104_18: | |
mov rax, qword ptr [rsp + 16] | |
mov ecx, dword ptr [rsp + 36] | |
shr ecx, 12 | |
and ecx, 15 | |
or cl, -32 | |
mov byte ptr [rax], cl | |
mov ecx, dword ptr [rsp + 36] | |
shr ecx, 6 | |
and ecx, 63 | |
or cl, -128 | |
mov byte ptr [rax + 1], cl | |
mov ecx, dword ptr [rsp + 36] | |
and ecx, 63 | |
or cl, -128 | |
mov byte ptr [rax + 2], cl | |
jmp .LBB104_16 | |
.LBB104_19: | |
mov rax, qword ptr [rsp + 16] | |
mov ecx, dword ptr [rsp + 36] | |
shr ecx, 18 | |
and ecx, 7 | |
or cl, -16 | |
mov byte ptr [rax], cl | |
mov ecx, dword ptr [rsp + 36] | |
shr ecx, 12 | |
and ecx, 63 | |
or cl, -128 | |
mov byte ptr [rax + 1], cl | |
mov ecx, dword ptr [rsp + 36] | |
shr ecx, 6 | |
and ecx, 63 | |
or cl, -128 | |
mov byte ptr [rax + 2], cl | |
mov ecx, dword ptr [rsp + 36] | |
and ecx, 63 | |
or cl, -128 | |
mov byte ptr [rax + 3], cl | |
jmp .LBB104_16 | |
.LJTI104_0: | |
.long .LBB104_11-.LJTI104_0 | |
.long .LBB104_12-.LJTI104_0 | |
.long .LBB104_13-.LJTI104_0 | |
.long .LBB104_14-.LJTI104_0 | |
core::iter::range::<impl core::iter::traits::iterator::Iterator for core::ops::range::Range<A>>::next: | |
push rax | |
mov rax, qword ptr [rip + <core::ops::range::Range<T> as core::iter::range::RangeIteratorImpl>::spec_next@GOTPCREL] | |
call rax | |
pop rcx | |
ret | |
core::iter::range::<impl core::iter::traits::iterator::Iterator for core::ops::range::Range<A>>::size_hint: | |
sub rsp, 88 | |
mov qword ptr [rsp + 24], rsi | |
mov qword ptr [rsp + 32], rdi | |
mov qword ptr [rsp + 40], rdi | |
mov eax, dword ptr [rsi] | |
cmp eax, dword ptr [rsi + 4] | |
jl .LBB106_2 | |
mov rax, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 80], 0 | |
mov qword ptr [rsp + 72], 1 | |
mov qword ptr [rax], 0 | |
mov rdx, qword ptr [rsp + 72] | |
mov rcx, qword ptr [rsp + 80] | |
mov qword ptr [rax + 8], rdx | |
mov qword ptr [rax + 16], rcx | |
jmp .LBB106_3 | |
.LBB106_2: | |
mov rdi, qword ptr [rsp + 24] | |
mov rsi, rdi | |
add rsi, 4 | |
call <i32 as core::iter::range::Step>::steps_between | |
mov qword ptr [rsp + 8], rax | |
mov qword ptr [rsp + 16], rdx | |
mov qword ptr [rsp + 56], rax | |
mov qword ptr [rsp + 64], rdx | |
cmp qword ptr [rsp + 56], 0 | |
je .LBB106_4 | |
jmp .LBB106_5 | |
.LBB106_3: | |
mov rax, qword ptr [rsp + 40] | |
add rsp, 88 | |
ret | |
.LBB106_4: | |
mov qword ptr [rsp + 48], -1 | |
jmp .LBB106_6 | |
.LBB106_5: | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 48], rax | |
.LBB106_6: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp + 8] | |
mov rsi, qword ptr [rsp + 48] | |
mov qword ptr [rax], rsi | |
mov qword ptr [rax + 8], rdx | |
mov qword ptr [rax + 16], rcx | |
jmp .LBB106_3 | |
core::iter::traits::exact_size::ExactSizeIterator::len: | |
sub rsp, 136 | |
mov rsi, rdi | |
mov rax, qword ptr [rip + <alloc::vec::into_iter::IntoIter<T,A> as core::iter::traits::iterator::Iterator>::size_hint@GOTPCREL] | |
lea rdi, [rsp + 40] | |
call rax | |
mov rax, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 8], rax | |
mov rdx, qword ptr [rsp + 48] | |
mov rcx, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 24], rdx | |
mov qword ptr [rsp + 32], rcx | |
mov qword ptr [rsp + 72], rax | |
mov qword ptr [rsp + 64], 1 | |
mov rax, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 16], rax | |
test rax, rax | |
je .LBB107_2 | |
jmp .LBB107_8 | |
.LBB107_8: | |
mov rax, qword ptr [rsp + 16] | |
sub rax, 1 | |
je .LBB107_3 | |
jmp .LBB107_1 | |
.LBB107_1: | |
mov byte ptr [rsp + 87], 0 | |
jmp .LBB107_4 | |
.LBB107_2: | |
cmp qword ptr [rsp + 64], 0 | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 87], al | |
jmp .LBB107_4 | |
.LBB107_3: | |
cmp qword ptr [rsp + 64], 1 | |
je .LBB107_5 | |
jmp .LBB107_1 | |
.LBB107_4: | |
mov al, byte ptr [rsp + 87] | |
xor al, -1 | |
test al, 1 | |
jne .LBB107_7 | |
jmp .LBB107_6 | |
.LBB107_5: | |
mov rax, qword ptr [rsp + 32] | |
cmp rax, qword ptr [rsp + 72] | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 87], al | |
jmp .LBB107_4 | |
.LBB107_6: | |
mov rax, qword ptr [rsp + 8] | |
add rsp, 136 | |
ret | |
.LBB107_7: | |
mov qword ptr [rsp + 88], 0 | |
lea r8, [rip + .L__unnamed_28] | |
mov rax, qword ptr [rip + core::panicking::assert_failed@GOTPCREL] | |
xor edi, edi | |
lea rsi, [rsp + 24] | |
lea rdx, [rsp + 64] | |
lea rcx, [rsp + 88] | |
call rax | |
ud2 | |
core::iter::traits::iterator::Iterator::map: | |
mov rax, rdi | |
mov dword ptr [rdi + 8], esi | |
mov dword ptr [rdi + 12], edx | |
mov qword ptr [rdi], rcx | |
ret | |
core::iter::traits::iterator::Iterator::fold: | |
sub rsp, 56 | |
mov qword ptr [rsp + 8], rdx | |
mov dword ptr [rsp + 16], edi | |
mov dword ptr [rsp + 20], esi | |
mov byte ptr [rsp + 39], 1 | |
.LBB109_1: | |
mov rax, qword ptr [rip + core::iter::range::<impl core::iter::traits::iterator::Iterator for core::ops::range::Range<A>>::next@GOTPCREL] | |
lea rdi, [rsp + 16] | |
call rax | |
mov dword ptr [rsp], edx | |
mov dword ptr [rsp + 4], eax | |
jmp .LBB109_4 | |
.LBB109_2: | |
test byte ptr [rsp + 39], 1 | |
jne .LBB109_13 | |
jmp .LBB109_12 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB109_2 | |
.LBB109_4: | |
mov eax, dword ptr [rsp] | |
mov ecx, dword ptr [rsp + 4] | |
mov dword ptr [rsp + 24], ecx | |
mov dword ptr [rsp + 28], eax | |
mov eax, dword ptr [rsp + 24] | |
cmp rax, 1 | |
jne .LBB109_6 | |
mov rdi, qword ptr [rsp + 8] | |
mov eax, dword ptr [rsp + 28] | |
mov byte ptr [rsp + 39], 0 | |
mov dword ptr [rsp + 32], eax | |
mov esi, dword ptr [rsp + 32] | |
mov rax, qword ptr [rip + core::iter::adapters::map::map_fold::{{closure}}@GOTPCREL] | |
call rax | |
jmp .LBB109_7 | |
.LBB109_6: | |
jmp .LBB109_8 | |
.LBB109_7: | |
mov byte ptr [rsp + 39], 1 | |
jmp .LBB109_1 | |
.LBB109_8: | |
mov rdi, qword ptr [rsp + 8] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::iter::adapters::map::map_fold<i32,std::thread::JoinHandle<()>,(),example::main::{{closure}},core::iter::traits::iterator::Iterator::for_each::call<std::thread::JoinHandle<()>,alloc::vec::Vec<std::thread::JoinHandle<()>>::extend_trusted<core::iter::adapters::map::Map<core::ops::range::Range<i32>,example::main::{{closure}}>>::{{closure}}>::{{closure}}>::{{closure}}>@GOTPCREL] | |
call rax | |
jmp .LBB109_11 | |
.LBB109_9: | |
mov rdi, qword ptr [rsp + 40] | |
call _Unwind_Resume@PLT | |
ud2 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB109_9 | |
.LBB109_11: | |
add rsp, 56 | |
ret | |
.LBB109_12: | |
mov rdi, qword ptr [rsp + 8] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::iter::adapters::map::map_fold<i32,std::thread::JoinHandle<()>,(),example::main::{{closure}},core::iter::traits::iterator::Iterator::for_each::call<std::thread::JoinHandle<()>,alloc::vec::Vec<std::thread::JoinHandle<()>>::extend_trusted<core::iter::adapters::map::Map<core::ops::range::Range<i32>,example::main::{{closure}}>>::{{closure}}>::{{closure}}>::{{closure}}>@GOTPCREL] | |
call rax | |
jmp .LBB109_9 | |
.LBB109_13: | |
jmp .LBB109_12 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
core::iter::traits::iterator::Iterator::collect: | |
push rax | |
mov rax, rdi | |
mov qword ptr [rsp], rax | |
call qword ptr [rip + <alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter@GOTPCREL] | |
mov rax, qword ptr [rsp] | |
pop rcx | |
ret | |
core::iter::traits::iterator::Iterator::for_each: | |
sub rsp, 56 | |
movups xmm0, xmmword ptr [rdi] | |
movaps xmmword ptr [rsp], xmm0 | |
mov rax, qword ptr [rsi + 16] | |
mov qword ptr [rsp + 32], rax | |
movups xmm0, xmmword ptr [rsi] | |
movaps xmmword ptr [rsp + 16], xmm0 | |
mov rax, qword ptr [rip + <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::fold@GOTPCREL] | |
mov rdi, rsp | |
lea rsi, [rsp + 16] | |
call rax | |
jmp .LBB111_3 | |
.LBB111_1: | |
xor eax, eax | |
test al, 1 | |
jne .LBB111_5 | |
jmp .LBB111_4 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB111_1 | |
.LBB111_3: | |
add rsp, 56 | |
ret | |
.LBB111_4: | |
mov rdi, qword ptr [rsp + 40] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB111_5: | |
jmp .LBB111_4 | |
core::iter::traits::iterator::Iterator::for_each::call::{{closure}}: | |
sub rsp, 24 | |
mov rax, qword ptr [rsi] | |
mov qword ptr [rsp], rax | |
mov rax, qword ptr [rsi + 8] | |
mov qword ptr [rsp + 8], rax | |
mov rax, qword ptr [rsi + 16] | |
mov qword ptr [rsp + 16], rax | |
mov rsi, rsp | |
call qword ptr [rip + alloc::vec::Vec<T,A>::extend_trusted::{{closure}}@GOTPCREL] | |
add rsp, 24 | |
ret | |
core::iter::adapters::map::map_fold::{{closure}}: | |
sub rsp, 88 | |
mov eax, esi | |
mov rsi, rdi | |
mov qword ptr [rsp + 8], rsi | |
mov byte ptr [rsp + 71], 1 | |
add rsi, 24 | |
mov dword ptr [rsp + 64], eax | |
mov edx, dword ptr [rsp + 64] | |
lea rdi, [rsp + 40] | |
call example::main::{{closure}} | |
jmp .LBB113_3 | |
.LBB113_1: | |
test byte ptr [rsp + 71], 1 | |
jne .LBB113_6 | |
jmp .LBB113_5 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 72], rcx | |
mov dword ptr [rsp + 80], eax | |
jmp .LBB113_1 | |
.LBB113_3: | |
mov rdi, qword ptr [rsp + 8] | |
mov byte ptr [rsp + 71], 0 | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 32], rax | |
movups xmm0, xmmword ptr [rsp + 40] | |
movaps xmmword ptr [rsp + 16], xmm0 | |
mov rax, qword ptr [rip + core::iter::traits::iterator::Iterator::for_each::call::{{closure}}@GOTPCREL] | |
lea rsi, [rsp + 16] | |
call rax | |
jmp .LBB113_4 | |
.LBB113_4: | |
add rsp, 88 | |
ret | |
.LBB113_5: | |
mov rdi, qword ptr [rsp + 72] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB113_6: | |
jmp .LBB113_5 | |
core::sync::atomic::AtomicBool::compare_exchange_weak: | |
push rax | |
mov eax, edx | |
mov edx, esi | |
mov sil, r8b | |
movzx ecx, cl | |
movzx r8d, sil | |
movzx esi, dl | |
and esi, 1 | |
movzx edx, al | |
and edx, 1 | |
mov rax, qword ptr [rip + core::sync::atomic::atomic_compare_exchange_weak@GOTPCREL] | |
call rax | |
mov byte ptr [rsp + 7], dl | |
mov byte ptr [rsp + 6], al | |
mov al, byte ptr [rsp + 6] | |
and al, 1 | |
movzx eax, al | |
cmp rax, 0 | |
jne .LBB114_2 | |
cmp byte ptr [rsp + 7], 0 | |
setne al | |
and al, 1 | |
mov byte ptr [rsp + 5], al | |
mov byte ptr [rsp + 4], 0 | |
jmp .LBB114_3 | |
.LBB114_2: | |
cmp byte ptr [rsp + 7], 0 | |
setne al | |
and al, 1 | |
mov byte ptr [rsp + 5], al | |
mov byte ptr [rsp + 4], 1 | |
.LBB114_3: | |
mov al, byte ptr [rsp + 4] | |
mov dl, byte ptr [rsp + 5] | |
pop rcx | |
ret | |
core::sync::atomic::AtomicBool::new: | |
mov al, dil | |
and al, 1 | |
mov byte ptr [rsp - 1], al | |
mov al, byte ptr [rsp - 1] | |
mov byte ptr [rsp - 2], al | |
mov al, byte ptr [rsp - 2] | |
ret | |
core::sync::atomic::AtomicBool::store: | |
push rax | |
mov al, dl | |
mov cl, sil | |
and cl, 1 | |
movzx esi, cl | |
movzx edx, al | |
call qword ptr [rip + core::sync::atomic::atomic_store@GOTPCREL] | |
pop rax | |
ret | |
core::sync::atomic::atomic_load: | |
sub rsp, 280 | |
mov qword ptr [rsp + 24], rdi | |
mov al, sil | |
mov byte ptr [rsp + 47], al | |
movzx eax, byte ptr [rsp + 47] | |
mov qword ptr [rsp + 32], rax | |
mov rax, qword ptr [rsp + 32] | |
lea rcx, [rip + .LJTI117_0] | |
movsxd rax, dword ptr [rcx + 4*rax] | |
add rax, rcx | |
jmp rax | |
ud2 | |
.LBB117_2: | |
mov rax, qword ptr [rsp + 24] | |
mov rax, qword ptr [rax] | |
mov qword ptr [rsp + 48], rax | |
jmp .LBB117_7 | |
.LBB117_3: | |
xor eax, eax | |
test al, 1 | |
jne .LBB117_9 | |
jmp .LBB117_8 | |
.LBB117_4: | |
mov rax, qword ptr [rsp + 24] | |
mov rax, qword ptr [rax] | |
mov qword ptr [rsp + 48], rax | |
jmp .LBB117_7 | |
.LBB117_5: | |
xor eax, eax | |
test al, 1 | |
jne .LBB117_11 | |
jmp .LBB117_10 | |
.LBB117_6: | |
mov rax, qword ptr [rsp + 24] | |
mov rax, qword ptr [rax] | |
mov qword ptr [rsp + 48], rax | |
.LBB117_7: | |
mov rax, qword ptr [rsp + 48] | |
add rsp, 280 | |
ret | |
.LBB117_8: | |
mov qword ptr [rsp + 264], 0 | |
lea rax, [rip + .L__unnamed_29] | |
mov qword ptr [rsp + 56], rax | |
mov qword ptr [rsp + 64], 1 | |
mov rcx, qword ptr [rsp + 264] | |
mov rax, qword ptr [rsp + 272] | |
mov qword ptr [rsp + 88], rcx | |
mov qword ptr [rsp + 96], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 72], rax | |
mov qword ptr [rsp + 80], 0 | |
lea rsi, [rip + .L__unnamed_30] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 56] | |
call rax | |
ud2 | |
.LBB117_9: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 216] | |
mov qword ptr [rsp + 16], rdi | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
mov rdi, qword ptr [rsp + 16] | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
.LBB117_10: | |
mov qword ptr [rsp + 200], 0 | |
lea rax, [rip + .L__unnamed_31] | |
mov qword ptr [rsp + 104], rax | |
mov qword ptr [rsp + 112], 1 | |
mov rcx, qword ptr [rsp + 200] | |
mov rax, qword ptr [rsp + 208] | |
mov qword ptr [rsp + 136], rcx | |
mov qword ptr [rsp + 144], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 120], rax | |
mov qword ptr [rsp + 128], 0 | |
lea rsi, [rip + .L__unnamed_32] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 104] | |
call rax | |
ud2 | |
.LBB117_11: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 152] | |
mov qword ptr [rsp + 8], rdi | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
mov rdi, qword ptr [rsp + 8] | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
.LJTI117_0: | |
.long .LBB117_2-.LJTI117_0 | |
.long .LBB117_3-.LJTI117_0 | |
.long .LBB117_4-.LJTI117_0 | |
.long .LBB117_5-.LJTI117_0 | |
.long .LBB117_6-.LJTI117_0 | |
core::sync::atomic::atomic_store: | |
sub rsp, 280 | |
mov qword ptr [rsp + 24], rdi | |
mov al, dl | |
mov cl, sil | |
mov byte ptr [rsp + 39], cl | |
mov byte ptr [rsp + 55], al | |
movzx eax, byte ptr [rsp + 55] | |
mov qword ptr [rsp + 40], rax | |
mov rax, qword ptr [rsp + 40] | |
lea rcx, [rip + .LJTI118_0] | |
movsxd rax, dword ptr [rcx + 4*rax] | |
add rax, rcx | |
jmp rax | |
ud2 | |
.LBB118_2: | |
mov rax, qword ptr [rsp + 24] | |
mov cl, byte ptr [rsp + 39] | |
mov byte ptr [rax], cl | |
jmp .LBB118_7 | |
.LBB118_3: | |
mov rax, qword ptr [rsp + 24] | |
mov cl, byte ptr [rsp + 39] | |
mov byte ptr [rax], cl | |
jmp .LBB118_7 | |
.LBB118_4: | |
xor eax, eax | |
test al, 1 | |
jne .LBB118_9 | |
jmp .LBB118_8 | |
.LBB118_5: | |
xor eax, eax | |
test al, 1 | |
jne .LBB118_11 | |
jmp .LBB118_10 | |
.LBB118_6: | |
mov rcx, qword ptr [rsp + 24] | |
mov al, byte ptr [rsp + 39] | |
xchg byte ptr [rcx], al | |
.LBB118_7: | |
add rsp, 280 | |
ret | |
.LBB118_8: | |
mov qword ptr [rsp + 264], 0 | |
lea rax, [rip + .L__unnamed_33] | |
mov qword ptr [rsp + 56], rax | |
mov qword ptr [rsp + 64], 1 | |
mov rcx, qword ptr [rsp + 264] | |
mov rax, qword ptr [rsp + 272] | |
mov qword ptr [rsp + 88], rcx | |
mov qword ptr [rsp + 96], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 72], rax | |
mov qword ptr [rsp + 80], 0 | |
lea rsi, [rip + .L__unnamed_34] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 56] | |
call rax | |
ud2 | |
.LBB118_9: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 216] | |
mov qword ptr [rsp + 16], rdi | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
mov rdi, qword ptr [rsp + 16] | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
.LBB118_10: | |
mov qword ptr [rsp + 200], 0 | |
lea rax, [rip + .L__unnamed_35] | |
mov qword ptr [rsp + 104], rax | |
mov qword ptr [rsp + 112], 1 | |
mov rcx, qword ptr [rsp + 200] | |
mov rax, qword ptr [rsp + 208] | |
mov qword ptr [rsp + 136], rcx | |
mov qword ptr [rsp + 144], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 120], rax | |
mov qword ptr [rsp + 128], 0 | |
lea rsi, [rip + .L__unnamed_36] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 104] | |
call rax | |
ud2 | |
.LBB118_11: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 152] | |
mov qword ptr [rsp + 8], rdi | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
mov rdi, qword ptr [rsp + 8] | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
.LJTI118_0: | |
.long .LBB118_2-.LJTI118_0 | |
.long .LBB118_3-.LJTI118_0 | |
.long .LBB118_4-.LJTI118_0 | |
.long .LBB118_5-.LJTI118_0 | |
.long .LBB118_6-.LJTI118_0 | |
core::sync::atomic::atomic_store: | |
sub rsp, 280 | |
mov qword ptr [rsp + 24], rsi | |
mov qword ptr [rsp + 32], rdi | |
mov al, dl | |
mov byte ptr [rsp + 55], al | |
movzx eax, byte ptr [rsp + 55] | |
mov qword ptr [rsp + 40], rax | |
mov rax, qword ptr [rsp + 40] | |
lea rcx, [rip + .LJTI119_0] | |
movsxd rax, dword ptr [rcx + 4*rax] | |
add rax, rcx | |
jmp rax | |
ud2 | |
.LBB119_2: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 24] | |
mov qword ptr [rax], rcx | |
jmp .LBB119_7 | |
.LBB119_3: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 24] | |
mov qword ptr [rax], rcx | |
jmp .LBB119_7 | |
.LBB119_4: | |
xor eax, eax | |
test al, 1 | |
jne .LBB119_9 | |
jmp .LBB119_8 | |
.LBB119_5: | |
xor eax, eax | |
test al, 1 | |
jne .LBB119_11 | |
jmp .LBB119_10 | |
.LBB119_6: | |
mov rcx, qword ptr [rsp + 32] | |
mov rax, qword ptr [rsp + 24] | |
xchg qword ptr [rcx], rax | |
.LBB119_7: | |
add rsp, 280 | |
ret | |
.LBB119_8: | |
mov qword ptr [rsp + 264], 0 | |
lea rax, [rip + .L__unnamed_33] | |
mov qword ptr [rsp + 56], rax | |
mov qword ptr [rsp + 64], 1 | |
mov rcx, qword ptr [rsp + 264] | |
mov rax, qword ptr [rsp + 272] | |
mov qword ptr [rsp + 88], rcx | |
mov qword ptr [rsp + 96], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 72], rax | |
mov qword ptr [rsp + 80], 0 | |
lea rsi, [rip + .L__unnamed_34] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 56] | |
call rax | |
ud2 | |
.LBB119_9: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 216] | |
mov qword ptr [rsp + 16], rdi | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
mov rdi, qword ptr [rsp + 16] | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
.LBB119_10: | |
mov qword ptr [rsp + 200], 0 | |
lea rax, [rip + .L__unnamed_35] | |
mov qword ptr [rsp + 104], rax | |
mov qword ptr [rsp + 112], 1 | |
mov rcx, qword ptr [rsp + 200] | |
mov rax, qword ptr [rsp + 208] | |
mov qword ptr [rsp + 136], rcx | |
mov qword ptr [rsp + 144], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 120], rax | |
mov qword ptr [rsp + 128], 0 | |
lea rsi, [rip + .L__unnamed_36] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 104] | |
call rax | |
ud2 | |
.LBB119_11: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 152] | |
mov qword ptr [rsp + 8], rdi | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
mov rdi, qword ptr [rsp + 8] | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
.LJTI119_0: | |
.long .LBB119_2-.LJTI119_0 | |
.long .LBB119_3-.LJTI119_0 | |
.long .LBB119_4-.LJTI119_0 | |
.long .LBB119_5-.LJTI119_0 | |
.long .LBB119_6-.LJTI119_0 | |
core::sync::atomic::atomic_compare_exchange: | |
sub rsp, 360 | |
mov qword ptr [rsp + 64], rdx | |
mov qword ptr [rsp + 72], rsi | |
mov qword ptr [rsp + 80], rdi | |
mov al, r8b | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
movzx eax, byte ptr [rsp + 102] | |
mov qword ptr [rsp + 88], rax | |
mov rax, qword ptr [rsp + 88] | |
lea rcx, [rip + .LJTI120_0] | |
movsxd rax, dword ptr [rcx + 4*rax] | |
add rax, rcx | |
jmp rax | |
ud2 | |
.LBB120_2: | |
movzx eax, byte ptr [rsp + 103] | |
mov qword ptr [rsp + 56], rax | |
test rax, rax | |
je .LBB120_8 | |
jmp .LBB120_42 | |
.LBB120_42: | |
mov rax, qword ptr [rsp + 56] | |
sub rax, 2 | |
je .LBB120_9 | |
jmp .LBB120_43 | |
.LBB120_43: | |
mov rax, qword ptr [rsp + 56] | |
sub rax, 4 | |
je .LBB120_10 | |
jmp .LBB120_7 | |
.LBB120_3: | |
movzx eax, byte ptr [rsp + 103] | |
mov qword ptr [rsp + 48], rax | |
test rax, rax | |
je .LBB120_12 | |
jmp .LBB120_40 | |
.LBB120_40: | |
mov rax, qword ptr [rsp + 48] | |
sub rax, 2 | |
je .LBB120_13 | |
jmp .LBB120_41 | |
.LBB120_41: | |
mov rax, qword ptr [rsp + 48] | |
sub rax, 4 | |
je .LBB120_14 | |
jmp .LBB120_7 | |
.LBB120_4: | |
movzx eax, byte ptr [rsp + 103] | |
mov qword ptr [rsp + 40], rax | |
test rax, rax | |
je .LBB120_15 | |
jmp .LBB120_38 | |
.LBB120_38: | |
mov rax, qword ptr [rsp + 40] | |
sub rax, 2 | |
je .LBB120_16 | |
jmp .LBB120_39 | |
.LBB120_39: | |
mov rax, qword ptr [rsp + 40] | |
sub rax, 4 | |
je .LBB120_17 | |
jmp .LBB120_7 | |
.LBB120_5: | |
movzx eax, byte ptr [rsp + 103] | |
mov qword ptr [rsp + 32], rax | |
test rax, rax | |
je .LBB120_18 | |
jmp .LBB120_36 | |
.LBB120_36: | |
mov rax, qword ptr [rsp + 32] | |
sub rax, 2 | |
je .LBB120_19 | |
jmp .LBB120_37 | |
.LBB120_37: | |
mov rax, qword ptr [rsp + 32] | |
sub rax, 4 | |
je .LBB120_20 | |
jmp .LBB120_7 | |
.LBB120_6: | |
movzx eax, byte ptr [rsp + 103] | |
mov qword ptr [rsp + 24], rax | |
test rax, rax | |
je .LBB120_21 | |
jmp .LBB120_34 | |
.LBB120_34: | |
mov rax, qword ptr [rsp + 24] | |
sub rax, 2 | |
je .LBB120_22 | |
jmp .LBB120_35 | |
.LBB120_35: | |
mov rax, qword ptr [rsp + 24] | |
sub rax, 4 | |
je .LBB120_23 | |
jmp .LBB120_7 | |
.LBB120_7: | |
movzx eax, byte ptr [rsp + 103] | |
cmp rax, 1 | |
je .LBB120_27 | |
jmp .LBB120_28 | |
.LBB120_8: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_9: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_10: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
.LBB120_11: | |
mov rax, qword ptr [rsp + 120] | |
mov qword ptr [rsp + 16], rax | |
test byte ptr [rsp + 128], 1 | |
jne .LBB120_25 | |
jmp .LBB120_24 | |
.LBB120_12: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_13: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_14: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_15: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_16: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_17: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_18: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_19: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_20: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_21: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_22: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_23: | |
mov rcx, qword ptr [rsp + 80] | |
mov rdx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
lock cmpxchg qword ptr [rcx], rdx | |
mov rcx, rax | |
sete al | |
and al, 1 | |
mov qword ptr [rsp + 120], rcx | |
mov byte ptr [rsp + 128], al | |
jmp .LBB120_11 | |
.LBB120_24: | |
mov rax, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 112], rax | |
mov qword ptr [rsp + 104], 1 | |
jmp .LBB120_26 | |
.LBB120_25: | |
mov rax, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 112], rax | |
mov qword ptr [rsp + 104], 0 | |
.LBB120_26: | |
mov rax, qword ptr [rsp + 104] | |
mov rdx, qword ptr [rsp + 112] | |
add rsp, 360 | |
ret | |
.LBB120_27: | |
xor eax, eax | |
test al, 1 | |
jne .LBB120_30 | |
jmp .LBB120_29 | |
.LBB120_28: | |
xor eax, eax | |
test al, 1 | |
jne .LBB120_32 | |
jmp .LBB120_31 | |
.LBB120_29: | |
mov qword ptr [rsp + 280], 0 | |
lea rax, [rip + .L__unnamed_37] | |
mov qword ptr [rsp + 184], rax | |
mov qword ptr [rsp + 192], 1 | |
mov rcx, qword ptr [rsp + 280] | |
mov rax, qword ptr [rsp + 288] | |
mov qword ptr [rsp + 216], rcx | |
mov qword ptr [rsp + 224], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 200], rax | |
mov qword ptr [rsp + 208], 0 | |
lea rsi, [rip + .L__unnamed_38] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 184] | |
call rax | |
ud2 | |
.LBB120_30: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 232] | |
mov qword ptr [rsp + 8], rdi | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
mov rdi, qword ptr [rsp + 8] | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
.LBB120_31: | |
mov qword ptr [rsp + 344], 0 | |
lea rax, [rip + .L__unnamed_39] | |
mov qword ptr [rsp + 136], rax | |
mov qword ptr [rsp + 144], 1 | |
mov rcx, qword ptr [rsp + 344] | |
mov rax, qword ptr [rsp + 352] | |
mov qword ptr [rsp + 168], rcx | |
mov qword ptr [rsp + 176], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 152], rax | |
mov qword ptr [rsp + 160], 0 | |
lea rsi, [rip + .L__unnamed_40] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 136] | |
call rax | |
ud2 | |
.LBB120_32: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 296] | |
mov qword ptr [rsp], rdi | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
mov rdi, qword ptr [rsp] | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
.LJTI120_0: | |
.long .LBB120_2-.LJTI120_0 | |
.long .LBB120_3-.LJTI120_0 | |
.long .LBB120_4-.LJTI120_0 | |
.long .LBB120_5-.LJTI120_0 | |
.long .LBB120_6-.LJTI120_0 | |
core::sync::atomic::atomic_compare_exchange_weak: | |
sub rsp, 328 | |
mov qword ptr [rsp + 72], rdi | |
mov al, r8b | |
mov byte ptr [rsp + 86], dl | |
mov dl, sil | |
mov byte ptr [rsp + 87], dl | |
mov byte ptr [rsp + 98], cl | |
mov byte ptr [rsp + 99], al | |
movzx eax, byte ptr [rsp + 98] | |
mov qword ptr [rsp + 88], rax | |
mov rax, qword ptr [rsp + 88] | |
lea rcx, [rip + .LJTI121_0] | |
movsxd rax, dword ptr [rcx + 4*rax] | |
add rax, rcx | |
jmp rax | |
ud2 | |
.LBB121_2: | |
movzx eax, byte ptr [rsp + 99] | |
mov qword ptr [rsp + 64], rax | |
test rax, rax | |
je .LBB121_8 | |
jmp .LBB121_42 | |
.LBB121_42: | |
mov rax, qword ptr [rsp + 64] | |
sub rax, 2 | |
je .LBB121_9 | |
jmp .LBB121_43 | |
.LBB121_43: | |
mov rax, qword ptr [rsp + 64] | |
sub rax, 4 | |
je .LBB121_10 | |
jmp .LBB121_7 | |
.LBB121_3: | |
movzx eax, byte ptr [rsp + 99] | |
mov qword ptr [rsp + 56], rax | |
test rax, rax | |
je .LBB121_12 | |
jmp .LBB121_40 | |
.LBB121_40: | |
mov rax, qword ptr [rsp + 56] | |
sub rax, 2 | |
je .LBB121_13 | |
jmp .LBB121_41 | |
.LBB121_41: | |
mov rax, qword ptr [rsp + 56] | |
sub rax, 4 | |
je .LBB121_14 | |
jmp .LBB121_7 | |
.LBB121_4: | |
movzx eax, byte ptr [rsp + 99] | |
mov qword ptr [rsp + 48], rax | |
test rax, rax | |
je .LBB121_15 | |
jmp .LBB121_38 | |
.LBB121_38: | |
mov rax, qword ptr [rsp + 48] | |
sub rax, 2 | |
je .LBB121_16 | |
jmp .LBB121_39 | |
.LBB121_39: | |
mov rax, qword ptr [rsp + 48] | |
sub rax, 4 | |
je .LBB121_17 | |
jmp .LBB121_7 | |
.LBB121_5: | |
movzx eax, byte ptr [rsp + 99] | |
mov qword ptr [rsp + 40], rax | |
test rax, rax | |
je .LBB121_18 | |
jmp .LBB121_36 | |
.LBB121_36: | |
mov rax, qword ptr [rsp + 40] | |
sub rax, 2 | |
je .LBB121_19 | |
jmp .LBB121_37 | |
.LBB121_37: | |
mov rax, qword ptr [rsp + 40] | |
sub rax, 4 | |
je .LBB121_20 | |
jmp .LBB121_7 | |
.LBB121_6: | |
movzx eax, byte ptr [rsp + 99] | |
mov qword ptr [rsp + 32], rax | |
test rax, rax | |
je .LBB121_21 | |
jmp .LBB121_34 | |
.LBB121_34: | |
mov rax, qword ptr [rsp + 32] | |
sub rax, 2 | |
je .LBB121_22 | |
jmp .LBB121_35 | |
.LBB121_35: | |
mov rax, qword ptr [rsp + 32] | |
sub rax, 4 | |
je .LBB121_23 | |
jmp .LBB121_7 | |
.LBB121_7: | |
movzx eax, byte ptr [rsp + 99] | |
cmp rax, 1 | |
je .LBB121_27 | |
jmp .LBB121_28 | |
.LBB121_8: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_9: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_10: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
.LBB121_11: | |
mov al, byte ptr [rsp + 102] | |
mov byte ptr [rsp + 31], al | |
test byte ptr [rsp + 103], 1 | |
jne .LBB121_25 | |
jmp .LBB121_24 | |
.LBB121_12: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_13: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_14: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_15: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_16: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_17: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_18: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_19: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_20: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_21: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_22: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_23: | |
mov rcx, qword ptr [rsp + 72] | |
mov dl, byte ptr [rsp + 86] | |
mov al, byte ptr [rsp + 87] | |
lock cmpxchg byte ptr [rcx], dl | |
mov cl, al | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 102], cl | |
mov byte ptr [rsp + 103], al | |
jmp .LBB121_11 | |
.LBB121_24: | |
mov al, byte ptr [rsp + 31] | |
mov byte ptr [rsp + 101], al | |
mov byte ptr [rsp + 100], 1 | |
jmp .LBB121_26 | |
.LBB121_25: | |
mov al, byte ptr [rsp + 31] | |
mov byte ptr [rsp + 101], al | |
mov byte ptr [rsp + 100], 0 | |
.LBB121_26: | |
mov al, byte ptr [rsp + 100] | |
mov dl, byte ptr [rsp + 101] | |
add rsp, 328 | |
ret | |
.LBB121_27: | |
xor eax, eax | |
test al, 1 | |
jne .LBB121_30 | |
jmp .LBB121_29 | |
.LBB121_28: | |
xor eax, eax | |
test al, 1 | |
jne .LBB121_32 | |
jmp .LBB121_31 | |
.LBB121_29: | |
mov qword ptr [rsp + 248], 0 | |
lea rax, [rip + .L__unnamed_37] | |
mov qword ptr [rsp + 152], rax | |
mov qword ptr [rsp + 160], 1 | |
mov rcx, qword ptr [rsp + 248] | |
mov rax, qword ptr [rsp + 256] | |
mov qword ptr [rsp + 184], rcx | |
mov qword ptr [rsp + 192], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 168], rax | |
mov qword ptr [rsp + 176], 0 | |
lea rsi, [rip + .L__unnamed_41] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 152] | |
call rax | |
ud2 | |
.LBB121_30: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 200] | |
mov qword ptr [rsp + 16], rdi | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
mov rdi, qword ptr [rsp + 16] | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
.LBB121_31: | |
mov qword ptr [rsp + 312], 0 | |
lea rax, [rip + .L__unnamed_39] | |
mov qword ptr [rsp + 104], rax | |
mov qword ptr [rsp + 112], 1 | |
mov rcx, qword ptr [rsp + 312] | |
mov rax, qword ptr [rsp + 320] | |
mov qword ptr [rsp + 136], rcx | |
mov qword ptr [rsp + 144], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 120], rax | |
mov qword ptr [rsp + 128], 0 | |
lea rsi, [rip + .L__unnamed_42] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 104] | |
call rax | |
ud2 | |
.LBB121_32: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 264] | |
mov qword ptr [rsp + 8], rdi | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
mov rdi, qword ptr [rsp + 8] | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
call rax | |
ud2 | |
.LJTI121_0: | |
.long .LBB121_2-.LJTI121_0 | |
.long .LBB121_3-.LJTI121_0 | |
.long .LBB121_4-.LJTI121_0 | |
.long .LBB121_5-.LJTI121_0 | |
.long .LBB121_6-.LJTI121_0 | |
core::alloc::layout::Layout::array::inner: | |
sub rsp, 88 | |
mov qword ptr [rsp + 8], rdi | |
mov qword ptr [rsp + 16], rsi | |
mov qword ptr [rsp + 24], rdx | |
cmp rdi, 0 | |
jne .LBB122_2 | |
mov byte ptr [rsp + 55], 0 | |
jmp .LBB122_3 | |
.LBB122_2: | |
mov rax, qword ptr [rsp + 8] | |
mov rcx, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 72], rcx | |
mov rdx, qword ptr [rsp + 72] | |
sub rdx, 1 | |
movabs rcx, 9223372036854775807 | |
sub rcx, rdx | |
mov qword ptr [rsp], rcx | |
cmp rax, 0 | |
sete al | |
test al, 1 | |
jne .LBB122_5 | |
jmp .LBB122_4 | |
.LBB122_3: | |
test byte ptr [rsp + 55], 1 | |
jne .LBB122_7 | |
jmp .LBB122_6 | |
.LBB122_4: | |
mov rcx, qword ptr [rsp + 8] | |
mov rax, qword ptr [rsp] | |
xor edx, edx | |
div rcx | |
mov rcx, rax | |
mov rax, qword ptr [rsp + 24] | |
cmp rax, rcx | |
seta al | |
and al, 1 | |
mov byte ptr [rsp + 55], al | |
jmp .LBB122_3 | |
.LBB122_5: | |
lea rdi, [rip + str.1] | |
lea rdx, [rip + .L__unnamed_43] | |
mov rax, qword ptr [rip + core::panicking::panic@GOTPCREL] | |
mov esi, 25 | |
call rax | |
ud2 | |
.LBB122_6: | |
mov rax, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp + 24] | |
mov rcx, qword ptr [rsp + 8] | |
imul rcx, rdx | |
mov qword ptr [rsp + 80], rax | |
mov rax, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 64], rcx | |
mov qword ptr [rsp + 56], rax | |
mov rcx, qword ptr [rsp + 56] | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 32], rcx | |
mov qword ptr [rsp + 40], rax | |
jmp .LBB122_8 | |
.LBB122_7: | |
mov qword ptr [rsp + 32], 0 | |
.LBB122_8: | |
mov rax, qword ptr [rsp + 32] | |
mov rdx, qword ptr [rsp + 40] | |
add rsp, 88 | |
ret | |
core::slice::memchr::memchr_naive: | |
sub rsp, 56 | |
mov qword ptr [rsp + 8], rdx | |
mov qword ptr [rsp + 16], rsi | |
mov al, dil | |
mov byte ptr [rsp + 31], al | |
mov qword ptr [rsp + 48], 0 | |
.LBB123_1: | |
mov rax, qword ptr [rsp + 8] | |
cmp qword ptr [rsp + 48], rax | |
jb .LBB123_3 | |
mov qword ptr [rsp + 32], 0 | |
jmp .LBB123_4 | |
.LBB123_3: | |
mov rcx, qword ptr [rsp + 8] | |
mov rax, qword ptr [rsp + 48] | |
mov qword ptr [rsp], rax | |
cmp rax, rcx | |
setb al | |
test al, 1 | |
jne .LBB123_5 | |
jmp .LBB123_6 | |
.LBB123_4: | |
mov rax, qword ptr [rsp + 32] | |
mov rdx, qword ptr [rsp + 40] | |
add rsp, 56 | |
ret | |
.LBB123_5: | |
mov rax, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rsp] | |
mov dl, byte ptr [rsp + 31] | |
cmp byte ptr [rax + rcx], dl | |
je .LBB123_8 | |
jmp .LBB123_7 | |
.LBB123_6: | |
mov rsi, qword ptr [rsp + 8] | |
mov rdi, qword ptr [rsp] | |
lea rdx, [rip + .L__unnamed_44] | |
mov rax, qword ptr [rip + core::panicking::panic_bounds_check@GOTPCREL] | |
call rax | |
ud2 | |
.LBB123_7: | |
mov rax, qword ptr [rsp + 48] | |
add rax, 1 | |
mov qword ptr [rsp + 48], rax | |
jmp .LBB123_1 | |
.LBB123_8: | |
mov rax, qword ptr [rsp + 48] | |
mov qword ptr [rsp + 40], rax | |
mov qword ptr [rsp + 32], 1 | |
jmp .LBB123_4 | |
core::result::Result<T,E>::expect: | |
sub rsp, 88 | |
mov qword ptr [rsp], rdi | |
mov qword ptr [rsp + 8], rsi | |
mov qword ptr [rsp + 16], rdx | |
mov qword ptr [rsp + 24], rcx | |
mov rdx, qword ptr [rdi] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB124_2 | |
mov rcx, qword ptr [rsp] | |
mov rax, qword ptr [rcx + 8] | |
mov rdx, qword ptr [rcx + 16] | |
add rsp, 88 | |
ret | |
.LBB124_2: | |
mov r8, qword ptr [rsp + 24] | |
mov rsi, qword ptr [rsp + 16] | |
mov rdi, qword ptr [rsp + 8] | |
mov rax, qword ptr [rsp] | |
movups xmm0, xmmword ptr [rax] | |
movups xmm1, xmmword ptr [rax + 16] | |
movaps xmmword ptr [rsp + 48], xmm1 | |
movaps xmmword ptr [rsp + 32], xmm0 | |
lea rcx, [rip + .L__unnamed_45] | |
mov rax, qword ptr [rip + core::result::unwrap_failed@GOTPCREL] | |
lea rdx, [rsp + 32] | |
call rax | |
jmp .LBB124_5 | |
.LBB124_3: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::ffi::c_str::NulError>@GOTPCREL] | |
lea rdi, [rsp + 32] | |
call rax | |
jmp .LBB124_7 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 72], rcx | |
mov dword ptr [rsp + 80], eax | |
jmp .LBB124_3 | |
.LBB124_5: | |
ud2 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB124_7: | |
mov rdi, qword ptr [rsp + 72] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::result::Result<T,E>::expect: | |
sub rsp, 72 | |
mov qword ptr [rsp], r8 | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rdx | |
mov qword ptr [rsp + 24], rsi | |
mov qword ptr [rsp + 32], rdi | |
mov qword ptr [rsp + 40], rdi | |
mov rdx, qword ptr [rsi] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB125_2 | |
mov rax, qword ptr [rsp + 40] | |
mov rcx, qword ptr [rsp + 32] | |
mov rdx, qword ptr [rsp + 24] | |
mov rsi, qword ptr [rdx] | |
mov qword ptr [rcx], rsi | |
mov rsi, qword ptr [rdx + 8] | |
mov qword ptr [rcx + 8], rsi | |
mov rdx, qword ptr [rdx + 16] | |
mov qword ptr [rcx + 16], rdx | |
add rsp, 72 | |
ret | |
.LBB125_2: | |
mov r8, qword ptr [rsp] | |
mov rsi, qword ptr [rsp + 8] | |
mov rdi, qword ptr [rsp + 16] | |
mov rax, qword ptr [rsp + 24] | |
mov rax, qword ptr [rax + 8] | |
mov qword ptr [rsp + 48], rax | |
lea rcx, [rip + .L__unnamed_46] | |
mov rax, qword ptr [rip + core::result::unwrap_failed@GOTPCREL] | |
lea rdx, [rsp + 48] | |
call rax | |
jmp .LBB125_5 | |
.LBB125_3: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::io::error::Error>@GOTPCREL] | |
lea rdi, [rsp + 48] | |
call rax | |
jmp .LBB125_7 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 56], rcx | |
mov dword ptr [rsp + 64], eax | |
jmp .LBB125_3 | |
.LBB125_5: | |
ud2 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB125_7: | |
mov rdi, qword ptr [rsp + 56] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::result::Result<T,E>::is_err: | |
mov al, byte ptr [rdi] | |
and al, 1 | |
movzx eax, al | |
cmp rax, 0 | |
sete al | |
xor al, -1 | |
and al, 1 | |
movzx eax, al | |
ret | |
core::result::Result<T,E>::unwrap: | |
sub rsp, 56 | |
mov qword ptr [rsp], rdx | |
mov qword ptr [rsp + 8], rdi | |
mov qword ptr [rsp + 16], rsi | |
mov rdx, qword ptr [rsp + 8] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB127_2 | |
add rsp, 56 | |
ret | |
.LBB127_2: | |
mov r8, qword ptr [rsp] | |
mov rcx, qword ptr [rsp + 8] | |
mov rax, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 24], rcx | |
mov qword ptr [rsp + 32], rax | |
lea rdi, [rip + .L__unnamed_47] | |
lea rcx, [rip + .L__unnamed_48] | |
mov rax, qword ptr [rip + core::result::unwrap_failed@GOTPCREL] | |
mov esi, 43 | |
lea rdx, [rsp + 24] | |
call rax | |
jmp .LBB127_5 | |
.LBB127_3: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>@GOTPCREL] | |
lea rdi, [rsp + 24] | |
call rax | |
jmp .LBB127_7 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB127_3 | |
.LBB127_5: | |
ud2 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB127_7: | |
mov rdi, qword ptr [rsp + 40] | |
call _Unwind_Resume@PLT | |
ud2 | |
core::result::Result<T,E>::map_err: | |
sub rsp, 56 | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rdi | |
mov qword ptr [rsp + 24], rdi | |
mov qword ptr [rsp + 32], rsi | |
mov qword ptr [rsp + 40], rdx | |
mov byte ptr [rsp + 55], 1 | |
mov rdx, qword ptr [rsp + 32] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB128_2 | |
mov rax, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 40] | |
mov qword ptr [rax + 8], rdx | |
mov qword ptr [rax + 16], rcx | |
mov qword ptr [rax], 0 | |
jmp .LBB128_3 | |
.LBB128_2: | |
mov rdi, qword ptr [rsp + 8] | |
mov byte ptr [rsp + 55], 0 | |
call qword ptr [rip + alloc::raw_vec::finish_grow::{{closure}}@GOTPCREL] | |
mov rcx, rax | |
mov rax, qword ptr [rsp + 16] | |
mov qword ptr [rax + 8], rcx | |
mov qword ptr [rax + 16], rdx | |
mov qword ptr [rax], 1 | |
.LBB128_3: | |
test byte ptr [rsp + 55], 1 | |
jne .LBB128_5 | |
.LBB128_4: | |
mov rax, qword ptr [rsp + 24] | |
add rsp, 56 | |
ret | |
.LBB128_5: | |
jmp .LBB128_4 | |
core::result::Result<T,E>::map_err: | |
sub rsp, 40 | |
mov qword ptr [rsp], rdi | |
mov qword ptr [rsp + 8], rdi | |
mov qword ptr [rsp + 16], rsi | |
mov qword ptr [rsp + 24], rdx | |
mov byte ptr [rsp + 39], 1 | |
xor eax, eax | |
mov ecx, 1 | |
cmp qword ptr [rsp + 16], 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB129_2 | |
mov rax, qword ptr [rsp] | |
mov rdx, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rsp + 24] | |
mov qword ptr [rax + 8], rdx | |
mov qword ptr [rax + 16], rcx | |
mov qword ptr [rax], 0 | |
jmp .LBB129_3 | |
.LBB129_2: | |
mov byte ptr [rsp + 39], 0 | |
call qword ptr [rip + alloc::raw_vec::finish_grow::{{closure}}@GOTPCREL] | |
mov rcx, rax | |
mov rax, qword ptr [rsp] | |
mov qword ptr [rax + 8], rcx | |
mov qword ptr [rax + 16], rdx | |
mov qword ptr [rax], 1 | |
.LBB129_3: | |
test byte ptr [rsp + 39], 1 | |
jne .LBB129_5 | |
.LBB129_4: | |
mov rax, qword ptr [rsp + 8] | |
add rsp, 40 | |
ret | |
.LBB129_5: | |
jmp .LBB129_4 | |
core::result::Result<T,E>::map_err: | |
sub rsp, 56 | |
mov qword ptr [rsp], rdi | |
mov qword ptr [rsp + 8], rsi | |
mov byte ptr [rsp + 55], 1 | |
movabs rdx, -9223372036854775807 | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rsp], rdx | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB130_2 | |
movabs rax, -9223372036854775807 | |
mov qword ptr [rsp + 16], rax | |
jmp .LBB130_3 | |
.LBB130_2: | |
mov rcx, qword ptr [rsp] | |
mov rax, qword ptr [rsp + 8] | |
mov byte ptr [rsp + 55], 0 | |
mov qword ptr [rsp + 32], rcx | |
mov qword ptr [rsp + 40], rax | |
mov rdi, qword ptr [rsp + 32] | |
mov rsi, qword ptr [rsp + 40] | |
call qword ptr [rip + alloc::raw_vec::handle_reserve::{{closure}}@GOTPCREL] | |
mov qword ptr [rsp + 16], rax | |
mov qword ptr [rsp + 24], rdx | |
.LBB130_3: | |
test byte ptr [rsp + 55], 1 | |
jne .LBB130_5 | |
.LBB130_4: | |
mov rax, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp + 24] | |
add rsp, 56 | |
ret | |
.LBB130_5: | |
jmp .LBB130_4 | |
core::panicking::assert_failed: | |
sub rsp, 24 | |
mov r9, rcx | |
mov al, dil | |
mov qword ptr [rsp + 8], rsi | |
mov qword ptr [rsp + 16], rdx | |
mov rcx, rsp | |
mov qword ptr [rcx], r8 | |
movzx edi, al | |
lea r8, [rip + .L__unnamed_49] | |
mov rax, qword ptr [rip + core::panicking::assert_failed_inner@GOTPCREL] | |
lea rsi, [rsp + 8] | |
lea rcx, [rsp + 16] | |
mov rdx, r8 | |
call rax | |
ud2 | |
core::panicking::assert_failed: | |
sub rsp, 24 | |
mov r9, rcx | |
mov al, dil | |
mov qword ptr [rsp + 8], rsi | |
mov qword ptr [rsp + 16], rdx | |
mov rcx, rsp | |
mov qword ptr [rcx], r8 | |
movzx edi, al | |
lea r8, [rip + .L__unnamed_50] | |
mov rax, qword ptr [rip + core::panicking::assert_failed_inner@GOTPCREL] | |
lea rsi, [rsp + 8] | |
lea rcx, [rsp + 16] | |
mov rdx, r8 | |
call rax | |
ud2 | |
<&mut W as core::fmt::Write>::write_char: | |
push rax | |
mov rdi, qword ptr [rdi] | |
call qword ptr [rip + core::fmt::Write::write_char@GOTPCREL] | |
and al, 1 | |
movzx eax, al | |
pop rcx | |
ret | |
<&mut W as core::fmt::Write>::write_fmt: | |
push rax | |
mov rdi, qword ptr [rdi] | |
call qword ptr [rip + core::fmt::Write::write_fmt@GOTPCREL] | |
and al, 1 | |
movzx eax, al | |
pop rcx | |
ret | |
<&mut W as core::fmt::Write>::write_str: | |
push rax | |
mov rdi, qword ptr [rdi] | |
call qword ptr [rip + <std::io::Write::write_fmt::Adapter<T> as core::fmt::Write>::write_str@GOTPCREL] | |
and al, 1 | |
movzx eax, al | |
pop rcx | |
ret | |
<T as core::convert::Into<U>>::into: | |
push rax | |
mov rax, rdi | |
mov qword ptr [rsp], rax | |
call qword ptr [rip + alloc::string::<impl core::convert::From<alloc::string::String> for alloc::vec::Vec<u8>>::from@GOTPCREL] | |
mov rax, qword ptr [rsp] | |
pop rcx | |
ret | |
<alloc::alloc::Global as core::clone::Clone>::clone: | |
ret | |
alloc::vec::Vec<T,A>::extend_trusted: | |
sub rsp, 264 | |
mov qword ptr [rsp + 8], rdi | |
mov qword ptr [rsp + 16], rsi | |
mov byte ptr [rsp + 183], 1 | |
mov rax, qword ptr [rip + <core::iter::adapters::map::Map<I,F> as core::iter::traits::iterator::Iterator>::size_hint@GOTPCREL] | |
lea rdi, [rsp + 40] | |
call rax | |
jmp .LBB138_3 | |
.LBB138_1: | |
test byte ptr [rsp + 183], 1 | |
jne .LBB138_13 | |
jmp .LBB138_12 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 248], rcx | |
mov dword ptr [rsp + 256], eax | |
jmp .LBB138_1 | |
.LBB138_3: | |
mov rcx, qword ptr [rsp + 48] | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 24], rcx | |
mov qword ptr [rsp + 32], rax | |
cmp qword ptr [rsp + 24], 1 | |
jne .LBB138_5 | |
mov rdi, qword ptr [rsp + 8] | |
mov rsi, qword ptr [rsp + 32] | |
mov rax, qword ptr [rip + alloc::vec::Vec<T,A>::reserve@GOTPCREL] | |
call rax | |
jmp .LBB138_6 | |
.LBB138_5: | |
xor eax, eax | |
test al, 1 | |
jne .LBB138_9 | |
jmp .LBB138_8 | |
.LBB138_6: | |
mov rcx, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp + 8] | |
mov rsi, rdx | |
add rsi, 16 | |
mov rax, qword ptr [rdx] | |
mov rdx, qword ptr [rdx + 16] | |
mov qword ptr [rsp + 64], rsi | |
mov qword ptr [rsp + 72], rdx | |
mov byte ptr [rsp + 183], 0 | |
movups xmm0, xmmword ptr [rcx] | |
movaps xmmword ptr [rsp + 80], xmm0 | |
mov qword ptr [rsp + 120], rax | |
mov rcx, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 104], rcx | |
mov qword ptr [rsp + 112], rax | |
mov rax, qword ptr [rip + core::iter::traits::iterator::Iterator::for_each@GOTPCREL] | |
lea rdi, [rsp + 80] | |
lea rsi, [rsp + 104] | |
call rax | |
jmp .LBB138_7 | |
.LBB138_7: | |
add rsp, 264 | |
ret | |
.LBB138_8: | |
mov qword ptr [rsp + 232], 0 | |
lea rax, [rip + .L__unnamed_3] | |
mov qword ptr [rsp + 128], rax | |
mov qword ptr [rsp + 136], 1 | |
mov rcx, qword ptr [rsp + 232] | |
mov rax, qword ptr [rsp + 240] | |
mov qword ptr [rsp + 160], rcx | |
mov qword ptr [rsp + 168], rax | |
lea rax, [rip + .L__unnamed_4] | |
mov qword ptr [rsp + 144], rax | |
mov qword ptr [rsp + 152], 0 | |
lea rsi, [rip + .L__unnamed_51] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 128] | |
call rax | |
jmp .LBB138_10 | |
.LBB138_9: | |
lea rsi, [rip + .L__unnamed_6] | |
lea rdi, [rsp + 184] | |
mov edx, 1 | |
call core::fmt::Arguments::new_const | |
jmp .LBB138_11 | |
.LBB138_10: | |
ud2 | |
.LBB138_11: | |
lea rsi, [rip + .L__unnamed_7] | |
mov rax, qword ptr [rip + core::panicking::panic_fmt@GOTPCREL] | |
lea rdi, [rsp + 184] | |
call rax | |
jmp .LBB138_10 | |
.LBB138_12: | |
mov rdi, qword ptr [rsp + 248] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB138_13: | |
jmp .LBB138_12 | |
alloc::vec::Vec<T,A>::extend_trusted::{{closure}}: | |
mov rax, qword ptr [rdi + 16] | |
imul rcx, qword ptr [rdi + 8], 24 | |
add rax, rcx | |
mov rcx, qword ptr [rsi] | |
mov qword ptr [rax], rcx | |
mov rcx, qword ptr [rsi + 8] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsi + 16] | |
mov qword ptr [rax + 16], rcx | |
mov rax, qword ptr [rdi + 8] | |
add rax, 1 | |
mov qword ptr [rdi + 8], rax | |
ret | |
alloc::vec::Vec<T,A>::reserve: | |
sub rsp, 40 | |
mov qword ptr [rsp + 8], rdi | |
mov qword ptr [rsp + 16], rsi | |
mov rax, qword ptr [rdi + 16] | |
mov qword ptr [rsp + 24], rax | |
xor eax, eax | |
test al, 1 | |
jne .LBB140_2 | |
mov rax, qword ptr [rsp + 8] | |
mov rax, qword ptr [rax + 8] | |
mov qword ptr [rsp + 32], rax | |
jmp .LBB140_3 | |
.LBB140_2: | |
mov qword ptr [rsp + 32], -1 | |
.LBB140_3: | |
mov rax, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp + 24] | |
mov rcx, qword ptr [rsp + 32] | |
sub rcx, rdx | |
cmp rax, rcx | |
ja .LBB140_5 | |
.LBB140_4: | |
add rsp, 40 | |
ret | |
.LBB140_5: | |
mov rdx, qword ptr [rsp + 16] | |
mov rsi, qword ptr [rsp + 24] | |
mov rdi, qword ptr [rsp + 8] | |
call qword ptr [rip + alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle@GOTPCREL] | |
jmp .LBB140_4 | |
alloc::vec::into_iter::IntoIter<T,A>::as_raw_mut_slice: | |
sub rsp, 56 | |
mov qword ptr [rsp + 16], rdi | |
mov rdi, qword ptr [rsp + 16] | |
mov rax, qword ptr [rdi + 16] | |
mov qword ptr [rsp + 8], rax | |
mov rax, qword ptr [rip + core::iter::traits::exact_size::ExactSizeIterator::len@GOTPCREL] | |
call rax | |
mov rcx, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 40], rcx | |
mov qword ptr [rsp + 48], rax | |
mov rcx, qword ptr [rsp + 40] | |
mov rax, qword ptr [rsp + 48] | |
mov qword ptr [rsp + 24], rcx | |
mov qword ptr [rsp + 32], rax | |
mov rax, qword ptr [rsp + 24] | |
mov rdx, qword ptr [rsp + 32] | |
add rsp, 56 | |
ret | |
alloc::sync::Arc<T>::new: | |
sub rsp, 200 | |
mov qword ptr [rsp + 24], rdi | |
mov qword ptr [rsp + 96], 1 | |
mov qword ptr [rsp + 104], 1 | |
movups xmm0, xmmword ptr [rdi] | |
movups xmm1, xmmword ptr [rdi + 16] | |
movaps xmmword ptr [rsp + 128], xmm1 | |
movaps xmmword ptr [rsp + 112], xmm0 | |
mov rax, qword ptr [rsp + 96] | |
mov qword ptr [rsp + 48], rax | |
mov rax, qword ptr [rsp + 104] | |
mov qword ptr [rsp + 56], rax | |
movaps xmm0, xmmword ptr [rsp + 112] | |
movaps xmm1, xmmword ptr [rsp + 128] | |
movups xmmword ptr [rsp + 80], xmm1 | |
movups xmmword ptr [rsp + 64], xmm0 | |
mov edi, 48 | |
mov esi, 8 | |
call alloc::alloc::exchange_malloc | |
mov qword ptr [rsp + 32], rax | |
jmp .LBB142_4 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 184], rcx | |
mov dword ptr [rsp + 192], eax | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::sync::ArcInner<std::thread::Packet<()>>>@GOTPCREL] | |
lea rdi, [rsp + 48] | |
call rax | |
jmp .LBB142_3 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB142_3: | |
mov rax, qword ptr [rsp + 184] | |
mov qword ptr [rsp + 8], rax | |
mov eax, dword ptr [rsp + 192] | |
mov dword ptr [rsp + 20], eax | |
jmp .LBB142_6 | |
.LBB142_4: | |
mov rdi, qword ptr [rsp + 32] | |
lea rsi, [rsp + 48] | |
mov edx, 48 | |
call memcpy@PLT | |
jmp .LBB142_7 | |
.LBB142_5: | |
xor eax, eax | |
test al, 1 | |
jne .LBB142_9 | |
jmp .LBB142_8 | |
.LBB142_6: | |
mov eax, dword ptr [rsp + 20] | |
mov rcx, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 168], rcx | |
mov dword ptr [rsp + 176], eax | |
jmp .LBB142_5 | |
.LBB142_7: | |
mov rax, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 160], rax | |
mov rax, qword ptr [rsp + 160] | |
mov qword ptr [rsp + 152], rax | |
mov rax, qword ptr [rsp + 152] | |
mov qword ptr [rsp + 40], rax | |
mov rax, qword ptr [rsp + 40] | |
add rsp, 200 | |
ret | |
.LBB142_8: | |
mov rdi, qword ptr [rsp + 168] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB142_9: | |
mov rdi, qword ptr [rsp + 24] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<std::thread::Packet<()>>@GOTPCREL] | |
call rax | |
jmp .LBB142_8 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
alloc::sync::Arc<T,A>::drop_slow: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
mov rdi, qword ptr [rdi] | |
add rdi, 16 | |
call qword ptr [rip + core::ptr::drop_in_place<std::thread::Inner>@GOTPCREL] | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rax | |
mov qword ptr [rsp + 16], rdi | |
lea rdi, [rsp + 8] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Weak<std::thread::Inner,&alloc::alloc::Global>>@GOTPCREL] | |
add rsp, 24 | |
ret | |
alloc::sync::Arc<T,A>::drop_slow: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
mov rdi, qword ptr [rdi] | |
add rdi, 16 | |
call qword ptr [rip + core::ptr::drop_in_place<std::thread::scoped::ScopeData>@GOTPCREL] | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rax | |
mov qword ptr [rsp + 16], rdi | |
lea rdi, [rsp + 8] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Weak<std::thread::scoped::ScopeData,&alloc::alloc::Global>>@GOTPCREL] | |
add rsp, 24 | |
ret | |
alloc::sync::Arc<T,A>::drop_slow: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
mov rdi, qword ptr [rdi] | |
add rdi, 16 | |
call qword ptr [rip + core::ptr::drop_in_place<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>>@GOTPCREL] | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rax | |
mov qword ptr [rsp + 16], rdi | |
lea rdi, [rsp + 8] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Weak<std::sync::mutex::Mutex<alloc::vec::Vec<u8>>,&alloc::alloc::Global>>@GOTPCREL] | |
add rsp, 24 | |
ret | |
alloc::sync::Arc<T,A>::drop_slow: | |
sub rsp, 24 | |
mov qword ptr [rsp], rdi | |
mov rdi, qword ptr [rdi] | |
add rdi, 16 | |
call qword ptr [rip + core::ptr::drop_in_place<std::thread::Packet<()>>@GOTPCREL] | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rax | |
mov qword ptr [rsp + 16], rdi | |
lea rdi, [rsp + 8] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::sync::Weak<std::thread::Packet<()>,&alloc::alloc::Global>>@GOTPCREL] | |
add rsp, 24 | |
ret | |
alloc::sync::Arc<T,A>::is_unique: | |
sub rsp, 40 | |
mov qword ptr [rsp + 8], rdi | |
mov rdi, qword ptr [rdi] | |
add rdi, 8 | |
mov rax, qword ptr [rip + core::sync::atomic::atomic_compare_exchange@GOTPCREL] | |
mov esi, 1 | |
mov rdx, -1 | |
mov ecx, 2 | |
xor r8d, r8d | |
call rax | |
mov qword ptr [rsp + 32], rdx | |
mov qword ptr [rsp + 24], rax | |
cmp qword ptr [rsp + 24], 0 | |
jne .LBB147_2 | |
mov rax, qword ptr [rsp + 8] | |
mov rdi, qword ptr [rax] | |
mov esi, 2 | |
call qword ptr [rip + core::sync::atomic::atomic_load@GOTPCREL] | |
mov rcx, rax | |
mov rax, qword ptr [rsp + 8] | |
cmp rcx, 1 | |
sete cl | |
mov byte ptr [rsp + 7], cl | |
mov rdi, qword ptr [rax] | |
add rdi, 8 | |
mov esi, 1 | |
mov edx, 1 | |
call qword ptr [rip + core::sync::atomic::atomic_store@GOTPCREL] | |
mov al, byte ptr [rsp + 7] | |
and al, 1 | |
mov byte ptr [rsp + 23], al | |
jmp .LBB147_3 | |
.LBB147_2: | |
mov byte ptr [rsp + 23], 0 | |
.LBB147_3: | |
mov al, byte ptr [rsp + 23] | |
and al, 1 | |
movzx eax, al | |
add rsp, 40 | |
ret | |
alloc::alloc::exchange_malloc: | |
sub rsp, 40 | |
mov qword ptr [rsp + 8], rdi | |
mov qword ptr [rsp], rsi | |
mov rsi, qword ptr [rsp] | |
mov rdx, qword ptr [rsp + 8] | |
lea rdi, [rip + .L__unnamed_4] | |
xor ecx, ecx | |
call alloc::alloc::Global::alloc_impl | |
mov qword ptr [rsp + 24], rdx | |
mov qword ptr [rsp + 16], rax | |
mov rdx, qword ptr [rsp + 16] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB148_2 | |
mov rax, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 32], rax | |
mov rax, qword ptr [rsp + 32] | |
add rsp, 40 | |
ret | |
.LBB148_2: | |
mov rdi, qword ptr [rsp] | |
mov rsi, qword ptr [rsp + 8] | |
mov rax, qword ptr [rip + alloc::alloc::handle_alloc_error@GOTPCREL] | |
call rax | |
ud2 | |
alloc::alloc::Global::alloc_impl: | |
sub rsp, 232 | |
mov qword ptr [rsp + 16], rdx | |
mov qword ptr [rsp + 24], rsi | |
mov al, cl | |
mov byte ptr [rsp + 39], al | |
cmp rdx, 0 | |
jne .LBB149_2 | |
mov rax, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 128], rax | |
mov rax, qword ptr [rsp + 128] | |
mov qword ptr [rsp + 72], rax | |
mov rax, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 152], rax | |
mov qword ptr [rsp + 160], 0 | |
mov rcx, qword ptr [rsp + 152] | |
mov rax, qword ptr [rsp + 160] | |
mov qword ptr [rsp + 136], rcx | |
mov qword ptr [rsp + 144], rax | |
mov rcx, qword ptr [rsp + 136] | |
mov rax, qword ptr [rsp + 144] | |
mov qword ptr [rsp + 56], rcx | |
mov qword ptr [rsp + 64], rax | |
mov rcx, qword ptr [rsp + 56] | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 40], rcx | |
mov qword ptr [rsp + 48], rax | |
jmp .LBB149_3 | |
.LBB149_2: | |
mov al, byte ptr [rsp + 39] | |
test al, 1 | |
jne .LBB149_5 | |
jmp .LBB149_4 | |
.LBB149_3: | |
mov rax, qword ptr [rsp + 40] | |
mov rdx, qword ptr [rsp + 48] | |
add rsp, 232 | |
ret | |
.LBB149_4: | |
mov rdi, qword ptr [rsp + 16] | |
mov rax, qword ptr [rsp + 24] | |
mov rcx, qword ptr [rip + __rust_no_alloc_shim_is_unstable@GOTPCREL] | |
mov cl, byte ptr [rcx] | |
mov byte ptr [rsp + 231], cl | |
mov qword ptr [rsp + 176], rax | |
mov rsi, qword ptr [rsp + 176] | |
call qword ptr [rip + __rust_alloc@GOTPCREL] | |
mov qword ptr [rsp + 80], rax | |
jmp .LBB149_6 | |
.LBB149_5: | |
mov rdi, qword ptr [rsp + 16] | |
mov rax, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 168], rax | |
mov rsi, qword ptr [rsp + 168] | |
call qword ptr [rip + __rust_alloc_zeroed@GOTPCREL] | |
mov qword ptr [rsp + 80], rax | |
.LBB149_6: | |
mov rax, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 8], rax | |
cmp rax, 0 | |
sete al | |
xor al, -1 | |
test al, 1 | |
jne .LBB149_8 | |
mov qword ptr [rsp + 104], 0 | |
jmp .LBB149_9 | |
.LBB149_8: | |
mov rax, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 184], rax | |
mov rax, qword ptr [rsp + 184] | |
mov qword ptr [rsp + 104], rax | |
.LBB149_9: | |
mov rdx, qword ptr [rsp + 104] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB149_11 | |
mov qword ptr [rsp + 96], 0 | |
jmp .LBB149_12 | |
.LBB149_11: | |
mov rax, qword ptr [rsp + 104] | |
mov qword ptr [rsp + 96], rax | |
.LBB149_12: | |
mov rdx, qword ptr [rsp + 96] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB149_14 | |
mov rax, qword ptr [rsp + 96] | |
mov qword ptr [rsp + 88], rax | |
jmp .LBB149_15 | |
.LBB149_14: | |
mov qword ptr [rsp + 88], 0 | |
.LBB149_15: | |
mov rdx, qword ptr [rsp + 88] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB149_17 | |
mov rax, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rsp + 88] | |
mov qword ptr [rsp + 208], rcx | |
mov qword ptr [rsp + 216], rax | |
mov rcx, qword ptr [rsp + 208] | |
mov rax, qword ptr [rsp + 216] | |
mov qword ptr [rsp + 192], rcx | |
mov qword ptr [rsp + 200], rax | |
mov rcx, qword ptr [rsp + 192] | |
mov rax, qword ptr [rsp + 200] | |
mov qword ptr [rsp + 112], rcx | |
mov qword ptr [rsp + 120], rax | |
mov rcx, qword ptr [rsp + 112] | |
mov rax, qword ptr [rsp + 120] | |
mov qword ptr [rsp + 40], rcx | |
mov qword ptr [rsp + 48], rax | |
jmp .LBB149_3 | |
.LBB149_17: | |
mov qword ptr [rsp + 40], 0 | |
jmp .LBB149_3 | |
alloc::alloc::Global::grow_impl: | |
sub rsp, 248 | |
mov qword ptr [rsp + 32], r9 | |
mov qword ptr [rsp + 40], r8 | |
mov qword ptr [rsp + 48], rcx | |
mov qword ptr [rsp + 56], rdx | |
mov qword ptr [rsp + 64], rsi | |
mov qword ptr [rsp + 72], rdi | |
mov al, byte ptr [rsp + 256] | |
mov byte ptr [rsp + 87], al | |
cmp rcx, 0 | |
jne .LBB150_2 | |
mov rdx, qword ptr [rsp + 32] | |
mov rsi, qword ptr [rsp + 40] | |
mov rdi, qword ptr [rsp + 72] | |
mov al, byte ptr [rsp + 87] | |
movzx ecx, al | |
and ecx, 1 | |
call alloc::alloc::Global::alloc_impl | |
mov qword ptr [rsp + 96], rdx | |
mov qword ptr [rsp + 88], rax | |
jmp .LBB150_3 | |
.LBB150_2: | |
mov rcx, qword ptr [rsp + 40] | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 176], rax | |
mov rax, qword ptr [rsp + 176] | |
mov qword ptr [rsp + 184], rcx | |
mov rcx, qword ptr [rsp + 184] | |
cmp rax, rcx | |
je .LBB150_5 | |
jmp .LBB150_4 | |
.LBB150_3: | |
jmp .LBB150_25 | |
.LBB150_4: | |
mov rdx, qword ptr [rsp + 32] | |
mov rsi, qword ptr [rsp + 40] | |
mov rdi, qword ptr [rsp + 72] | |
mov al, byte ptr [rsp + 87] | |
movzx ecx, al | |
and ecx, 1 | |
call alloc::alloc::Global::alloc_impl | |
mov qword ptr [rsp + 168], rdx | |
mov qword ptr [rsp + 160], rax | |
mov rdx, qword ptr [rsp + 160] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
je .LBB150_6 | |
jmp .LBB150_7 | |
.LBB150_5: | |
mov rcx, qword ptr [rsp + 32] | |
mov rsi, qword ptr [rsp + 48] | |
mov rdi, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 192], rax | |
mov rdx, qword ptr [rsp + 192] | |
call qword ptr [rip + __rust_realloc@GOTPCREL] | |
mov qword ptr [rsp + 24], rax | |
cmp rax, 0 | |
sete al | |
xor al, -1 | |
test al, 1 | |
jne .LBB150_13 | |
jmp .LBB150_12 | |
.LBB150_6: | |
mov rcx, qword ptr [rsp + 160] | |
mov rax, qword ptr [rsp + 168] | |
mov qword ptr [rsp + 144], rcx | |
mov qword ptr [rsp + 152], rax | |
jmp .LBB150_8 | |
.LBB150_7: | |
mov qword ptr [rsp + 144], 0 | |
.LBB150_8: | |
mov rdx, qword ptr [rsp + 144] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB150_10 | |
mov rdx, qword ptr [rsp + 48] | |
mov rsi, qword ptr [rsp + 64] | |
mov rax, qword ptr [rsp + 144] | |
mov qword ptr [rsp + 8], rax | |
mov rcx, qword ptr [rsp + 152] | |
mov qword ptr [rsp + 16], rcx | |
mov qword ptr [rsp + 240], rax | |
mov rdi, qword ptr [rsp + 240] | |
shl rdx, 0 | |
call memcpy@PLT | |
mov rdi, qword ptr [rsp + 72] | |
mov rsi, qword ptr [rsp + 64] | |
mov rdx, qword ptr [rsp + 56] | |
mov rcx, qword ptr [rsp + 48] | |
call <alloc::alloc::Global as core::alloc::Allocator>::deallocate | |
mov rcx, qword ptr [rsp + 8] | |
mov rax, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 88], rcx | |
mov qword ptr [rsp + 96], rax | |
jmp .LBB150_3 | |
.LBB150_10: | |
mov qword ptr [rsp + 88], 0 | |
.LBB150_11: | |
jmp .LBB150_25 | |
.LBB150_12: | |
mov qword ptr [rsp + 120], 0 | |
jmp .LBB150_14 | |
.LBB150_13: | |
mov rax, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 200], rax | |
mov rax, qword ptr [rsp + 200] | |
mov qword ptr [rsp + 120], rax | |
.LBB150_14: | |
mov rdx, qword ptr [rsp + 120] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB150_16 | |
mov qword ptr [rsp + 112], 0 | |
jmp .LBB150_17 | |
.LBB150_16: | |
mov rax, qword ptr [rsp + 120] | |
mov qword ptr [rsp + 112], rax | |
.LBB150_17: | |
mov rdx, qword ptr [rsp + 112] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB150_19 | |
mov rax, qword ptr [rsp + 112] | |
mov qword ptr [rsp + 104], rax | |
jmp .LBB150_20 | |
.LBB150_19: | |
mov qword ptr [rsp + 104], 0 | |
.LBB150_20: | |
mov rdx, qword ptr [rsp + 104] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB150_22 | |
mov al, byte ptr [rsp + 87] | |
mov rcx, qword ptr [rsp + 104] | |
mov qword ptr [rsp], rcx | |
test al, 1 | |
jne .LBB150_24 | |
jmp .LBB150_23 | |
.LBB150_22: | |
mov qword ptr [rsp + 88], 0 | |
jmp .LBB150_11 | |
.LBB150_23: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp] | |
mov qword ptr [rsp + 224], rcx | |
mov qword ptr [rsp + 232], rax | |
mov rcx, qword ptr [rsp + 224] | |
mov rax, qword ptr [rsp + 232] | |
mov qword ptr [rsp + 208], rcx | |
mov qword ptr [rsp + 216], rax | |
mov rcx, qword ptr [rsp + 208] | |
mov rax, qword ptr [rsp + 216] | |
mov qword ptr [rsp + 128], rcx | |
mov qword ptr [rsp + 136], rax | |
mov rcx, qword ptr [rsp + 128] | |
mov rax, qword ptr [rsp + 136] | |
mov qword ptr [rsp + 88], rcx | |
mov qword ptr [rsp + 96], rax | |
jmp .LBB150_3 | |
.LBB150_24: | |
mov rax, qword ptr [rsp + 48] | |
mov rdx, qword ptr [rsp + 32] | |
mov rdi, qword ptr [rsp + 24] | |
add rdi, rax | |
sub rdx, rax | |
shl rdx, 0 | |
xor esi, esi | |
call memset@PLT | |
jmp .LBB150_23 | |
.LBB150_25: | |
mov rax, qword ptr [rsp + 88] | |
mov rdx, qword ptr [rsp + 96] | |
add rsp, 248 | |
ret | |
alloc::boxed::Box<T,A>::leak: | |
mov qword ptr [rsp - 8], rdi | |
mov rax, qword ptr [rsp - 8] | |
ret | |
alloc::raw_vec::finish_grow: | |
sub rsp, 248 | |
mov qword ptr [rsp], r8 | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rdi | |
mov qword ptr [rsp + 24], rdi | |
lea rdi, [rsp + 72] | |
call qword ptr [rip + core::result::Result<T,E>::map_err@GOTPCREL] | |
cmp qword ptr [rsp + 72], 0 | |
jne .LBB152_2 | |
mov rcx, qword ptr [rsp + 80] | |
mov rax, qword ptr [rsp + 88] | |
mov qword ptr [rsp + 56], rcx | |
mov qword ptr [rsp + 64], rax | |
mov qword ptr [rsp + 48], 0 | |
jmp .LBB152_3 | |
.LBB152_2: | |
mov rcx, qword ptr [rsp + 80] | |
mov rax, qword ptr [rsp + 88] | |
mov qword ptr [rsp + 184], rcx | |
mov qword ptr [rsp + 192], rax | |
mov rcx, qword ptr [rsp + 184] | |
mov rax, qword ptr [rsp + 192] | |
mov qword ptr [rsp + 56], rcx | |
mov qword ptr [rsp + 64], rax | |
mov qword ptr [rsp + 48], 1 | |
.LBB152_3: | |
cmp qword ptr [rsp + 48], 0 | |
jne .LBB152_5 | |
mov rcx, qword ptr [rsp + 56] | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 32], rcx | |
mov qword ptr [rsp + 40], rax | |
movabs rax, -9223372036854775807 | |
mov qword ptr [rsp + 128], rax | |
movabs rdx, -9223372036854775807 | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rsp + 128], rdx | |
cmove rax, rcx | |
cmp rax, 0 | |
je .LBB152_6 | |
jmp .LBB152_7 | |
.LBB152_5: | |
mov rax, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp + 56] | |
mov rcx, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 96], rdx | |
mov qword ptr [rsp + 104], rcx | |
mov rdx, qword ptr [rsp + 96] | |
mov rcx, qword ptr [rsp + 104] | |
mov qword ptr [rsp + 200], rdx | |
mov qword ptr [rsp + 208], rcx | |
mov rdx, qword ptr [rsp + 200] | |
mov rcx, qword ptr [rsp + 208] | |
mov qword ptr [rax + 8], rdx | |
mov qword ptr [rax + 16], rcx | |
mov qword ptr [rax], 1 | |
jmp .LBB152_15 | |
.LBB152_6: | |
movabs rax, -9223372036854775807 | |
mov qword ptr [rsp + 112], rax | |
jmp .LBB152_8 | |
.LBB152_7: | |
mov rcx, qword ptr [rsp + 128] | |
mov rax, qword ptr [rsp + 136] | |
mov qword ptr [rsp + 216], rcx | |
mov qword ptr [rsp + 224], rax | |
mov rcx, qword ptr [rsp + 216] | |
mov rax, qword ptr [rsp + 224] | |
mov qword ptr [rsp + 112], rcx | |
mov qword ptr [rsp + 120], rax | |
.LBB152_8: | |
movabs rdx, -9223372036854775807 | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rsp + 112], rdx | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB152_10 | |
mov rdx, qword ptr [rsp + 8] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rdx + 8], 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
je .LBB152_11 | |
jmp .LBB152_12 | |
.LBB152_10: | |
mov rax, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp + 112] | |
mov rcx, qword ptr [rsp + 120] | |
mov qword ptr [rsp + 144], rdx | |
mov qword ptr [rsp + 152], rcx | |
mov rdx, qword ptr [rsp + 144] | |
mov rcx, qword ptr [rsp + 152] | |
mov qword ptr [rax + 8], rdx | |
mov qword ptr [rax + 16], rcx | |
mov qword ptr [rax], 1 | |
jmp .LBB152_15 | |
.LBB152_11: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rsp + 8] | |
mov rsi, qword ptr [rax] | |
mov rdx, qword ptr [rax + 8] | |
mov rcx, qword ptr [rax + 16] | |
mov qword ptr [rsp + 232], rdx | |
mov rax, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 240], rax | |
mov r8, qword ptr [rsp + 32] | |
mov r9, qword ptr [rsp + 40] | |
call <alloc::alloc::Global as core::alloc::Allocator>::grow | |
mov qword ptr [rsp + 168], rdx | |
mov qword ptr [rsp + 160], rax | |
jmp .LBB152_13 | |
.LBB152_12: | |
mov rdi, qword ptr [rsp] | |
mov rsi, qword ptr [rsp + 32] | |
mov rdx, qword ptr [rsp + 40] | |
call <alloc::alloc::Global as core::alloc::Allocator>::allocate | |
mov qword ptr [rsp + 168], rdx | |
mov qword ptr [rsp + 160], rax | |
.LBB152_13: | |
mov rdi, qword ptr [rsp + 16] | |
mov rsi, qword ptr [rsp + 160] | |
mov rdx, qword ptr [rsp + 168] | |
lea rax, [rsp + 32] | |
mov qword ptr [rsp + 176], rax | |
mov rcx, qword ptr [rsp + 176] | |
call qword ptr [rip + core::result::Result<T,E>::map_err@GOTPCREL] | |
.LBB152_14: | |
mov rax, qword ptr [rsp + 24] | |
add rsp, 248 | |
ret | |
.LBB152_15: | |
jmp .LBB152_14 | |
alloc::raw_vec::finish_grow::{{closure}}: | |
mov qword ptr [rsp - 16], 0 | |
mov rax, qword ptr [rsp - 16] | |
mov rdx, qword ptr [rsp - 8] | |
ret | |
alloc::raw_vec::finish_grow::{{closure}}: | |
mov qword ptr [rsp - 40], rdi | |
mov rax, qword ptr [rsp - 40] | |
mov rcx, qword ptr [rax] | |
mov rax, qword ptr [rax + 8] | |
mov qword ptr [rsp - 16], rcx | |
mov qword ptr [rsp - 8], rax | |
mov rcx, qword ptr [rsp - 16] | |
mov rax, qword ptr [rsp - 8] | |
mov qword ptr [rsp - 32], rcx | |
mov qword ptr [rsp - 24], rax | |
mov rax, qword ptr [rsp - 32] | |
mov rdx, qword ptr [rsp - 24] | |
ret | |
alloc::raw_vec::handle_reserve: | |
sub rsp, 24 | |
mov rax, qword ptr [rip + core::result::Result<T,E>::map_err@GOTPCREL] | |
call rax | |
mov qword ptr [rsp + 16], rdx | |
mov qword ptr [rsp + 8], rax | |
movabs rdx, -9223372036854775807 | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rsp + 8], rdx | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB155_2 | |
add rsp, 24 | |
ret | |
.LBB155_2: | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rsp + 8], 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB155_4 | |
mov rax, qword ptr [rip + alloc::raw_vec::capacity_overflow@GOTPCREL] | |
call rax | |
ud2 | |
.LBB155_4: | |
mov rdi, qword ptr [rsp + 8] | |
mov rsi, qword ptr [rsp + 16] | |
mov rax, qword ptr [rip + alloc::alloc::handle_alloc_error@GOTPCREL] | |
call rax | |
ud2 | |
alloc::raw_vec::handle_reserve::{{closure}}: | |
mov qword ptr [rsp - 32], rdi | |
mov qword ptr [rsp - 24], rsi | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rsp - 32], 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB156_2 | |
mov qword ptr [rsp - 16], 0 | |
jmp .LBB156_3 | |
.LBB156_2: | |
mov rcx, qword ptr [rsp - 32] | |
mov rax, qword ptr [rsp - 24] | |
mov qword ptr [rsp - 16], rcx | |
mov qword ptr [rsp - 8], rax | |
.LBB156_3: | |
mov rax, qword ptr [rsp - 16] | |
mov rdx, qword ptr [rsp - 8] | |
ret | |
alloc::raw_vec::RawVec<T,A>::allocate_in: | |
sub rsp, 216 | |
mov qword ptr [rsp + 72], rdi | |
mov al, sil | |
and al, 1 | |
mov byte ptr [rsp + 86], al | |
xor eax, eax | |
test al, 1 | |
jne .LBB157_2 | |
mov rax, qword ptr [rsp + 72] | |
cmp rax, 0 | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 111], al | |
jmp .LBB157_3 | |
.LBB157_2: | |
mov byte ptr [rsp + 111], 1 | |
.LBB157_3: | |
test byte ptr [rsp + 111], 1 | |
jne .LBB157_5 | |
mov rdx, qword ptr [rsp + 72] | |
mov edi, 24 | |
mov esi, 8 | |
call core::alloc::layout::Layout::array::inner | |
mov qword ptr [rsp + 56], rdx | |
mov qword ptr [rsp + 64], rax | |
jmp .LBB157_8 | |
.LBB157_5: | |
mov eax, 8 | |
mov qword ptr [rsp + 184], rax | |
mov rax, qword ptr [rsp + 184] | |
mov qword ptr [rsp + 176], rax | |
mov rax, qword ptr [rsp + 176] | |
mov qword ptr [rsp + 88], rax | |
mov qword ptr [rsp + 96], 0 | |
jmp .LBB157_20 | |
.LBB157_6: | |
mov al, 1 | |
test al, 1 | |
jne .LBB157_23 | |
jmp .LBB157_22 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 200], rcx | |
mov dword ptr [rsp + 208], eax | |
jmp .LBB157_6 | |
.LBB157_8: | |
mov rax, qword ptr [rsp + 56] | |
mov rcx, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 112], rcx | |
mov qword ptr [rsp + 120], rax | |
xor eax, eax | |
mov ecx, 1 | |
cmp qword ptr [rsp + 112], 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB157_10 | |
mov rax, qword ptr [rsp + 112] | |
mov qword ptr [rsp + 40], rax | |
mov rax, qword ptr [rsp + 120] | |
mov qword ptr [rsp + 48], rax | |
movabs rax, -9223372036854775807 | |
mov qword ptr [rsp + 128], rax | |
movabs rdx, -9223372036854775807 | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rsp + 128], rdx | |
cmove rax, rcx | |
cmp rax, 0 | |
je .LBB157_11 | |
jmp .LBB157_12 | |
.LBB157_10: | |
mov rax, qword ptr [rip + alloc::raw_vec::capacity_overflow@GOTPCREL] | |
call rax | |
jmp .LBB157_21 | |
.LBB157_11: | |
mov al, byte ptr [rsp + 86] | |
and al, 1 | |
movzx eax, al | |
cmp rax, 0 | |
je .LBB157_13 | |
jmp .LBB157_14 | |
.LBB157_12: | |
mov rax, qword ptr [rip + alloc::raw_vec::capacity_overflow@GOTPCREL] | |
call rax | |
jmp .LBB157_21 | |
.LBB157_13: | |
mov rdx, qword ptr [rsp + 48] | |
mov rsi, qword ptr [rsp + 40] | |
lea rdi, [rsp + 87] | |
call <alloc::alloc::Global as core::alloc::Allocator>::allocate | |
mov qword ptr [rsp + 24], rdx | |
mov qword ptr [rsp + 32], rax | |
jmp .LBB157_15 | |
.LBB157_14: | |
mov rdx, qword ptr [rsp + 48] | |
mov rsi, qword ptr [rsp + 40] | |
lea rdi, [rsp + 87] | |
call <alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed | |
mov qword ptr [rsp + 8], rdx | |
mov qword ptr [rsp + 16], rax | |
jmp .LBB157_17 | |
.LBB157_15: | |
mov rax, qword ptr [rsp + 24] | |
mov rcx, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 144], rcx | |
mov qword ptr [rsp + 152], rax | |
.LBB157_16: | |
mov rdx, qword ptr [rsp + 144] | |
xor eax, eax | |
mov ecx, 1 | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
je .LBB157_18 | |
jmp .LBB157_19 | |
.LBB157_17: | |
mov rax, qword ptr [rsp + 8] | |
mov rcx, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 144], rcx | |
mov qword ptr [rsp + 152], rax | |
jmp .LBB157_16 | |
.LBB157_18: | |
mov rax, qword ptr [rsp + 72] | |
mov rcx, qword ptr [rsp + 144] | |
mov qword ptr [rsp + 168], rcx | |
mov rcx, qword ptr [rsp + 168] | |
mov qword ptr [rsp + 192], rcx | |
mov rcx, qword ptr [rsp + 192] | |
mov qword ptr [rsp + 160], rcx | |
mov rcx, qword ptr [rsp + 160] | |
mov qword ptr [rsp + 88], rcx | |
mov qword ptr [rsp + 96], rax | |
jmp .LBB157_20 | |
.LBB157_19: | |
mov rsi, qword ptr [rsp + 48] | |
mov rdi, qword ptr [rsp + 40] | |
mov rax, qword ptr [rip + alloc::alloc::handle_alloc_error@GOTPCREL] | |
call rax | |
jmp .LBB157_21 | |
.LBB157_20: | |
mov rax, qword ptr [rsp + 88] | |
mov rdx, qword ptr [rsp + 96] | |
add rsp, 216 | |
ret | |
.LBB157_21: | |
ud2 | |
.LBB157_22: | |
mov rdi, qword ptr [rsp + 200] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB157_23: | |
jmp .LBB157_22 | |
alloc::raw_vec::RawVec<T,A>::current_memory: | |
mov qword ptr [rsp - 96], rsi | |
mov qword ptr [rsp - 88], rdi | |
mov qword ptr [rsp - 80], rdi | |
xor eax, eax | |
test al, 1 | |
jne .LBB158_2 | |
mov rax, qword ptr [rsp - 96] | |
cmp qword ptr [rax + 8], 0 | |
sete al | |
and al, 1 | |
mov byte ptr [rsp - 65], al | |
jmp .LBB158_3 | |
.LBB158_2: | |
mov byte ptr [rsp - 65], 1 | |
.LBB158_3: | |
test byte ptr [rsp - 65], 1 | |
jne .LBB158_5 | |
mov rax, qword ptr [rsp - 88] | |
mov rcx, qword ptr [rsp - 96] | |
imul rdx, qword ptr [rcx + 8], 24 | |
mov qword ptr [rsp - 56], rdx | |
mov qword ptr [rsp - 64], 8 | |
mov rcx, qword ptr [rcx] | |
mov qword ptr [rsp - 16], rcx | |
mov rcx, qword ptr [rsp - 16] | |
mov qword ptr [rsp - 8], rcx | |
mov rcx, qword ptr [rsp - 8] | |
mov qword ptr [rsp - 24], rcx | |
mov rcx, qword ptr [rsp - 24] | |
mov qword ptr [rsp - 48], rcx | |
mov rdx, qword ptr [rsp - 64] | |
mov rcx, qword ptr [rsp - 56] | |
mov qword ptr [rsp - 40], rdx | |
mov qword ptr [rsp - 32], rcx | |
mov rcx, qword ptr [rsp - 48] | |
mov qword ptr [rax], rcx | |
mov rcx, qword ptr [rsp - 40] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsp - 32] | |
mov qword ptr [rax + 16], rcx | |
jmp .LBB158_6 | |
.LBB158_5: | |
mov rax, qword ptr [rsp - 88] | |
mov qword ptr [rax + 8], 0 | |
.LBB158_6: | |
mov rax, qword ptr [rsp - 80] | |
ret | |
alloc::raw_vec::RawVec<T,A>::current_memory: | |
mov qword ptr [rsp - 96], rsi | |
mov qword ptr [rsp - 88], rdi | |
mov qword ptr [rsp - 80], rdi | |
xor eax, eax | |
test al, 1 | |
jne .LBB159_2 | |
mov rax, qword ptr [rsp - 96] | |
cmp qword ptr [rax + 8], 0 | |
sete al | |
and al, 1 | |
mov byte ptr [rsp - 65], al | |
jmp .LBB159_3 | |
.LBB159_2: | |
mov byte ptr [rsp - 65], 1 | |
.LBB159_3: | |
test byte ptr [rsp - 65], 1 | |
jne .LBB159_5 | |
mov rax, qword ptr [rsp - 88] | |
mov rcx, qword ptr [rsp - 96] | |
mov rdx, qword ptr [rcx + 8] | |
shl rdx, 0 | |
mov qword ptr [rsp - 56], rdx | |
mov qword ptr [rsp - 64], 1 | |
mov rcx, qword ptr [rcx] | |
mov qword ptr [rsp - 16], rcx | |
mov rcx, qword ptr [rsp - 16] | |
mov qword ptr [rsp - 8], rcx | |
mov rcx, qword ptr [rsp - 8] | |
mov qword ptr [rsp - 24], rcx | |
mov rcx, qword ptr [rsp - 24] | |
mov qword ptr [rsp - 48], rcx | |
mov rdx, qword ptr [rsp - 64] | |
mov rcx, qword ptr [rsp - 56] | |
mov qword ptr [rsp - 40], rdx | |
mov qword ptr [rsp - 32], rcx | |
mov rcx, qword ptr [rsp - 48] | |
mov qword ptr [rax], rcx | |
mov rcx, qword ptr [rsp - 40] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsp - 32] | |
mov qword ptr [rax + 16], rcx | |
jmp .LBB159_6 | |
.LBB159_5: | |
mov rax, qword ptr [rsp - 88] | |
mov qword ptr [rax + 8], 0 | |
.LBB159_6: | |
mov rax, qword ptr [rsp - 80] | |
ret | |
alloc::raw_vec::RawVec<T,A>::grow_amortized: | |
sub rsp, 328 | |
mov qword ptr [rsp + 32], rdi | |
mov qword ptr [rsp + 40], rsi | |
mov qword ptr [rsp + 48], rdx | |
xor eax, eax | |
test al, 1 | |
jne .LBB160_2 | |
mov rcx, qword ptr [rsp + 48] | |
mov rax, qword ptr [rsp + 40] | |
add rax, rcx | |
mov qword ptr [rsp + 24], rax | |
setb al | |
and al, 1 | |
mov byte ptr [rsp + 327], al | |
test byte ptr [rsp + 327], 1 | |
jne .LBB160_4 | |
jmp .LBB160_3 | |
.LBB160_2: | |
mov qword ptr [rsp + 88], 0 | |
mov rcx, qword ptr [rsp + 88] | |
mov rax, qword ptr [rsp + 96] | |
mov qword ptr [rsp + 72], rcx | |
mov qword ptr [rsp + 80], rax | |
mov rcx, qword ptr [rsp + 72] | |
mov rax, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 56], rcx | |
mov qword ptr [rsp + 64], rax | |
jmp .LBB160_19 | |
.LBB160_3: | |
mov rax, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 144], rax | |
mov qword ptr [rsp + 136], 1 | |
jmp .LBB160_5 | |
.LBB160_4: | |
mov qword ptr [rsp + 136], 0 | |
.LBB160_5: | |
mov qword ptr [rsp + 152], 0 | |
cmp qword ptr [rsp + 136], 0 | |
jne .LBB160_7 | |
mov rcx, qword ptr [rsp + 152] | |
mov rax, qword ptr [rsp + 160] | |
mov qword ptr [rsp + 120], rcx | |
mov qword ptr [rsp + 128], rax | |
jmp .LBB160_8 | |
.LBB160_7: | |
mov rax, qword ptr [rsp + 144] | |
mov qword ptr [rsp + 128], rax | |
movabs rax, -9223372036854775807 | |
mov qword ptr [rsp + 120], rax | |
.LBB160_8: | |
movabs rdx, -9223372036854775807 | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rsp + 120], rdx | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB160_10 | |
mov rax, qword ptr [rsp + 128] | |
mov qword ptr [rsp + 112], rax | |
movabs rax, -9223372036854775807 | |
mov qword ptr [rsp + 104], rax | |
jmp .LBB160_11 | |
.LBB160_10: | |
mov rcx, qword ptr [rsp + 120] | |
mov rax, qword ptr [rsp + 128] | |
mov qword ptr [rsp + 272], rcx | |
mov qword ptr [rsp + 280], rax | |
mov rcx, qword ptr [rsp + 272] | |
mov rax, qword ptr [rsp + 280] | |
mov qword ptr [rsp + 104], rcx | |
mov qword ptr [rsp + 112], rax | |
.LBB160_11: | |
movabs rdx, -9223372036854775807 | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rsp + 104], rdx | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB160_13 | |
mov rax, qword ptr [rsp + 32] | |
mov rsi, qword ptr [rsp + 112] | |
mov rdi, qword ptr [rax + 8] | |
shl rdi | |
call qword ptr [rip + core::cmp::max_by@GOTPCREL] | |
mov rsi, rax | |
mov edi, 4 | |
call qword ptr [rip + core::cmp::max_by@GOTPCREL] | |
mov rdx, rax | |
mov qword ptr [rsp], rdx | |
mov edi, 24 | |
mov esi, 8 | |
call core::alloc::layout::Layout::array::inner | |
mov rsi, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 8], rax | |
mov qword ptr [rsp + 16], rdx | |
lea rdi, [rsp + 232] | |
call qword ptr [rip + alloc::raw_vec::RawVec<T,A>::current_memory@GOTPCREL] | |
mov rsi, qword ptr [rsp + 8] | |
mov rdx, qword ptr [rsp + 16] | |
mov r8, qword ptr [rsp + 32] | |
lea rdi, [rsp + 208] | |
lea rcx, [rsp + 232] | |
call qword ptr [rip + alloc::raw_vec::finish_grow@GOTPCREL] | |
cmp qword ptr [rsp + 208], 0 | |
je .LBB160_14 | |
jmp .LBB160_15 | |
.LBB160_13: | |
mov rcx, qword ptr [rsp + 104] | |
mov rax, qword ptr [rsp + 112] | |
mov qword ptr [rsp + 168], rcx | |
mov qword ptr [rsp + 176], rax | |
mov rcx, qword ptr [rsp + 168] | |
mov rax, qword ptr [rsp + 176] | |
mov qword ptr [rsp + 288], rcx | |
mov qword ptr [rsp + 296], rax | |
mov rcx, qword ptr [rsp + 288] | |
mov rax, qword ptr [rsp + 296] | |
mov qword ptr [rsp + 56], rcx | |
mov qword ptr [rsp + 64], rax | |
jmp .LBB160_19 | |
.LBB160_14: | |
mov rcx, qword ptr [rsp + 216] | |
mov rax, qword ptr [rsp + 224] | |
mov qword ptr [rsp + 192], rcx | |
mov qword ptr [rsp + 200], rax | |
mov qword ptr [rsp + 184], 0 | |
jmp .LBB160_16 | |
.LBB160_15: | |
mov rcx, qword ptr [rsp + 216] | |
mov rax, qword ptr [rsp + 224] | |
mov qword ptr [rsp + 304], rcx | |
mov qword ptr [rsp + 312], rax | |
mov rcx, qword ptr [rsp + 304] | |
mov rax, qword ptr [rsp + 312] | |
mov qword ptr [rsp + 192], rcx | |
mov qword ptr [rsp + 200], rax | |
mov qword ptr [rsp + 184], 1 | |
.LBB160_16: | |
cmp qword ptr [rsp + 184], 0 | |
jne .LBB160_18 | |
mov rcx, qword ptr [rsp] | |
mov rdi, qword ptr [rsp + 32] | |
mov rsi, qword ptr [rsp + 192] | |
mov rdx, qword ptr [rsp + 200] | |
call qword ptr [rip + alloc::raw_vec::RawVec<T,A>::set_ptr_and_cap@GOTPCREL] | |
movabs rax, -9223372036854775807 | |
mov qword ptr [rsp + 56], rax | |
jmp .LBB160_19 | |
.LBB160_18: | |
mov rcx, qword ptr [rsp + 192] | |
mov rax, qword ptr [rsp + 200] | |
mov qword ptr [rsp + 256], rcx | |
mov qword ptr [rsp + 264], rax | |
mov rcx, qword ptr [rsp + 256] | |
mov rax, qword ptr [rsp + 264] | |
mov qword ptr [rsp + 56], rcx | |
mov qword ptr [rsp + 64], rax | |
.LBB160_19: | |
mov rax, qword ptr [rsp + 56] | |
mov rdx, qword ptr [rsp + 64] | |
add rsp, 328 | |
ret | |
alloc::raw_vec::RawVec<T,A>::set_ptr_and_cap: | |
mov qword ptr [rsp - 16], rsi | |
mov rax, qword ptr [rsp - 16] | |
mov qword ptr [rsp - 8], rax | |
mov rax, qword ptr [rsp - 8] | |
mov qword ptr [rsp - 24], rax | |
mov rax, qword ptr [rsp - 24] | |
mov qword ptr [rdi], rax | |
mov qword ptr [rdi + 8], rcx | |
ret | |
alloc::raw_vec::RawVec<T,A>::reserve::do_reserve_and_handle: | |
push rax | |
call qword ptr [rip + alloc::raw_vec::RawVec<T,A>::grow_amortized@GOTPCREL] | |
mov rdi, rax | |
mov rsi, rdx | |
call alloc::raw_vec::handle_reserve | |
pop rax | |
ret | |
<I as core::iter::traits::collect::IntoIterator>::into_iter: | |
mov edx, esi | |
mov eax, edi | |
ret | |
<I as core::iter::traits::collect::IntoIterator>::into_iter: | |
mov rax, rdi | |
mov rcx, qword ptr [rsi] | |
mov qword ptr [rdi], rcx | |
mov rcx, qword ptr [rsi + 8] | |
mov qword ptr [rdi + 8], rcx | |
ret | |
<alloc::alloc::Global as core::alloc::Allocator>::deallocate: | |
sub rsp, 40 | |
mov qword ptr [rsp + 8], rsi | |
mov qword ptr [rsp + 16], rdx | |
mov qword ptr [rsp + 24], rcx | |
cmp rcx, 0 | |
jne .LBB165_2 | |
jmp .LBB165_3 | |
.LBB165_2: | |
mov rsi, qword ptr [rsp + 24] | |
mov rdi, qword ptr [rsp + 8] | |
mov rax, qword ptr [rsp + 16] | |
mov qword ptr [rsp + 32], rax | |
mov rdx, qword ptr [rsp + 32] | |
call qword ptr [rip + __rust_dealloc@GOTPCREL] | |
.LBB165_3: | |
add rsp, 40 | |
ret | |
<alloc::alloc::Global as core::alloc::Allocator>::allocate_zeroed: | |
push rax | |
mov ecx, 1 | |
call alloc::alloc::Global::alloc_impl | |
pop rcx | |
ret | |
<alloc::alloc::Global as core::alloc::Allocator>::grow: | |
push rax | |
mov rax, rsp | |
mov dword ptr [rax], 0 | |
call alloc::alloc::Global::grow_impl | |
pop rcx | |
ret | |
<alloc::alloc::Global as core::alloc::Allocator>::allocate: | |
push rax | |
xor ecx, ecx | |
call alloc::alloc::Global::alloc_impl | |
pop rcx | |
ret | |
<T as alloc::ffi::c_str::CString::new::SpecNewImpl>::spec_new_impl: | |
sub rsp, 264 | |
mov qword ptr [rsp + 48], rdi | |
mov qword ptr [rsp + 56], rdi | |
lea rdi, [rsp + 80] | |
call qword ptr [rip + <T as core::convert::Into<U>>::into@GOTPCREL] | |
mov byte ptr [rsp + 215], 1 | |
mov rcx, qword ptr [rsp + 80] | |
mov rax, qword ptr [rsp + 96] | |
mov qword ptr [rsp + 232], rcx | |
mov qword ptr [rsp + 240], rax | |
mov rcx, qword ptr [rsp + 232] | |
mov rax, qword ptr [rsp + 240] | |
mov qword ptr [rsp + 216], rcx | |
mov qword ptr [rsp + 224], rax | |
mov rax, qword ptr [rsp + 216] | |
mov qword ptr [rsp + 64], rax | |
mov rax, qword ptr [rsp + 224] | |
mov qword ptr [rsp + 72], rax | |
cmp rax, 16 | |
jb .LBB169_2 | |
mov rdx, qword ptr [rsp + 72] | |
mov rsi, qword ptr [rsp + 64] | |
mov rax, qword ptr [rip + core::slice::memchr::memchr_aligned@GOTPCREL] | |
xor edi, edi | |
call rax | |
mov qword ptr [rsp + 32], rdx | |
mov qword ptr [rsp + 40], rax | |
jmp .LBB169_5 | |
.LBB169_2: | |
mov rdx, qword ptr [rsp + 72] | |
mov rsi, qword ptr [rsp + 64] | |
xor edi, edi | |
call core::slice::memchr::memchr_naive | |
mov qword ptr [rsp + 16], rdx | |
mov qword ptr [rsp + 24], rax | |
jmp .LBB169_7 | |
.LBB169_3: | |
test byte ptr [rsp + 215], 1 | |
jne .LBB169_13 | |
jmp .LBB169_12 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 248], rcx | |
mov dword ptr [rsp + 256], eax | |
jmp .LBB169_3 | |
.LBB169_5: | |
mov rax, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 104], rcx | |
mov qword ptr [rsp + 112], rax | |
.LBB169_6: | |
cmp qword ptr [rsp + 104], 0 | |
je .LBB169_8 | |
jmp .LBB169_9 | |
.LBB169_7: | |
mov rax, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 104], rcx | |
mov qword ptr [rsp + 112], rax | |
jmp .LBB169_6 | |
.LBB169_8: | |
mov byte ptr [rsp + 215], 0 | |
mov rax, qword ptr [rsp + 96] | |
mov qword ptr [rsp + 192], rax | |
movups xmm0, xmmword ptr [rsp + 80] | |
movaps xmmword ptr [rsp + 176], xmm0 | |
mov rax, qword ptr [rip + alloc::ffi::c_str::CString::_from_vec_unchecked@GOTPCREL] | |
lea rdi, [rsp + 176] | |
call rax | |
mov qword ptr [rsp], rdx | |
mov qword ptr [rsp + 8], rax | |
jmp .LBB169_10 | |
.LBB169_9: | |
mov rax, qword ptr [rsp + 48] | |
mov rcx, qword ptr [rsp + 112] | |
mov rdx, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 152], rdx | |
mov rdx, qword ptr [rsp + 88] | |
mov qword ptr [rsp + 160], rdx | |
mov rdx, qword ptr [rsp + 96] | |
mov qword ptr [rsp + 168], rdx | |
mov qword ptr [rsp + 144], rcx | |
mov rcx, qword ptr [rsp + 152] | |
mov qword ptr [rsp + 120], rcx | |
mov rcx, qword ptr [rsp + 160] | |
mov qword ptr [rsp + 128], rcx | |
mov rcx, qword ptr [rsp + 168] | |
mov qword ptr [rsp + 136], rcx | |
mov rcx, qword ptr [rsp + 120] | |
mov qword ptr [rax], rcx | |
mov rcx, qword ptr [rsp + 128] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsp + 136] | |
mov qword ptr [rax + 16], rcx | |
mov rcx, qword ptr [rsp + 144] | |
mov qword ptr [rax + 24], rcx | |
jmp .LBB169_11 | |
.LBB169_10: | |
mov rax, qword ptr [rsp + 48] | |
mov rcx, qword ptr [rsp] | |
mov rdx, qword ptr [rsp + 8] | |
mov qword ptr [rax + 8], rdx | |
mov qword ptr [rax + 16], rcx | |
mov qword ptr [rax], 0 | |
.LBB169_11: | |
mov rax, qword ptr [rsp + 56] | |
add rsp, 264 | |
ret | |
.LBB169_12: | |
mov rdi, qword ptr [rsp + 248] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB169_13: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::vec::Vec<u8>>@GOTPCREL] | |
lea rdi, [rsp + 80] | |
call rax | |
jmp .LBB169_12 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
<core::option::Option<T> as core::fmt::Debug>::fmt: | |
sub rsp, 40 | |
mov qword ptr [rsp + 8], rdi | |
mov qword ptr [rsp + 16], rsi | |
cmp qword ptr [rdi], 0 | |
jne .LBB170_2 | |
mov rdi, qword ptr [rsp + 16] | |
lea rsi, [rip + .L__unnamed_52] | |
mov edx, 4 | |
call qword ptr [rip + core::fmt::Formatter::write_str@GOTPCREL] | |
and al, 1 | |
mov byte ptr [rsp + 31], al | |
jmp .LBB170_3 | |
.LBB170_2: | |
mov rdi, qword ptr [rsp + 16] | |
mov rax, qword ptr [rsp + 8] | |
add rax, 8 | |
mov qword ptr [rsp + 32], rax | |
lea rsi, [rip + .L__unnamed_53] | |
mov edx, 4 | |
lea rcx, [rsp + 32] | |
lea r8, [rip + .L__unnamed_50] | |
call qword ptr [rip + core::fmt::Formatter::debug_tuple_field1_finish@GOTPCREL] | |
and al, 1 | |
mov byte ptr [rsp + 31], al | |
.LBB170_3: | |
mov al, byte ptr [rsp + 31] | |
and al, 1 | |
movzx eax, al | |
add rsp, 40 | |
ret | |
<alloc::boxed::Box<T,A> as core::fmt::Debug>::fmt: | |
push rax | |
mov rdx, rsi | |
mov rax, rdi | |
mov rdi, qword ptr [rax] | |
mov rsi, qword ptr [rax + 8] | |
call qword ptr [rip + <dyn core::any::Any+core::marker::Send as core::fmt::Debug>::fmt@GOTPCREL] | |
and al, 1 | |
movzx eax, al | |
pop rcx | |
ret | |
<alloc::ffi::c_str::CString as core::ops::drop::Drop>::drop: | |
mov rax, qword ptr [rdi] | |
mov byte ptr [rax], 0 | |
ret | |
<alloc::sync::Arc<T,A> as core::clone::Clone>::clone: | |
sub rsp, 40 | |
mov qword ptr [rsp + 16], rdi | |
mov rcx, qword ptr [rdi] | |
mov eax, 1 | |
lock xadd qword ptr [rcx], rax | |
mov qword ptr [rsp + 32], rax | |
movabs rax, 9223372036854775807 | |
cmp qword ptr [rsp + 32], rax | |
ja .LBB173_2 | |
mov rdi, qword ptr [rsp + 16] | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rax | |
call <alloc::alloc::Global as core::clone::Clone>::clone | |
mov rax, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 24], rax | |
mov rax, qword ptr [rsp + 24] | |
add rsp, 40 | |
ret | |
.LBB173_2: | |
ud2 | |
ud2 | |
<alloc::sync::Arc<T,A> as core::clone::Clone>::clone: | |
sub rsp, 40 | |
mov qword ptr [rsp + 16], rdi | |
mov rcx, qword ptr [rdi] | |
mov eax, 1 | |
lock xadd qword ptr [rcx], rax | |
mov qword ptr [rsp + 32], rax | |
movabs rax, 9223372036854775807 | |
cmp qword ptr [rsp + 32], rax | |
ja .LBB174_2 | |
mov rdi, qword ptr [rsp + 16] | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rax | |
call <alloc::alloc::Global as core::clone::Clone>::clone | |
mov rax, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 24], rax | |
mov rax, qword ptr [rsp + 24] | |
add rsp, 40 | |
ret | |
.LBB174_2: | |
ud2 | |
ud2 | |
<alloc::sync::Arc<T,A> as core::clone::Clone>::clone: | |
sub rsp, 40 | |
mov qword ptr [rsp + 16], rdi | |
mov rcx, qword ptr [rdi] | |
mov eax, 1 | |
lock xadd qword ptr [rcx], rax | |
mov qword ptr [rsp + 32], rax | |
movabs rax, 9223372036854775807 | |
cmp qword ptr [rsp + 32], rax | |
ja .LBB175_2 | |
mov rdi, qword ptr [rsp + 16] | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rax | |
call <alloc::alloc::Global as core::clone::Clone>::clone | |
mov rax, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 24], rax | |
mov rax, qword ptr [rsp + 24] | |
add rsp, 40 | |
ret | |
.LBB175_2: | |
ud2 | |
ud2 | |
<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 40 | |
mov rcx, qword ptr [rdi] | |
mov rax, qword ptr [rdi + 16] | |
mov qword ptr [rsp + 24], rcx | |
mov qword ptr [rsp + 32], rax | |
mov rcx, qword ptr [rsp + 24] | |
mov rax, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rax | |
mov rdi, qword ptr [rsp + 8] | |
mov rsi, qword ptr [rsp + 16] | |
call qword ptr [rip + core::ptr::drop_in_place<[std::thread::JoinHandle<()>]>@GOTPCREL] | |
add rsp, 40 | |
ret | |
<alloc::vec::Vec<T,A> as core::ops::drop::Drop>::drop: | |
mov rcx, qword ptr [rdi] | |
mov rax, qword ptr [rdi + 16] | |
mov qword ptr [rsp - 16], rcx | |
mov qword ptr [rsp - 8], rax | |
mov rcx, qword ptr [rsp - 16] | |
mov rax, qword ptr [rsp - 8] | |
mov qword ptr [rsp - 32], rcx | |
mov qword ptr [rsp - 24], rax | |
ret | |
<std::thread::Packet<T> as core::ops::drop::Drop>::drop: | |
sub rsp, 152 | |
mov qword ptr [rsp + 16], rdi | |
cmp qword ptr [rdi + 8], 1 | |
jne .LBB178_2 | |
mov rax, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rax + 16] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
sete al | |
and al, 1 | |
mov byte ptr [rsp + 31], al | |
jmp .LBB178_3 | |
.LBB178_2: | |
mov byte ptr [rsp + 31], 0 | |
.LBB178_3: | |
mov rax, qword ptr [rsp + 16] | |
add rax, 8 | |
mov qword ptr [rsp + 56], rax | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 48], rax | |
mov rdi, qword ptr [rsp + 48] | |
mov rax, qword ptr [rip + std::panicking::try@GOTPCREL] | |
call rax | |
mov qword ptr [rsp + 40], rdx | |
mov qword ptr [rsp + 32], rax | |
mov rdx, qword ptr [rsp + 32] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
jne .LBB178_5 | |
mov rax, qword ptr [rip + std::sys::unix::stdio::panic_output@GOTPCREL] | |
call rax | |
mov byte ptr [rsp + 15], al | |
jmp .LBB178_8 | |
.LBB178_5: | |
lea rdi, [rsp + 32] | |
call qword ptr [rip + core::ptr::drop_in_place<core::result::Result<(),alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>>@GOTPCREL] | |
mov rax, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rax] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
je .LBB178_17 | |
jmp .LBB178_18 | |
.LBB178_6: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::result::Result<(),alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>>@GOTPCREL] | |
lea rdi, [rsp + 32] | |
call rax | |
jmp .LBB178_16 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 136], rcx | |
mov dword ptr [rsp + 144], eax | |
jmp .LBB178_6 | |
.LBB178_8: | |
mov al, byte ptr [rsp + 15] | |
and al, 1 | |
mov byte ptr [rsp + 70], al | |
mov al, byte ptr [rsp + 70] | |
and al, 1 | |
movzx eax, al | |
cmp rax, 1 | |
jne .LBB178_10 | |
lea rsi, [rip + .L__unnamed_54] | |
xor eax, eax | |
mov r8d, eax | |
lea rdi, [rsp + 80] | |
mov edx, 1 | |
lea rcx, [rsp + 128] | |
call core::fmt::Arguments::new_v1 | |
jmp .LBB178_11 | |
.LBB178_10: | |
mov rax, qword ptr [rip + std::sys::unix::abort_internal@GOTPCREL] | |
call rax | |
jmp .LBB178_14 | |
.LBB178_11: | |
mov rax, qword ptr [rip + std::io::Write::write_fmt@GOTPCREL] | |
lea rdi, [rsp + 71] | |
lea rsi, [rsp + 80] | |
call rax | |
mov qword ptr [rsp], rax | |
jmp .LBB178_12 | |
.LBB178_12: | |
mov rax, qword ptr [rsp] | |
mov qword ptr [rsp + 72], rax | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::result::Result<(),std::io::error::Error>>@GOTPCREL] | |
lea rdi, [rsp + 72] | |
call rax | |
jmp .LBB178_13 | |
.LBB178_13: | |
jmp .LBB178_10 | |
.LBB178_14: | |
ud2 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB178_16: | |
mov rdi, qword ptr [rsp + 136] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB178_17: | |
mov rax, qword ptr [rsp + 16] | |
mov rdi, qword ptr [rax] | |
add rdi, 16 | |
mov al, byte ptr [rsp + 31] | |
and al, 1 | |
movzx esi, al | |
call qword ptr [rip + std::thread::scoped::ScopeData::decrement_num_running_threads@GOTPCREL] | |
.LBB178_18: | |
add rsp, 152 | |
ret | |
<std::thread::Packet<T> as core::ops::drop::Drop>::drop::{{closure}}: | |
sub rsp, 56 | |
mov qword ptr [rsp + 16], 0 | |
mov rdi, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rdi | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::option::Option<core::result::Result<(),alloc::boxed::Box<dyn core::any::Any+core::marker::Send>>>>@GOTPCREL] | |
call rax | |
jmp .LBB179_3 | |
.LBB179_1: | |
mov rax, qword ptr [rsp + 8] | |
mov rcx, qword ptr [rsp + 32] | |
mov qword ptr [rax + 16], rcx | |
movups xmm0, xmmword ptr [rsp + 16] | |
movups xmmword ptr [rax], xmm0 | |
mov rdi, qword ptr [rsp + 40] | |
call _Unwind_Resume@PLT | |
ud2 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB179_1 | |
.LBB179_3: | |
mov rax, qword ptr [rsp + 8] | |
mov rcx, qword ptr [rsp + 16] | |
mov qword ptr [rax], rcx | |
mov rcx, qword ptr [rsp + 24] | |
mov qword ptr [rax + 8], rcx | |
mov rcx, qword ptr [rsp + 32] | |
mov qword ptr [rax + 16], rcx | |
add rsp, 56 | |
ret | |
<alloc::sync::Arc<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 24 | |
mov qword ptr [rsp + 8], rdi | |
mov rcx, qword ptr [rdi] | |
mov rax, -1 | |
lock xadd qword ptr [rcx], rax | |
mov qword ptr [rsp + 16], rax | |
cmp qword ptr [rsp + 16], 1 | |
jne .LBB180_2 | |
mov rdi, qword ptr [rsp + 8] | |
call qword ptr [rip + alloc::sync::Arc<T,A>::drop_slow@GOTPCREL] | |
jmp .LBB180_3 | |
.LBB180_2: | |
jmp .LBB180_3 | |
.LBB180_3: | |
add rsp, 24 | |
ret | |
<alloc::sync::Arc<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 24 | |
mov qword ptr [rsp + 8], rdi | |
mov rcx, qword ptr [rdi] | |
mov rax, -1 | |
lock xadd qword ptr [rcx], rax | |
mov qword ptr [rsp + 16], rax | |
cmp qword ptr [rsp + 16], 1 | |
jne .LBB181_2 | |
mov rdi, qword ptr [rsp + 8] | |
call qword ptr [rip + alloc::sync::Arc<T,A>::drop_slow@GOTPCREL] | |
jmp .LBB181_3 | |
.LBB181_2: | |
jmp .LBB181_3 | |
.LBB181_3: | |
add rsp, 24 | |
ret | |
<alloc::sync::Arc<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 24 | |
mov qword ptr [rsp + 8], rdi | |
mov rcx, qword ptr [rdi] | |
mov rax, -1 | |
lock xadd qword ptr [rcx], rax | |
mov qword ptr [rsp + 16], rax | |
cmp qword ptr [rsp + 16], 1 | |
jne .LBB182_2 | |
mov rdi, qword ptr [rsp + 8] | |
call qword ptr [rip + alloc::sync::Arc<T,A>::drop_slow@GOTPCREL] | |
jmp .LBB182_3 | |
.LBB182_2: | |
jmp .LBB182_3 | |
.LBB182_3: | |
add rsp, 24 | |
ret | |
<alloc::sync::Arc<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 24 | |
mov qword ptr [rsp + 8], rdi | |
mov rcx, qword ptr [rdi] | |
mov rax, -1 | |
lock xadd qword ptr [rcx], rax | |
mov qword ptr [rsp + 16], rax | |
cmp qword ptr [rsp + 16], 1 | |
jne .LBB183_2 | |
mov rdi, qword ptr [rsp + 8] | |
call qword ptr [rip + alloc::sync::Arc<T,A>::drop_slow@GOTPCREL] | |
jmp .LBB183_3 | |
.LBB183_2: | |
jmp .LBB183_3 | |
.LBB183_3: | |
add rsp, 24 | |
ret | |
<alloc::boxed::Box<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 72 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rax | |
mov qword ptr [rsp + 56], 24 | |
mov rcx, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 64], 8 | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 24], rcx | |
mov qword ptr [rsp + 16], rax | |
cmp qword ptr [rsp + 24], 0 | |
jne .LBB184_2 | |
jmp .LBB184_3 | |
.LBB184_2: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 40], rax | |
mov rax, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 48], rax | |
mov rax, qword ptr [rsp + 48] | |
mov qword ptr [rsp + 32], rax | |
mov rdx, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rsp + 24] | |
mov rsi, qword ptr [rsp + 32] | |
call <alloc::alloc::Global as core::alloc::Allocator>::deallocate | |
.LBB184_3: | |
add rsp, 72 | |
ret | |
<alloc::boxed::Box<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 72 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rax | |
mov rax, qword ptr [rdi + 8] | |
mov rcx, qword ptr [rax + 8] | |
mov qword ptr [rsp + 56], rcx | |
mov rcx, qword ptr [rsp + 56] | |
mov rax, qword ptr [rax + 16] | |
mov qword ptr [rsp + 64], rax | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 24], rcx | |
mov qword ptr [rsp + 16], rax | |
cmp qword ptr [rsp + 24], 0 | |
jne .LBB185_2 | |
jmp .LBB185_3 | |
.LBB185_2: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 40], rax | |
mov rax, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 48], rax | |
mov rax, qword ptr [rsp + 48] | |
mov qword ptr [rsp + 32], rax | |
mov rdx, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rsp + 24] | |
mov rsi, qword ptr [rsp + 32] | |
call <alloc::alloc::Global as core::alloc::Allocator>::deallocate | |
.LBB185_3: | |
add rsp, 72 | |
ret | |
<alloc::boxed::Box<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 72 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rax | |
mov rax, qword ptr [rdi + 8] | |
mov rcx, qword ptr [rax + 8] | |
mov qword ptr [rsp + 56], rcx | |
mov rcx, qword ptr [rsp + 56] | |
mov rax, qword ptr [rax + 16] | |
mov qword ptr [rsp + 64], rax | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 24], rcx | |
mov qword ptr [rsp + 16], rax | |
cmp qword ptr [rsp + 24], 0 | |
jne .LBB186_2 | |
jmp .LBB186_3 | |
.LBB186_2: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 40], rax | |
mov rax, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 48], rax | |
mov rax, qword ptr [rsp + 48] | |
mov qword ptr [rsp + 32], rax | |
mov rdx, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rsp + 24] | |
mov rsi, qword ptr [rsp + 32] | |
call <alloc::alloc::Global as core::alloc::Allocator>::deallocate | |
.LBB186_3: | |
add rsp, 72 | |
ret | |
<alloc::boxed::Box<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 72 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rsp + 8], rax | |
mov rax, qword ptr [rdi + 8] | |
shl rax, 0 | |
mov qword ptr [rsp + 56], rax | |
mov rcx, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 64], 1 | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp + 24], rcx | |
mov qword ptr [rsp + 16], rax | |
cmp qword ptr [rsp + 24], 0 | |
jne .LBB187_2 | |
jmp .LBB187_3 | |
.LBB187_2: | |
mov rdi, qword ptr [rsp] | |
mov rax, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 40], rax | |
mov rax, qword ptr [rsp + 40] | |
mov qword ptr [rsp + 48], rax | |
mov rax, qword ptr [rsp + 48] | |
mov qword ptr [rsp + 32], rax | |
mov rdx, qword ptr [rsp + 16] | |
mov rcx, qword ptr [rsp + 24] | |
mov rsi, qword ptr [rsp + 32] | |
call <alloc::alloc::Global as core::alloc::Allocator>::deallocate | |
.LBB187_3: | |
add rsp, 72 | |
ret | |
<alloc::sync::Weak<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 88 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rdi] | |
cmp rax, -1 | |
je .LBB188_2 | |
mov rax, qword ptr [rsp] | |
mov rax, qword ptr [rax] | |
mov rcx, rax | |
add rcx, 8 | |
mov qword ptr [rsp + 48], rcx | |
mov qword ptr [rsp + 56], rax | |
mov rcx, qword ptr [rsp + 48] | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rax | |
jmp .LBB188_3 | |
.LBB188_2: | |
mov qword ptr [rsp + 8], 0 | |
.LBB188_3: | |
mov rdx, qword ptr [rsp + 8] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
jne .LBB188_5 | |
mov rcx, qword ptr [rsp + 8] | |
mov rax, -1 | |
lock xadd qword ptr [rcx], rax | |
mov qword ptr [rsp + 64], rax | |
cmp qword ptr [rsp + 64], 1 | |
je .LBB188_6 | |
jmp .LBB188_7 | |
.LBB188_5: | |
jmp .LBB188_8 | |
.LBB188_6: | |
mov rax, qword ptr [rsp] | |
mov rdi, rax | |
add rdi, 8 | |
mov rax, qword ptr [rax] | |
mov qword ptr [rsp + 24], rax | |
mov qword ptr [rsp + 72], 48 | |
mov rcx, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 80], 8 | |
mov rax, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 40], rcx | |
mov qword ptr [rsp + 32], rax | |
mov rsi, qword ptr [rsp + 24] | |
mov rdx, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 40] | |
call qword ptr [rip + <&A as core::alloc::Allocator>::deallocate@GOTPCREL] | |
jmp .LBB188_8 | |
.LBB188_7: | |
jmp .LBB188_8 | |
.LBB188_8: | |
add rsp, 88 | |
ret | |
<alloc::sync::Weak<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 88 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rdi] | |
cmp rax, -1 | |
je .LBB189_2 | |
mov rax, qword ptr [rsp] | |
mov rax, qword ptr [rax] | |
mov rcx, rax | |
add rcx, 8 | |
mov qword ptr [rsp + 48], rcx | |
mov qword ptr [rsp + 56], rax | |
mov rcx, qword ptr [rsp + 48] | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rax | |
jmp .LBB189_3 | |
.LBB189_2: | |
mov qword ptr [rsp + 8], 0 | |
.LBB189_3: | |
mov rdx, qword ptr [rsp + 8] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
jne .LBB189_5 | |
mov rcx, qword ptr [rsp + 8] | |
mov rax, -1 | |
lock xadd qword ptr [rcx], rax | |
mov qword ptr [rsp + 64], rax | |
cmp qword ptr [rsp + 64], 1 | |
je .LBB189_6 | |
jmp .LBB189_7 | |
.LBB189_5: | |
jmp .LBB189_8 | |
.LBB189_6: | |
mov rax, qword ptr [rsp] | |
mov rdi, rax | |
add rdi, 8 | |
mov rax, qword ptr [rax] | |
mov qword ptr [rsp + 24], rax | |
mov qword ptr [rsp + 72], 48 | |
mov rcx, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 80], 8 | |
mov rax, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 40], rcx | |
mov qword ptr [rsp + 32], rax | |
mov rsi, qword ptr [rsp + 24] | |
mov rdx, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 40] | |
call qword ptr [rip + <&A as core::alloc::Allocator>::deallocate@GOTPCREL] | |
jmp .LBB189_8 | |
.LBB189_7: | |
jmp .LBB189_8 | |
.LBB189_8: | |
add rsp, 88 | |
ret | |
<alloc::sync::Weak<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 88 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rdi] | |
cmp rax, -1 | |
je .LBB190_2 | |
mov rax, qword ptr [rsp] | |
mov rax, qword ptr [rax] | |
mov rcx, rax | |
add rcx, 8 | |
mov qword ptr [rsp + 48], rcx | |
mov qword ptr [rsp + 56], rax | |
mov rcx, qword ptr [rsp + 48] | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rax | |
jmp .LBB190_3 | |
.LBB190_2: | |
mov qword ptr [rsp + 8], 0 | |
.LBB190_3: | |
mov rdx, qword ptr [rsp + 8] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
jne .LBB190_5 | |
mov rcx, qword ptr [rsp + 8] | |
mov rax, -1 | |
lock xadd qword ptr [rcx], rax | |
mov qword ptr [rsp + 64], rax | |
cmp qword ptr [rsp + 64], 1 | |
je .LBB190_6 | |
jmp .LBB190_7 | |
.LBB190_5: | |
jmp .LBB190_8 | |
.LBB190_6: | |
mov rax, qword ptr [rsp] | |
mov rdi, rax | |
add rdi, 8 | |
mov rax, qword ptr [rax] | |
mov qword ptr [rsp + 24], rax | |
mov qword ptr [rsp + 72], 40 | |
mov rcx, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 80], 8 | |
mov rax, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 40], rcx | |
mov qword ptr [rsp + 32], rax | |
mov rsi, qword ptr [rsp + 24] | |
mov rdx, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 40] | |
call qword ptr [rip + <&A as core::alloc::Allocator>::deallocate@GOTPCREL] | |
jmp .LBB190_8 | |
.LBB190_7: | |
jmp .LBB190_8 | |
.LBB190_8: | |
add rsp, 88 | |
ret | |
<alloc::sync::Weak<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 88 | |
mov qword ptr [rsp], rdi | |
mov rax, qword ptr [rdi] | |
cmp rax, -1 | |
je .LBB191_2 | |
mov rax, qword ptr [rsp] | |
mov rax, qword ptr [rax] | |
mov rcx, rax | |
add rcx, 8 | |
mov qword ptr [rsp + 48], rcx | |
mov qword ptr [rsp + 56], rax | |
mov rcx, qword ptr [rsp + 48] | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rsp + 8], rcx | |
mov qword ptr [rsp + 16], rax | |
jmp .LBB191_3 | |
.LBB191_2: | |
mov qword ptr [rsp + 8], 0 | |
.LBB191_3: | |
mov rdx, qword ptr [rsp + 8] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
jne .LBB191_5 | |
mov rcx, qword ptr [rsp + 8] | |
mov rax, -1 | |
lock xadd qword ptr [rcx], rax | |
mov qword ptr [rsp + 64], rax | |
cmp qword ptr [rsp + 64], 1 | |
je .LBB191_6 | |
jmp .LBB191_7 | |
.LBB191_5: | |
jmp .LBB191_8 | |
.LBB191_6: | |
mov rax, qword ptr [rsp] | |
mov rdi, rax | |
add rdi, 8 | |
mov rax, qword ptr [rax] | |
mov qword ptr [rsp + 24], rax | |
mov qword ptr [rsp + 72], 48 | |
mov rcx, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 80], 8 | |
mov rax, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 40], rcx | |
mov qword ptr [rsp + 32], rax | |
mov rsi, qword ptr [rsp + 24] | |
mov rdx, qword ptr [rsp + 32] | |
mov rcx, qword ptr [rsp + 40] | |
call qword ptr [rip + <&A as core::alloc::Allocator>::deallocate@GOTPCREL] | |
jmp .LBB191_8 | |
.LBB191_7: | |
jmp .LBB191_8 | |
.LBB191_8: | |
add rsp, 88 | |
ret | |
<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 40 | |
mov rsi, rdi | |
mov qword ptr [rsp + 8], rsi | |
lea rdi, [rsp + 16] | |
call qword ptr [rip + alloc::raw_vec::RawVec<T,A>::current_memory@GOTPCREL] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rsp + 24], 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
jne .LBB192_2 | |
mov rdi, qword ptr [rsp + 8] | |
mov rsi, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp + 24] | |
mov rcx, qword ptr [rsp + 32] | |
call <alloc::alloc::Global as core::alloc::Allocator>::deallocate | |
.LBB192_2: | |
add rsp, 40 | |
ret | |
<alloc::raw_vec::RawVec<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 40 | |
mov rsi, rdi | |
mov qword ptr [rsp + 8], rsi | |
lea rdi, [rsp + 16] | |
call qword ptr [rip + alloc::raw_vec::RawVec<T,A>::current_memory@GOTPCREL] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp qword ptr [rsp + 24], 0 | |
cmove rax, rcx | |
cmp rax, 1 | |
jne .LBB193_2 | |
mov rdi, qword ptr [rsp + 8] | |
mov rsi, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp + 24] | |
mov rcx, qword ptr [rsp + 32] | |
call <alloc::alloc::Global as core::alloc::Allocator>::deallocate | |
.LBB193_2: | |
add rsp, 40 | |
ret | |
<std::io::error::repr_bitpacked::Repr as core::ops::drop::Drop>::drop: | |
sub rsp, 24 | |
mov rsi, qword ptr [rdi] | |
lea rdi, [rsp + 8] | |
call qword ptr [rip + std::io::error::repr_bitpacked::decode_repr@GOTPCREL] | |
lea rdi, [rsp + 8] | |
call qword ptr [rip + core::ptr::drop_in_place<std::io::error::ErrorData<alloc::boxed::Box<std::io::error::Custom>>>@GOTPCREL] | |
add rsp, 24 | |
ret | |
<std::io::error::repr_bitpacked::Repr as core::ops::drop::Drop>::drop::{{closure}}: | |
mov qword ptr [rsp - 8], rdi | |
mov rax, qword ptr [rsp - 8] | |
mov qword ptr [rsp - 16], rax | |
mov rax, qword ptr [rsp - 16] | |
mov qword ptr [rsp - 24], rax | |
mov rax, qword ptr [rsp - 24] | |
ret | |
<std::io::Write::write_fmt::Adapter<T> as core::fmt::Write>::write_str: | |
sub rsp, 56 | |
mov qword ptr [rsp + 8], rdi | |
mov rdi, qword ptr [rdi] | |
call qword ptr [rip + std::io::Write::write_all@GOTPCREL] | |
mov qword ptr [rsp + 24], rax | |
mov rdx, qword ptr [rsp + 24] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB196_2 | |
mov byte ptr [rsp + 23], 0 | |
jmp .LBB196_3 | |
.LBB196_2: | |
mov rdi, qword ptr [rsp + 8] | |
mov rax, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 32], rax | |
add rdi, 8 | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<core::result::Result<(),std::io::error::Error>>@GOTPCREL] | |
call rax | |
jmp .LBB196_6 | |
.LBB196_3: | |
mov al, byte ptr [rsp + 23] | |
and al, 1 | |
movzx eax, al | |
add rsp, 56 | |
ret | |
.LBB196_4: | |
mov rax, qword ptr [rsp + 8] | |
mov rcx, qword ptr [rsp + 32] | |
mov qword ptr [rax + 8], rcx | |
mov rdi, qword ptr [rsp + 40] | |
call _Unwind_Resume@PLT | |
ud2 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB196_4 | |
.LBB196_6: | |
mov rax, qword ptr [rsp + 8] | |
mov rcx, qword ptr [rsp + 32] | |
mov qword ptr [rax + 8], rcx | |
mov byte ptr [rsp + 23], 1 | |
jmp .LBB196_3 | |
<alloc::vec::set_len_on_drop::SetLenOnDrop as core::ops::drop::Drop>::drop: | |
mov rcx, qword ptr [rdi + 8] | |
mov rax, qword ptr [rdi] | |
mov qword ptr [rax], rcx | |
ret | |
<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop: | |
sub rsp, 40 | |
mov qword ptr [rsp + 16], rdi | |
mov rdi, qword ptr [rsp + 16] | |
mov rax, qword ptr [rip + alloc::vec::into_iter::IntoIter<T,A>::as_raw_mut_slice@GOTPCREL] | |
call rax | |
mov qword ptr [rsp], rdx | |
mov qword ptr [rsp + 8], rax | |
jmp .LBB198_3 | |
.LBB198_1: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<std::thread::JoinHandle<()>,alloc::alloc::Global>>@GOTPCREL] | |
lea rdi, [rsp + 16] | |
call rax | |
jmp .LBB198_6 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 24], rcx | |
mov dword ptr [rsp + 32], eax | |
jmp .LBB198_1 | |
.LBB198_3: | |
mov rsi, qword ptr [rsp] | |
mov rdi, qword ptr [rsp + 8] | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<[std::thread::JoinHandle<()>]>@GOTPCREL] | |
call rax | |
jmp .LBB198_4 | |
.LBB198_4: | |
lea rdi, [rsp + 16] | |
call qword ptr [rip + core::ptr::drop_in_place<<alloc::vec::into_iter::IntoIter<T,A> as core::ops::drop::Drop>::drop::DropGuard<std::thread::JoinHandle<()>,alloc::alloc::Global>>@GOTPCREL] | |
add rsp, 40 | |
ret | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB198_6: | |
mov rdi, qword ptr [rsp + 24] | |
call _Unwind_Resume@PLT | |
ud2 | |
<core::ops::range::Range<T> as core::iter::range::RangeIteratorImpl>::spec_next: | |
sub rsp, 24 | |
mov qword ptr [rsp + 8], rdi | |
mov eax, dword ptr [rdi] | |
cmp eax, dword ptr [rdi + 4] | |
jl .LBB199_2 | |
mov dword ptr [rsp + 16], 0 | |
jmp .LBB199_3 | |
.LBB199_2: | |
mov rax, qword ptr [rsp + 8] | |
mov edi, dword ptr [rax] | |
mov dword ptr [rsp + 4], edi | |
mov esi, 1 | |
call <i32 as core::iter::range::Step>::forward_unchecked | |
mov rcx, qword ptr [rsp + 8] | |
mov edx, eax | |
mov eax, dword ptr [rsp + 4] | |
mov dword ptr [rcx], edx | |
mov dword ptr [rsp + 20], eax | |
mov dword ptr [rsp + 16], 1 | |
.LBB199_3: | |
mov eax, dword ptr [rsp + 16] | |
mov edx, dword ptr [rsp + 20] | |
add rsp, 24 | |
ret | |
<alloc::vec::Vec<T,A> as core::iter::traits::collect::IntoIterator>::into_iter: | |
mov qword ptr [rsp - 96], rdi | |
mov qword ptr [rsp - 88], rdi | |
mov rax, qword ptr [rsi] | |
mov qword ptr [rsp - 72], rax | |
mov rax, qword ptr [rsi + 8] | |
mov qword ptr [rsp - 64], rax | |
mov rax, qword ptr [rsi + 16] | |
mov qword ptr [rsp - 56], rax | |
mov rax, qword ptr [rsp - 72] | |
mov qword ptr [rsp - 80], rax | |
xor eax, eax | |
test al, 1 | |
jne .LBB200_2 | |
mov rax, qword ptr [rsp - 80] | |
imul rcx, qword ptr [rsp - 56], 24 | |
add rax, rcx | |
mov qword ptr [rsp - 48], rax | |
jmp .LBB200_3 | |
.LBB200_2: | |
mov rax, qword ptr [rsp - 80] | |
add rax, qword ptr [rsp - 56] | |
mov qword ptr [rsp - 8], rax | |
mov rax, qword ptr [rsp - 8] | |
mov qword ptr [rsp - 16], rax | |
mov rax, qword ptr [rsp - 16] | |
mov qword ptr [rsp - 24], rax | |
mov rax, qword ptr [rsp - 24] | |
mov qword ptr [rsp - 48], rax | |
.LBB200_3: | |
xor eax, eax | |
test al, 1 | |
jne .LBB200_5 | |
jmp .LBB200_4 | |
.LBB200_4: | |
mov rax, qword ptr [rsp - 64] | |
mov qword ptr [rsp - 40], rax | |
jmp .LBB200_6 | |
.LBB200_5: | |
mov qword ptr [rsp - 40], -1 | |
.LBB200_6: | |
mov rax, qword ptr [rsp - 88] | |
mov rcx, qword ptr [rsp - 96] | |
mov rsi, qword ptr [rsp - 80] | |
mov qword ptr [rsp - 32], rsi | |
mov rdi, qword ptr [rsp - 40] | |
mov rdx, qword ptr [rsp - 48] | |
mov r8, qword ptr [rsp - 32] | |
mov qword ptr [rcx], r8 | |
mov qword ptr [rcx + 8], rdi | |
mov qword ptr [rcx + 16], rsi | |
mov qword ptr [rcx + 24], rdx | |
ret | |
<alloc::vec::Vec<T> as core::iter::traits::collect::FromIterator<T>>::from_iter: | |
sub rsp, 40 | |
mov qword ptr [rsp + 8], rdi | |
mov qword ptr [rsp + 16], rdi | |
lea rdi, [rsp + 24] | |
call qword ptr [rip + <I as core::iter::traits::collect::IntoIterator>::into_iter@GOTPCREL] | |
mov rdi, qword ptr [rsp + 8] | |
lea rsi, [rsp + 24] | |
call qword ptr [rip + <alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter@GOTPCREL] | |
mov rax, qword ptr [rsp + 16] | |
add rsp, 40 | |
ret | |
<alloc::vec::Vec<T,A> as alloc::vec::spec_extend::SpecExtend<T,I>>::spec_extend: | |
push rax | |
call qword ptr [rip + alloc::vec::Vec<T,A>::extend_trusted@GOTPCREL] | |
pop rax | |
ret | |
<alloc::vec::Vec<T> as alloc::vec::spec_from_iter::SpecFromIter<T,I>>::from_iter: | |
push rax | |
mov rax, rdi | |
mov qword ptr [rsp], rax | |
call qword ptr [rip + <alloc::vec::Vec<T> as alloc::vec::spec_from_iter_nested::SpecFromIterNested<T,I>>::from_iter@GOTPCREL] | |
mov rax, qword ptr [rsp] | |
pop rcx | |
ret | |
example::Mutex<T>::new: | |
sub rsp, 72 | |
mov qword ptr [rsp + 8], rsi | |
mov qword ptr [rsp + 16], rdi | |
mov qword ptr [rsp + 24], rdi | |
mov byte ptr [rsp + 39], 0 | |
mov byte ptr [rsp + 39], 1 | |
xor edi, edi | |
call core::sync::atomic::AtomicBool::new | |
mov byte ptr [rsp + 37], al | |
jmp .LBB204_3 | |
.LBB204_1: | |
test byte ptr [rsp + 39], 1 | |
jne .LBB204_6 | |
jmp .LBB204_5 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB204_1 | |
.LBB204_3: | |
mov rax, qword ptr [rsp + 8] | |
mov cl, byte ptr [rsp + 37] | |
mov byte ptr [rsp + 63], cl | |
mov cl, byte ptr [rsp + 63] | |
mov byte ptr [rsp + 38], cl | |
mov byte ptr [rsp + 39], 0 | |
mov qword ptr [rsp + 64], rax | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rsp], rax | |
mov rax, qword ptr [rsp + 24] | |
mov rcx, qword ptr [rsp + 16] | |
mov rdx, qword ptr [rsp] | |
mov sil, byte ptr [rsp + 38] | |
mov byte ptr [rcx + 8], sil | |
mov qword ptr [rcx], rdx | |
add rsp, 72 | |
ret | |
.LBB204_5: | |
mov rdi, qword ptr [rsp + 40] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB204_6: | |
jmp .LBB204_5 | |
example::Mutex<T>::with_lock: | |
sub rsp, 56 | |
mov qword ptr [rsp + 8], rdi | |
mov byte ptr [rsp + 39], 0 | |
mov byte ptr [rsp + 38], 0 | |
mov byte ptr [rsp + 39], 1 | |
.LBB205_1: | |
mov rdi, qword ptr [rsp + 8] | |
add rdi, 8 | |
mov byte ptr [rsp + 22], 2 | |
mov byte ptr [rsp + 23], 2 | |
movzx r8d, byte ptr [rsp + 23] | |
movzx ecx, byte ptr [rsp + 22] | |
xor esi, esi | |
mov edx, 1 | |
call core::sync::atomic::AtomicBool::compare_exchange_weak | |
mov byte ptr [rsp + 6], dl | |
mov byte ptr [rsp + 7], al | |
jmp .LBB205_4 | |
.LBB205_2: | |
test byte ptr [rsp + 39], 1 | |
jne .LBB205_18 | |
jmp .LBB205_17 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB205_2 | |
.LBB205_4: | |
mov al, byte ptr [rsp + 6] | |
mov cl, byte ptr [rsp + 7] | |
mov byte ptr [rsp + 20], cl | |
mov byte ptr [rsp + 21], al | |
mov rax, qword ptr [rip + core::result::Result<T,E>::is_err@GOTPCREL] | |
lea rdi, [rsp + 20] | |
call rax | |
mov byte ptr [rsp + 5], al | |
jmp .LBB205_5 | |
.LBB205_5: | |
mov al, byte ptr [rsp + 5] | |
test al, 1 | |
jne .LBB205_1 | |
jmp .LBB205_6 | |
.LBB205_6: | |
mov byte ptr [rsp + 39], 0 | |
mov byte ptr [rsp + 38], 1 | |
jmp .LBB205_9 | |
.LBB205_7: | |
test byte ptr [rsp + 38], 1 | |
jne .LBB205_16 | |
jmp .LBB205_2 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB205_7 | |
.LBB205_9: | |
mov rax, qword ptr [rsp + 8] | |
and rax, 7 | |
cmp rax, 0 | |
sete al | |
test al, 1 | |
jne .LBB205_10 | |
jmp .LBB205_11 | |
.LBB205_10: | |
mov rax, qword ptr [rsp + 8] | |
mov qword ptr [rsp + 24], rax | |
mov byte ptr [rsp + 38], 0 | |
mov rdi, qword ptr [rsp + 24] | |
call example::main::{{closure}}::{{closure}}::{{closure}} | |
jmp .LBB205_12 | |
.LBB205_11: | |
mov rsi, qword ptr [rsp + 8] | |
lea rdx, [rip + .L__unnamed_55] | |
mov rax, qword ptr [rip + core::panicking::panic_misaligned_pointer_dereference@GOTPCREL] | |
mov edi, 8 | |
call rax | |
ud2 | |
.LBB205_12: | |
mov rdi, qword ptr [rsp + 8] | |
mov byte ptr [rsp + 38], 0 | |
add rdi, 8 | |
mov byte ptr [rsp + 37], 1 | |
movzx edx, byte ptr [rsp + 37] | |
xor esi, esi | |
call core::sync::atomic::AtomicBool::store | |
jmp .LBB205_15 | |
.LBB205_13: | |
jmp .LBB205_2 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 40], rcx | |
mov dword ptr [rsp + 48], eax | |
jmp .LBB205_13 | |
.LBB205_15: | |
add rsp, 56 | |
ret | |
.LBB205_16: | |
jmp .LBB205_2 | |
.LBB205_17: | |
mov rdi, qword ptr [rsp + 40] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB205_18: | |
jmp .LBB205_17 | |
example::Mutex<T>::with_lock: | |
sub rsp, 72 | |
mov qword ptr [rsp + 24], rdi | |
mov byte ptr [rsp + 55], 0 | |
mov byte ptr [rsp + 54], 0 | |
mov byte ptr [rsp + 55], 1 | |
.LBB206_1: | |
mov rdi, qword ptr [rsp + 24] | |
add rdi, 8 | |
mov byte ptr [rsp + 38], 2 | |
mov byte ptr [rsp + 39], 2 | |
movzx r8d, byte ptr [rsp + 39] | |
movzx ecx, byte ptr [rsp + 38] | |
xor esi, esi | |
mov edx, 1 | |
call core::sync::atomic::AtomicBool::compare_exchange_weak | |
mov byte ptr [rsp + 22], dl | |
mov byte ptr [rsp + 23], al | |
jmp .LBB206_4 | |
.LBB206_2: | |
test byte ptr [rsp + 55], 1 | |
jne .LBB206_18 | |
jmp .LBB206_17 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 56], rcx | |
mov dword ptr [rsp + 64], eax | |
jmp .LBB206_2 | |
.LBB206_4: | |
mov al, byte ptr [rsp + 22] | |
mov cl, byte ptr [rsp + 23] | |
mov byte ptr [rsp + 36], cl | |
mov byte ptr [rsp + 37], al | |
mov rax, qword ptr [rip + core::result::Result<T,E>::is_err@GOTPCREL] | |
lea rdi, [rsp + 36] | |
call rax | |
mov byte ptr [rsp + 21], al | |
jmp .LBB206_5 | |
.LBB206_5: | |
mov al, byte ptr [rsp + 21] | |
test al, 1 | |
jne .LBB206_1 | |
jmp .LBB206_6 | |
.LBB206_6: | |
mov byte ptr [rsp + 55], 0 | |
mov byte ptr [rsp + 54], 1 | |
jmp .LBB206_9 | |
.LBB206_7: | |
test byte ptr [rsp + 54], 1 | |
jne .LBB206_16 | |
jmp .LBB206_2 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 56], rcx | |
mov dword ptr [rsp + 64], eax | |
jmp .LBB206_7 | |
.LBB206_9: | |
mov rax, qword ptr [rsp + 24] | |
and rax, 7 | |
cmp rax, 0 | |
sete al | |
test al, 1 | |
jne .LBB206_10 | |
jmp .LBB206_11 | |
.LBB206_10: | |
mov rax, qword ptr [rsp + 24] | |
mov qword ptr [rsp + 40], rax | |
mov byte ptr [rsp + 54], 0 | |
mov rdi, qword ptr [rsp + 40] | |
call example::main::{{closure}} | |
mov qword ptr [rsp + 8], rax | |
jmp .LBB206_12 | |
.LBB206_11: | |
mov rsi, qword ptr [rsp + 24] | |
lea rdx, [rip + .L__unnamed_55] | |
mov rax, qword ptr [rip + core::panicking::panic_misaligned_pointer_dereference@GOTPCREL] | |
mov edi, 8 | |
call rax | |
ud2 | |
.LBB206_12: | |
mov rdi, qword ptr [rsp + 24] | |
mov byte ptr [rsp + 54], 0 | |
add rdi, 8 | |
mov byte ptr [rsp + 53], 1 | |
movzx edx, byte ptr [rsp + 53] | |
xor esi, esi | |
call core::sync::atomic::AtomicBool::store | |
jmp .LBB206_15 | |
.LBB206_13: | |
jmp .LBB206_2 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 56], rcx | |
mov dword ptr [rsp + 64], eax | |
jmp .LBB206_13 | |
.LBB206_15: | |
mov rax, qword ptr [rsp + 8] | |
add rsp, 72 | |
ret | |
.LBB206_16: | |
jmp .LBB206_2 | |
.LBB206_17: | |
mov rdi, qword ptr [rsp + 56] | |
call _Unwind_Resume@PLT | |
ud2 | |
.LBB206_18: | |
jmp .LBB206_17 | |
example::main: | |
sub rsp, 376 | |
mov rax, qword ptr [rip + example::Mutex<T>::new@GOTPCREL] | |
xor ecx, ecx | |
mov esi, ecx | |
lea rdi, [rsp + 56] | |
call rax | |
mov edi, 16 | |
mov esi, 8 | |
call alloc::alloc::exchange_malloc | |
mov qword ptr [rsp + 48], rax | |
jmp .LBB207_2 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 360], rcx | |
mov dword ptr [rsp + 368], eax | |
mov rax, qword ptr [rsp + 360] | |
mov qword ptr [rsp + 40], rax | |
jmp .LBB207_17 | |
.LBB207_2: | |
mov rdi, qword ptr [rsp + 48] | |
mov rax, qword ptr [rsp + 56] | |
mov qword ptr [rdi], rax | |
mov rax, qword ptr [rsp + 64] | |
mov qword ptr [rdi + 8], rax | |
call qword ptr [rip + alloc::boxed::Box<T,A>::leak@GOTPCREL] | |
mov qword ptr [rsp + 32], rax | |
mov dword ptr [rsp + 112], 0 | |
mov dword ptr [rsp + 116], 100 | |
mov edi, dword ptr [rsp + 112] | |
mov esi, dword ptr [rsp + 116] | |
call qword ptr [rip + <I as core::iter::traits::collect::IntoIterator>::into_iter@GOTPCREL] | |
mov esi, eax | |
mov rax, qword ptr [rsp + 32] | |
mov qword ptr [rsp + 120], rax | |
mov rcx, qword ptr [rsp + 120] | |
lea rdi, [rsp + 96] | |
call qword ptr [rip + core::iter::traits::iterator::Iterator::map@GOTPCREL] | |
lea rdi, [rsp + 72] | |
lea rsi, [rsp + 96] | |
call qword ptr [rip + core::iter::traits::iterator::Iterator::collect@GOTPCREL] | |
mov rax, qword ptr [rsp + 72] | |
mov qword ptr [rsp + 160], rax | |
mov rax, qword ptr [rsp + 80] | |
mov qword ptr [rsp + 168], rax | |
mov rax, qword ptr [rsp + 88] | |
mov qword ptr [rsp + 176], rax | |
lea rdi, [rsp + 128] | |
lea rsi, [rsp + 160] | |
call qword ptr [rip + <alloc::vec::Vec<T,A> as core::iter::traits::collect::IntoIterator>::into_iter@GOTPCREL] | |
mov rax, qword ptr [rsp + 128] | |
mov qword ptr [rsp + 184], rax | |
mov rax, qword ptr [rsp + 136] | |
mov qword ptr [rsp + 192], rax | |
mov rax, qword ptr [rsp + 144] | |
mov qword ptr [rsp + 200], rax | |
mov rax, qword ptr [rsp + 152] | |
mov qword ptr [rsp + 208], rax | |
.LBB207_3: | |
mov rax, qword ptr [rip + <alloc::vec::into_iter::IntoIter<T,A> as core::iter::traits::iterator::Iterator>::next@GOTPCREL] | |
lea rdi, [rsp + 216] | |
lea rsi, [rsp + 184] | |
call rax | |
jmp .LBB207_6 | |
.LBB207_4: | |
mov rax, qword ptr [rip + core::ptr::drop_in_place<alloc::vec::into_iter::IntoIter<std::thread::JoinHandle<()>>>@GOTPCREL] | |
lea rdi, [rsp + 184] | |
call rax | |
jmp .LBB207_16 | |
mov rcx, rax | |
mov eax, edx | |
mov qword ptr [rsp + 344], rcx | |
mov dword ptr [rsp + 352], eax | |
jmp .LBB207_4 | |
.LBB207_6: | |
mov rdx, qword ptr [rsp + 216] | |
mov eax, 1 | |
xor ecx, ecx | |
cmp rdx, 0 | |
cmove rax, rcx | |
cmp rax, 0 | |
jne .LBB207_8 | |
lea rdi, [rsp + 184] | |
call qword ptr [rip + core::ptr::drop_in_place<alloc::vec::into_iter::IntoIter<std::thread::JoinHandle<()>>>@GOTPCREL] | |
mov rdi, qword ptr [rsp + 32] | |
call example::Mutex<T>::with_lock | |
mov qword ptr [rsp + 280], rax | |
mov eax, 100 | |
mov ecx, 10000 | |
mul rcx | |
seto al | |
test al, 1 | |
jne .LBB207_10 | |
jmp .LBB207_9 | |
.LBB207_8: | |
mov rax, qword ptr [rsp + 232] | |
mov qword ptr [rsp + 256], rax | |
movups xmm0, xmmword ptr [rsp + 216] | |
movaps xmmword ptr [rsp + 240], xmm0 | |
mov rax, qword ptr [rip + std::thread::JoinHandle<T>::join@GOTPCREL] | |
lea rdi, [rsp + 240] | |
call rax | |
mov qword ptr [rsp + 16], rdx | |
mov qword ptr [rsp + 24], rax | |
jmp .LBB207_13 | |
.LBB207_9: | |
lea rax, [rsp + 280] | |
mov qword ptr [rsp + 264], rax | |
lea rax, [rip + .L__unnamed_56] | |
mov qword ptr [rsp + 272], rax | |
mov rax, qword ptr [rsp + 264] | |
mov qword ptr [rsp], rax | |
mov rcx, qword ptr [rsp + 272] | |
mov qword ptr [rsp + 8], rcx | |
mov rax, qword ptr [rax] | |
cmp rax, qword ptr [rcx] | |
sete al | |
xor al, -1 | |
test al, 1 | |
jne .LBB207_12 | |
jmp .LBB207_11 | |
.LBB207_10: | |
lea rdi, [rip + str.2] | |
lea rdx, [rip + .L__unnamed_57] | |
mov rax, qword ptr [rip + core::panicking::panic@GOTPCREL] | |
mov esi, 33 | |
call rax | |
ud2 | |
.LBB207_11: | |
add rsp, 376 | |
ret | |
.LBB207_12: | |
mov rdx, qword ptr [rsp + 8] | |
mov rsi, qword ptr [rsp] | |
mov byte ptr [rsp + 295], 0 | |
mov qword ptr [rsp + 296], 0 | |
movzx edi, byte ptr [rsp + 295] | |
lea r8, [rip + .L__unnamed_58] | |
mov rax, qword ptr [rip + core::panicking::assert_failed@GOTPCREL] | |
lea rcx, [rsp + 296] | |
call rax | |
ud2 | |
.LBB207_13: | |
mov rsi, qword ptr [rsp + 16] | |
mov rdi, qword ptr [rsp + 24] | |
lea rdx, [rip + .L__unnamed_59] | |
mov rax, qword ptr [rip + core::result::Result<T,E>::unwrap@GOTPCREL] | |
call rax | |
jmp .LBB207_14 | |
.LBB207_14: | |
jmp .LBB207_3 | |
mov rax, qword ptr [rip + core::panicking::panic_cannot_unwind@GOTPCREL] | |
call rax | |
ud2 | |
.LBB207_16: | |
mov rax, qword ptr [rsp + 344] | |
mov qword ptr [rsp + 40], rax | |
.LBB207_17: | |
mov rdi, qword ptr [rsp + 40] | |
call _Unwind_Resume@PLT | |
ud2 | |
example::main::{{closure}}: | |
sub rsp, 24 | |
mov rax, rdi | |
mov qword ptr [rsp + 8], rax | |
mov rax, qword ptr [rsi] | |
mov qword ptr [rsp + 16], rax | |
mov rsi, qword ptr [rsp + 16] | |
call qword ptr [rip + std::thread::spawn@GOTPCREL] | |
mov rax, qword ptr [rsp + 8] | |
add rsp, 24 | |
ret | |
example::main::{{closure}}::{{closure}}: | |
sub rsp, 40 | |
mov qword ptr [rsp + 8], rdi | |
mov dword ptr [rsp + 16], 0 | |
mov dword ptr [rsp + 20], 10000 | |
mov edi, dword ptr [rsp + 16] | |
mov esi, dword ptr [rsp + 20] | |
call qword ptr [rip + <I as core::iter::traits::collect::IntoIterator>::into_iter@GOTPCREL] | |
mov dword ptr [rsp + 24], eax | |
mov dword ptr [rsp + 28], edx | |
.LBB209_1: | |
mov rax, qword ptr [rip + core::iter::range::<impl core::iter::traits::iterator::Iterator for core::ops::range::Range<A>>::next@GOTPCREL] | |
lea rdi, [rsp + 24] | |
call rax | |
mov dword ptr [rsp + 36], edx | |
mov dword ptr [rsp + 32], eax | |
mov eax, dword ptr [rsp + 32] | |
cmp rax, 0 | |
jne .LBB209_3 | |
add rsp, 40 | |
ret | |
.LBB209_3: | |
mov rdi, qword ptr [rsp + 8] | |
call example::Mutex<T>::with_lock | |
jmp .LBB209_1 | |
example::main::{{closure}}::{{closure}}::{{closure}}: | |
sub rsp, 24 | |
mov qword ptr [rsp + 8], rdi | |
mov rax, qword ptr [rdi] | |
add rax, 1 | |
mov qword ptr [rsp + 16], rax | |
setb al | |
test al, 1 | |
jne .LBB210_2 | |
mov rax, qword ptr [rsp + 8] | |
mov rcx, qword ptr [rsp + 16] | |
mov qword ptr [rax], rcx | |
add rsp, 24 | |
ret | |
.LBB210_2: | |
lea rdi, [rip + str.3] | |
lea rdx, [rip + .L__unnamed_60] | |
mov rax, qword ptr [rip + core::panicking::panic@GOTPCREL] | |
mov esi, 28 | |
call rax | |
ud2 | |
example::main::{{closure}}: | |
mov rax, qword ptr [rdi] | |
ret | |
__rust_try: | |
sub rsp, 24 | |
mov qword ptr [rsp], rsi | |
mov rax, rdi | |
mov rdi, qword ptr [rsp] | |
mov qword ptr [rsp + 8], rdi | |
mov qword ptr [rsp + 16], rdx | |
call rax | |
jmp .LBB212_1 | |
.LBB212_1: | |
xor eax, eax | |
add rsp, 24 | |
ret | |
mov rdi, qword ptr [rsp + 8] | |
mov rsi, rax | |
mov rax, qword ptr [rsp + 16] | |
call rax | |
mov eax, 1 | |
add rsp, 24 | |
ret | |
str.0: | |
.ascii "attempted to zero-initialize type `std::thread::JoinHandle<()>`, which is invalid" | |
.L__unnamed_1: | |
.ascii "assertion failed: 0 < pointee_size && pointee_size <= isize::MAX as usize" | |
.L__unnamed_61: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/ptr/const_ptr.rs" | |
.L__unnamed_2: | |
.quad .L__unnamed_61 | |
.asciz "Q\000\000\000\000\000\000\000\037\003\000\000\t\000\000" | |
.L__unnamed_62: | |
.ascii "capacity overflow" | |
.L__unnamed_3: | |
.quad .L__unnamed_62 | |
.asciz "\021\000\000\000\000\000\000" | |
.L__unnamed_4: | |
.L__unnamed_63: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/alloc/src/vec/spec_from_iter_nested.rs" | |
.L__unnamed_5: | |
.quad .L__unnamed_63 | |
.asciz "^\000\000\000\000\000\000\000;\000\000\000\022\000\000" | |
.L__unnamed_64: | |
.ascii "invalid args" | |
.L__unnamed_6: | |
.quad .L__unnamed_64 | |
.asciz "\f\000\000\000\000\000\000" | |
.L__unnamed_65: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/fmt/mod.rs" | |
.L__unnamed_7: | |
.quad .L__unnamed_65 | |
.asciz "K\000\000\000\000\000\000\000+\001\000\000\r\000\000" | |
.L__unnamed_66: | |
.ascii "failed to write whole buffer" | |
.L__unnamed_8: | |
.quad .L__unnamed_66 | |
.ascii "\034\000\000\000\000\000\000\000\027" | |
.zero 7 | |
.L__unnamed_67: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/std/src/io/mod.rs" | |
.L__unnamed_9: | |
.quad .L__unnamed_67 | |
.asciz "I\000\000\000\000\000\000\000-\006\000\000$\000\000" | |
.L__unnamed_10: | |
.byte 35 | |
.L__unnamed_11: | |
.quad core::ptr::drop_in_place<std::io::Write::write_fmt::Adapter<std::sys::unix::stdio::Stderr>> | |
.asciz "\020\000\000\000\000\000\000\000\b\000\000\000\000\000\000" | |
.quad <std::io::Write::write_fmt::Adapter<T> as core::fmt::Write>::write_str | |
.quad core::fmt::Write::write_char | |
.quad core::fmt::Write::write_fmt | |
.L__unnamed_68: | |
.ascii "formatter error" | |
.L__unnamed_12: | |
.quad .L__unnamed_68 | |
.ascii "\017\000\000\000\000\000\000\000(" | |
.zero 7 | |
.L__unnamed_13: | |
.ascii "internal error: entered unreachable code" | |
.L__unnamed_69: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/std/src/io/error/repr_bitpacked.rs" | |
.L__unnamed_14: | |
.quad .L__unnamed_69 | |
.asciz "Z\000\000\000\000\000\000\000\030\001\000\000\r\000\000" | |
.L__unnamed_15: | |
.ascii "called `Option::unwrap()` on a `None` value" | |
.L__unnamed_70: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/std/src/thread/mod.rs" | |
.L__unnamed_16: | |
.quad .L__unnamed_70 | |
.asciz "M\000\000\000\000\000\000\000\237\005\000\000(\000\000" | |
.L__unnamed_17: | |
.quad .L__unnamed_70 | |
.asciz "M\000\000\000\000\000\000\000\237\005\000\000I\000\000" | |
.L__unnamed_18: | |
.ascii "failed to spawn thread" | |
.L__unnamed_19: | |
.quad .L__unnamed_70 | |
.asciz "M\000\000\000\000\000\000\000\256\002\000\000\035\000\000" | |
.L__unnamed_20: | |
.ascii "thread name may not contain interior null bytes" | |
.L__unnamed_21: | |
.quad .L__unnamed_70 | |
.asciz "M\000\000\000\000\000\000\000\334\001\000\000 \000\000" | |
.L__unnamed_22: | |
.quad core::ptr::drop_in_place<std::thread::Builder::spawn_unchecked_<example::main::{{closure}}::{{closure}},()>::{{closure}}> | |
.asciz " \000\000\000\000\000\000\000\b\000\000\000\000\000\000" | |
.quad core::ops::function::FnOnce::call_once{{vtable.shim}} | |
.L__unnamed_23: | |
.quad core::ptr::drop_in_place<&mut std::io::Write::write_fmt::Adapter<std::sys::unix::stdio::Stderr>> | |
.asciz "\b\000\000\000\000\000\000\000\b\000\000\000\000\000\000" | |
.quad <&mut W as core::fmt::Write>::write_str | |
.quad <&mut W as core::fmt::Write>::write_char | |
.quad <&mut W as core::fmt::Write>::write_fmt | |
.L__unnamed_24: | |
.quad .L__unnamed_65 | |
.asciz "K\000\000\000\000\000\000\0005\001\000\000\r\000\000" | |
.L__unnamed_71: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/char/methods.rs" | |
.L__unnamed_27: | |
.quad .L__unnamed_71 | |
.asciz "P\000\000\000\000\000\000\000\321\006\000\000\r\000\000" | |
.L__unnamed_72: | |
.ascii "encode_utf8: need " | |
.L__unnamed_73: | |
.ascii " bytes to encode U+" | |
.L__unnamed_74: | |
.ascii ", but the buffer has " | |
.L__unnamed_25: | |
.quad .L__unnamed_72 | |
.asciz "\022\000\000\000\000\000\000" | |
.quad .L__unnamed_73 | |
.asciz "\023\000\000\000\000\000\000" | |
.quad .L__unnamed_74 | |
.asciz "\025\000\000\000\000\000\000" | |
.L__unnamed_26: | |
.quad .L__unnamed_71 | |
.asciz "P\000\000\000\000\000\000\000\312\006\000\000\016\000\000" | |
.L__unnamed_75: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/iter/traits/exact_size.rs" | |
.L__unnamed_28: | |
.quad .L__unnamed_75 | |
.asciz "Z\000\000\000\000\000\000\000z\000\000\000\t\000\000" | |
.L__unnamed_76: | |
.ascii "there is no such thing as a release load" | |
.L__unnamed_29: | |
.quad .L__unnamed_76 | |
.asciz "(\000\000\000\000\000\000" | |
.L__unnamed_77: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/sync/atomic.rs" | |
.L__unnamed_30: | |
.quad .L__unnamed_77 | |
.asciz "O\000\000\000\000\000\000\000s\f\000\000\030\000\000" | |
.L__unnamed_78: | |
.ascii "there is no such thing as an acquire-release load" | |
.L__unnamed_31: | |
.quad .L__unnamed_78 | |
.asciz "1\000\000\000\000\000\000" | |
.L__unnamed_32: | |
.quad .L__unnamed_77 | |
.asciz "O\000\000\000\000\000\000\000t\f\000\000\027\000\000" | |
.L__unnamed_79: | |
.ascii "there is no such thing as an acquire store" | |
.L__unnamed_33: | |
.quad .L__unnamed_79 | |
.asciz "*\000\000\000\000\000\000" | |
.L__unnamed_34: | |
.quad .L__unnamed_77 | |
.asciz "O\000\000\000\000\000\000\000d\f\000\000\030\000\000" | |
.L__unnamed_80: | |
.ascii "there is no such thing as an acquire-release store" | |
.L__unnamed_35: | |
.quad .L__unnamed_80 | |
.asciz "2\000\000\000\000\000\000" | |
.L__unnamed_36: | |
.quad .L__unnamed_77 | |
.asciz "O\000\000\000\000\000\000\000e\f\000\000\027\000\000" | |
.L__unnamed_81: | |
.ascii "there is no such thing as a release failure ordering" | |
.L__unnamed_37: | |
.quad .L__unnamed_81 | |
.asciz "4\000\000\000\000\000\000" | |
.L__unnamed_38: | |
.quad .L__unnamed_77 | |
.asciz "O\000\000\000\000\000\000\000\310\f\000\000\035\000\000" | |
.L__unnamed_82: | |
.ascii "there is no such thing as an acquire-release failure ordering" | |
.L__unnamed_39: | |
.quad .L__unnamed_82 | |
.asciz "=\000\000\000\000\000\000" | |
.L__unnamed_40: | |
.quad .L__unnamed_77 | |
.asciz "O\000\000\000\000\000\000\000\307\f\000\000\034\000\000" | |
.L__unnamed_41: | |
.quad .L__unnamed_77 | |
.asciz "O\000\000\000\000\000\000\000\353\f\000\000\035\000\000" | |
.L__unnamed_42: | |
.quad .L__unnamed_77 | |
.asciz "O\000\000\000\000\000\000\000\352\f\000\000\034\000\000" | |
.L__unnamed_83: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/alloc/layout.rs" | |
.L__unnamed_43: | |
.quad .L__unnamed_83 | |
.asciz "P\000\000\000\000\000\000\000\277\001\000\000)\000\000" | |
str.1: | |
.ascii "attempt to divide by zero" | |
.L__unnamed_84: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/core/src/slice/memchr.rs" | |
.L__unnamed_44: | |
.quad .L__unnamed_84 | |
.asciz "P\000\000\000\000\000\000\0009\000\000\000\f\000\000" | |
.L__unnamed_45: | |
.quad core::ptr::drop_in_place<alloc::ffi::c_str::NulError> | |
.asciz " \000\000\000\000\000\000\000\b\000\000\000\000\000\000" | |
.quad <alloc::ffi::c_str::NulError as core::fmt::Debug>::fmt | |
.L__unnamed_46: | |
.quad core::ptr::drop_in_place<std::io::error::Error> | |
.asciz "\b\000\000\000\000\000\000\000\b\000\000\000\000\000\000" | |
.quad <std::io::error::Error as core::fmt::Debug>::fmt | |
.L__unnamed_47: | |
.ascii "called `Result::unwrap()` on an `Err` value" | |
.L__unnamed_48: | |
.quad core::ptr::drop_in_place<alloc::boxed::Box<dyn core::any::Any+core::marker::Send>> | |
.asciz "\020\000\000\000\000\000\000\000\b\000\000\000\000\000\000" | |
.quad <alloc::boxed::Box<T,A> as core::fmt::Debug>::fmt | |
.L__unnamed_49: | |
.quad core::ptr::drop_in_place<&core::option::Option<usize>> | |
.asciz "\b\000\000\000\000\000\000\000\b\000\000\000\000\000\000" | |
.quad <&T as core::fmt::Debug>::fmt | |
.L__unnamed_50: | |
.quad core::ptr::drop_in_place<&usize> | |
.asciz "\b\000\000\000\000\000\000\000\b\000\000\000\000\000\000" | |
.quad <&T as core::fmt::Debug>::fmt | |
.L__unnamed_85: | |
.ascii "/rustc/cc66ad468955717ab92600c770da8c1601a4ff33/library/alloc/src/vec/mod.rs" | |
.L__unnamed_51: | |
.quad .L__unnamed_85 | |
.asciz "L\000\000\000\000\000\000\000\032\013\000\000\r\000\000" | |
.L__unnamed_52: | |
.ascii "None" | |
.L__unnamed_53: | |
.ascii "Some" | |
.L__unnamed_86: | |
.ascii "fatal runtime error: thread result panicked on drop\n" | |
.L__unnamed_54: | |
.quad .L__unnamed_86 | |
.asciz "4\000\000\000\000\000\000" | |
.L__unnamed_87: | |
.ascii "/app/example.rs" | |
.L__unnamed_55: | |
.quad .L__unnamed_87 | |
.asciz "\017\000\000\000\000\000\000\000\036\000\000\000$\000\000" | |
.L__unnamed_57: | |
.quad .L__unnamed_87 | |
.asciz "\017\000\000\000\000\000\000\0005\000\000\000%\000\000" | |
str.2: | |
.ascii "attempt to multiply with overflow" | |
.L__unnamed_56: | |
.asciz "@B\017\000\000\000\000" | |
.L__unnamed_58: | |
.quad .L__unnamed_87 | |
.asciz "\017\000\000\000\000\000\000\0005\000\000\000\005\000\000" | |
.L__unnamed_59: | |
.quad .L__unnamed_87 | |
.asciz "\017\000\000\000\000\000\000\0002\000\000\000\022\000\000" | |
.L__unnamed_60: | |
.quad .L__unnamed_87 | |
.asciz "\017\000\000\000\000\000\000\000,\000\000\000%\000\000" | |
str.3: | |
.ascii "attempt to add with overflow" | |
DW.ref.rust_eh_personality: | |
.quad rust_eh_personality |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment