Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- operator new(unsigned long, void*):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -16(%rbp), %rax
- popq %rbp
- ret
- __gnu_cxx::__ops::__iter_less_iter():
- pushq %rbp
- movq %rsp, %rbp
- popq %rbp
- ret
- __gnu_cxx::__ops::_Iter_less_val::_Iter_less_val(__gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- nop
- popq %rbp
- ret
- __gnu_cxx::__ops::__val_comp_iter(__gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- popq %rbp
- ret
- std::__lg(long):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- bsrq %rax, %rax
- xorq $63, %rax
- cltq
- movl $63, %edx
- subq %rax, %rdx
- movq %rdx, %rax
- popq %rbp
- ret
- std::chrono::duration<long, std::ratio<1l, 1000000000l> >::count() const:
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq (%rax), %rax
- popq %rbp
- ret
- GetTimeMs64():
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- leaq -32(%rbp), %rax
- movl $0, %esi
- movq %rax, %rdi
- call gettimeofday
- movq -24(%rbp), %rax
- movq %rax, -8(%rbp)
- movq -8(%rbp), %rax
- shrq $3, %rax
- movabsq $2361183241434822607, %rdx
- mulq %rdx
- movq %rdx, %rax
- shrq $4, %rax
- movq %rax, -8(%rbp)
- movq -32(%rbp), %rax
- imulq $1000, %rax, %rax
- addq %rax, -8(%rbp)
- movq -8(%rbp), %rax
- leave
- ret
- counter_vect:
- .zero 24
- __gnu_cxx::__promote_2<int, int, __gnu_cxx::__promote<int, std::__is_integer<int>::__value>::__type, __gnu_cxx::__promote<int, std::__is_integer<int>::__value>::__type>::__type std::pow<int, int>(int, int):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movl %edi, -4(%rbp)
- movl %esi, -8(%rbp)
- cvtsi2sd -8(%rbp), %xmm1
- cvtsi2sd -4(%rbp), %xmm0
- call pow
- movq %xmm0, %rax
- movq %rax, -16(%rbp)
- movsd -16(%rbp), %xmm0
- leave
- ret
- .LC2:
- .string "Time to sort my sort: "
- .LC4:
- .string "Time to sort std sort: "
- .LC5:
- .string "Time to sort spread sort: "
- .LC6:
- .string "pause"
- main:
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $184, %rsp
- call std::chrono::_V2::system_clock::now()
- movq %rax, -64(%rbp)
- leaq -64(%rbp), %rax
- movq %rax, %rdi
- call std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >::time_since_epoch() const
- movq %rax, -72(%rbp)
- leaq -72(%rbp), %rax
- movq %rax, %rdi
- call std::enable_if<std::chrono::__is_duration<std::chrono::duration<long, std::ratio<1l, 1000l> > >::value, std::chrono::duration<long, std::ratio<1l, 1000l> > >::type std::chrono::duration_cast<std::chrono::duration<long, std::ratio<1l, 1000l> >, long, std::ratio<1l, 1000000000l> >(std::chrono::duration<long, std::ratio<1l, 1000000000l> > const&)
- movq %rax, -80(%rbp)
- leaq -80(%rbp), %rax
- movq %rax, %rdi
- call std::chrono::duration<long, std::ratio<1l, 1000l> >::count() const
- movq %rax, %rdx
- leaq -88(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>::linear_congruential_engine(unsigned long)
- movl $15, %esi
- movl $2, %edi
- call __gnu_cxx::__promote_2<int, int, __gnu_cxx::__promote<int, std::__is_integer<int>::__value>::__type, __gnu_cxx::__promote<int, std::__is_integer<int>::__value>::__type>::__type std::pow<int, int>(int, int)
- cvttsd2si %xmm0, %edx
- leaq -96(%rbp), %rax
- movl $1, %esi
- movq %rax, %rdi
- call std::uniform_int_distribution<int>::uniform_int_distribution(int, int)
- leaq -128(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::vector()
- movl $15, %esi
- movl $2, %edi
- call __gnu_cxx::__promote_2<int, int, __gnu_cxx::__promote<int, std::__is_integer<int>::__value>::__type, __gnu_cxx::__promote<int, std::__is_integer<int>::__value>::__type>::__type std::pow<int, int>(int, int)
- movapd %xmm0, %xmm1
- movsd .LC0(%rip), %xmm0
- addsd %xmm1, %xmm0
- ucomisd .LC1(%rip), %xmm0
- jnb .L17
- cvttsd2siq %xmm0, %rax
- jmp .L18
- .L17:
- movsd .LC1(%rip), %xmm1
- subsd %xmm1, %xmm0
- cvttsd2siq %xmm0, %rax
- movabsq $-9223372036854775808, %rdx
- xorq %rdx, %rax
- .L18:
- movq %rax, %rsi
- movl $counter_vect, %edi
- call std::vector<int, std::allocator<int> >::resize(unsigned long)
- movq $0, -24(%rbp)
- .L20:
- cmpq $49999, -24(%rbp)
- ja .L19
- leaq -88(%rbp), %rdx
- leaq -96(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call int std::uniform_int_distribution<int>::operator()<std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul> >(std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>&)
- movl %eax, -52(%rbp)
- leaq -52(%rbp), %rdx
- leaq -128(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::push_back(int&&)
- addq $1, -24(%rbp)
- jmp .L20
- .L19:
- leaq -160(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::vector()
- movq $0, -32(%rbp)
- .L22:
- leaq -128(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- cmpq %rax, -32(%rbp)
- setb %al
- testb %al, %al
- je .L21
- movq -32(%rbp), %rdx
- leaq -128(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::operator[](unsigned long)
- movq %rax, %rdx
- leaq -160(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::push_back(int const&)
- addq $1, -32(%rbp)
- jmp .L22
- .L21:
- leaq -192(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::vector()
- movq $0, -40(%rbp)
- .L24:
- leaq -128(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- cmpq %rax, -40(%rbp)
- setb %al
- testb %al, %al
- je .L23
- movq -40(%rbp), %rdx
- leaq -128(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::operator[](unsigned long)
- movq %rax, %rdx
- leaq -192(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::push_back(int const&)
- addq $1, -40(%rbp)
- jmp .L24
- .L23:
- call GetTimeMs64()
- movq %rax, -48(%rbp)
- leaq -128(%rbp), %rax
- movq %rax, %rdi
- call my_sort(std::vector<int, std::allocator<int> >&)
- movl $.LC2, %esi
- movl std::cout, %edi
- call std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
- movq %rax, %rbx
- call GetTimeMs64()
- subq -48(%rbp), %rax
- testq %rax, %rax
- js .L25
- cvtsi2sdq %rax, %xmm0
- jmp .L26
- .L25:
- movq %rax, %rdx
- shrq %rdx
- andl $1, %eax
- orq %rax, %rdx
- cvtsi2sdq %rdx, %xmm0
- addsd %xmm0, %xmm0
- .L26:
- movsd .LC3(%rip), %xmm1
- divsd %xmm1, %xmm0
- movq %rbx, %rdi
- call std::basic_ostream<char, std::char_traits<char> >::operator<<(double)
- movl std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&), %esi
- movq %rax, %rdi
- call std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))
- call GetTimeMs64()
- movq %rax, -48(%rbp)
- leaq -160(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::end()
- movq %rax, %rbx
- leaq -160(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::begin()
- movq %rbx, %rsi
- movq %rax, %rdi
- call void std::sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- movl $.LC4, %esi
- movl std::cout, %edi
- call std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
- movq %rax, %rbx
- call GetTimeMs64()
- subq -48(%rbp), %rax
- testq %rax, %rax
- js .L27
- cvtsi2sdq %rax, %xmm0
- jmp .L28
- .L27:
- movq %rax, %rdx
- shrq %rdx
- andl $1, %eax
- orq %rax, %rdx
- cvtsi2sdq %rdx, %xmm0
- addsd %xmm0, %xmm0
- .L28:
- movsd .LC3(%rip), %xmm1
- divsd %xmm1, %xmm0
- movq %rbx, %rdi
- call std::basic_ostream<char, std::char_traits<char> >::operator<<(double)
- movl std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&), %esi
- movq %rax, %rdi
- call std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))
- call GetTimeMs64()
- movq %rax, -48(%rbp)
- movl $.LC5, %esi
- movl std::cout, %edi
- call std::basic_ostream<char, std::char_traits<char> >& std::operator<< <std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&, char const*)
- movq %rax, %rbx
- call GetTimeMs64()
- subq -48(%rbp), %rax
- testq %rax, %rax
- js .L29
- cvtsi2sdq %rax, %xmm0
- jmp .L30
- .L29:
- movq %rax, %rdx
- shrq %rdx
- andl $1, %eax
- orq %rax, %rdx
- cvtsi2sdq %rdx, %xmm0
- addsd %xmm0, %xmm0
- .L30:
- movsd .LC3(%rip), %xmm1
- divsd %xmm1, %xmm0
- movq %rbx, %rdi
- call std::basic_ostream<char, std::char_traits<char> >::operator<<(double)
- movl std::basic_ostream<char, std::char_traits<char> >& std::endl<char, std::char_traits<char> >(std::basic_ostream<char, std::char_traits<char> >&), %esi
- movq %rax, %rdi
- call std::basic_ostream<char, std::char_traits<char> >::operator<<(std::basic_ostream<char, std::char_traits<char> >& (*)(std::basic_ostream<char, std::char_traits<char> >&))
- movl $.LC6, %edi
- call system
- movl $0, %ebx
- leaq -192(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::~vector()
- leaq -160(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::~vector()
- leaq -128(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::~vector()
- movl %ebx, %eax
- jmp .L40
- movq %rax, %rdi
- call _Unwind_Resume
- movq %rax, %rbx
- leaq -192(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::~vector()
- jmp .L34
- movq %rax, %rbx
- .L34:
- leaq -160(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::~vector()
- jmp .L35
- movq %rax, %rbx
- .L35:
- leaq -128(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::~vector()
- movq %rbx, %rax
- movq %rax, %rdi
- call _Unwind_Resume
- .L40:
- addq $184, %rsp
- popq %rbx
- popq %rbp
- ret
- my_sort(std::vector<int, std::allocator<int> >&):
- pushq %rbp
- movq %rsp, %rbp
- subq $48, %rsp
- movq %rdi, -40(%rbp)
- movq $0, -8(%rbp)
- .L43:
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- cmpq %rax, -8(%rbp)
- setb %al
- testb %al, %al
- je .L42
- movq -8(%rbp), %rdx
- movq -40(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::operator[](unsigned long)
- movl (%rax), %eax
- cltq
- movq %rax, %rsi
- movl $counter_vect, %edi
- call std::vector<int, std::allocator<int> >::operator[](unsigned long)
- movl (%rax), %edx
- addl $1, %edx
- movl %edx, (%rax)
- addq $1, -8(%rbp)
- jmp .L43
- .L42:
- movl $0, -12(%rbp)
- movq $0, -24(%rbp)
- .L47:
- movl $counter_vect, %edi
- call std::vector<int, std::allocator<int> >::size() const
- cmpq %rax, -24(%rbp)
- setb %al
- testb %al, %al
- je .L48
- movq $0, -32(%rbp)
- .L46:
- movq -24(%rbp), %rax
- movq %rax, %rsi
- movl $counter_vect, %edi
- call std::vector<int, std::allocator<int> >::operator[](unsigned long)
- movl (%rax), %eax
- cltq
- cmpq %rax, -32(%rbp)
- setb %al
- testb %al, %al
- je .L45
- movl -12(%rbp), %eax
- movslq %eax, %rdx
- movq -40(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::operator[](unsigned long)
- movq %rax, %rdx
- movq -24(%rbp), %rax
- movl %eax, (%rdx)
- addl $1, -12(%rbp)
- addq $1, -32(%rbp)
- jmp .L46
- .L45:
- addq $1, -24(%rbp)
- jmp .L47
- .L48:
- nop
- leave
- ret
- sort_vect(std::vector<int, std::allocator<int> >&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $40, %rsp
- movq %rdi, -40(%rbp)
- movl $1, -20(%rbp)
- movl $0, -24(%rbp)
- .L55:
- movl -20(%rbp), %eax
- movslq %eax, %rbx
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- cmpq %rax, %rbx
- setb %al
- testb %al, %al
- je .L56
- movl -20(%rbp), %eax
- movl %eax, -24(%rbp)
- .L54:
- cmpl $0, -24(%rbp)
- jle .L51
- movl -24(%rbp), %eax
- subl $1, %eax
- movslq %eax, %rdx
- movq -40(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::operator[](unsigned long)
- movl (%rax), %ebx
- movl -24(%rbp), %eax
- movslq %eax, %rdx
- movq -40(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::operator[](unsigned long)
- movl (%rax), %eax
- cmpl %eax, %ebx
- jle .L51
- movl $1, %eax
- jmp .L52
- .L51:
- movl $0, %eax
- .L52:
- testb %al, %al
- je .L53
- movl -24(%rbp), %eax
- movslq %eax, %rdx
- movq -40(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::operator[](unsigned long)
- movq %rax, %rbx
- movl -24(%rbp), %eax
- subl $1, %eax
- movslq %eax, %rdx
- movq -40(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::operator[](unsigned long)
- movq %rbx, %rsi
- movq %rax, %rdi
- call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<int> >, std::is_move_constructible<int>, std::is_move_assignable<int> >::value, void>::type std::swap<int>(int&, int&)
- subl $1, -24(%rbp)
- jmp .L54
- .L53:
- addl $1, -20(%rbp)
- jmp .L55
- .L56:
- nop
- addq $40, %rsp
- popq %rbx
- popq %rbp
- ret
- std::chrono::time_point<std::chrono::_V2::system_clock, std::chrono::duration<long, std::ratio<1l, 1000000000l> > >::time_since_epoch() const:
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq (%rax), %rax
- popq %rbp
- ret
- std::vector<int, std::allocator<int> >::vector():
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_Vector_base()
- nop
- leave
- ret
- std::enable_if<std::chrono::__is_duration<std::chrono::duration<long, std::ratio<1l, 1000l> > >::value, std::chrono::duration<long, std::ratio<1l, 1000l> > >::type std::chrono::duration_cast<std::chrono::duration<long, std::ratio<1l, 1000l> >, long, std::ratio<1l, 1000000000l> >(std::chrono::duration<long, std::ratio<1l, 1000000000l> > const&):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::chrono::duration<long, std::ratio<1l, 1000l> > std::chrono::__duration_cast_impl<std::chrono::duration<long, std::ratio<1l, 1000l> >, std::ratio<1l, 1000000l>, long, true, false>::__cast<long, std::ratio<1l, 1000000000l> >(std::chrono::duration<long, std::ratio<1l, 1000000000l> > const&)
- leave
- ret
- std::chrono::duration<long, std::ratio<1l, 1000l> >::count() const:
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq (%rax), %rax
- popq %rbp
- ret
- std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>::linear_congruential_engine(unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -16(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>::seed(unsigned long)
- nop
- leave
- ret
- std::uniform_int_distribution<int>::uniform_int_distribution(int, int):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movl %esi, -12(%rbp)
- movl %edx, -16(%rbp)
- movq -8(%rbp), %rax
- movl -16(%rbp), %edx
- movl -12(%rbp), %ecx
- movl %ecx, %esi
- movq %rax, %rdi
- call std::uniform_int_distribution<int>::param_type::param_type(int, int)
- nop
- leave
- ret
- std::vector<int, std::allocator<int> >::~vector():
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rdx
- movq -8(%rbp), %rax
- movq 8(%rax), %rcx
- movq -8(%rbp), %rax
- movq (%rax), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::_Destroy<int*, int>(int*, int*, std::allocator<int>&)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::~_Vector_base()
- nop
- leave
- ret
- std::vector<int, std::allocator<int> >::resize(unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- cmpq %rax, -16(%rbp)
- seta %al
- testb %al, %al
- je .L68
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- movq %rax, %rdx
- movq -16(%rbp), %rax
- subq %rdx, %rax
- movq %rax, %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::_M_default_append(unsigned long)
- jmp .L70
- .L68:
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- cmpq %rax, -16(%rbp)
- setb %al
- testb %al, %al
- je .L70
- movq -8(%rbp), %rax
- movq (%rax), %rax
- movq -16(%rbp), %rdx
- salq $2, %rdx
- addq %rax, %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::_M_erase_at_end(int*)
- .L70:
- nop
- leave
- ret
- int std::uniform_int_distribution<int>::operator()<std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul> >(std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>&):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -8(%rbp), %rdx
- movq -16(%rbp), %rcx
- movq -8(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call int std::uniform_int_distribution<int>::operator()<std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul> >(std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>&, std::uniform_int_distribution<int>::param_type const&)
- leave
- ret
- std::vector<int, std::allocator<int> >::push_back(int&&):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -16(%rbp), %rax
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movq %rax, %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::vector<int, std::allocator<int> >::emplace_back<int>(int&&)
- nop
- leave
- ret
- std::vector<int, std::allocator<int> >::size() const:
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq 8(%rax), %rax
- movq %rax, %rdx
- movq -8(%rbp), %rax
- movq (%rax), %rax
- subq %rax, %rdx
- movq %rdx, %rax
- sarq $2, %rax
- popq %rbp
- ret
- std::vector<int, std::allocator<int> >::operator[](unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -8(%rbp), %rax
- movq (%rax), %rax
- movq -16(%rbp), %rdx
- salq $2, %rdx
- addq %rdx, %rax
- popq %rbp
- ret
- std::vector<int, std::allocator<int> >::push_back(int const&):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -8(%rbp), %rax
- movq 8(%rax), %rdx
- movq -8(%rbp), %rax
- movq 16(%rax), %rax
- cmpq %rax, %rdx
- je .L79
- movq -8(%rbp), %rax
- movq 8(%rax), %rcx
- movq -8(%rbp), %rax
- movq -16(%rbp), %rdx
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::allocator_traits<std::allocator<int> >::construct<int, int const&>(std::allocator<int>&, int*, int const&)
- movq -8(%rbp), %rax
- movq 8(%rax), %rax
- leaq 4(%rax), %rdx
- movq -8(%rbp), %rax
- movq %rdx, 8(%rax)
- jmp .L81
- .L79:
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::end()
- movq %rax, %rcx
- movq -16(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::vector<int, std::allocator<int> >::_M_realloc_insert<int const&>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, int const&)
- .L81:
- nop
- leave
- ret
- std::vector<int, std::allocator<int> >::begin():
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -24(%rbp)
- movq -24(%rbp), %rdx
- leaq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::__normal_iterator(int* const&)
- movq -8(%rbp), %rax
- leave
- ret
- std::vector<int, std::allocator<int> >::end():
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -24(%rbp)
- movq -24(%rbp), %rax
- leaq 8(%rax), %rdx
- leaq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::__normal_iterator(int* const&)
- movq -8(%rbp), %rax
- leave
- ret
- void std::sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $40, %rsp
- movq %rdi, -40(%rbp)
- movq %rsi, -48(%rbp)
- call __gnu_cxx::__ops::__iter_less_iter()
- movq -48(%rbp), %rdx
- movq -40(%rbp), %rax
- subq $8, %rsp
- pushq %rbx
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::__sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- nop
- movq -8(%rbp), %rbx
- leave
- ret
- std::remove_reference<int&>::type&& std::move<int&>(int&):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<int> >, std::is_move_constructible<int>, std::is_move_assignable<int> >::value, void>::type std::swap<int>(int&, int&):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movl (%rax), %eax
- movl %eax, -4(%rbp)
- movq -32(%rbp), %rax
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movl (%rax), %edx
- movq -24(%rbp), %rax
- movl %edx, (%rax)
- leaq -4(%rbp), %rax
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movl (%rax), %edx
- movq -32(%rbp), %rax
- movl %edx, (%rax)
- nop
- leave
- ret
- std::_Vector_base<int, std::allocator<int> >::_Vector_impl::~_Vector_impl():
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::allocator<int>::~allocator()
- nop
- leave
- ret
- std::_Vector_base<int, std::allocator<int> >::_Vector_base():
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_Vector_impl::_Vector_impl()
- nop
- leave
- ret
- std::_Vector_base<int, std::allocator<int> >::~_Vector_base():
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq 16(%rax), %rax
- movq %rax, %rdx
- movq -8(%rbp), %rax
- movq (%rax), %rax
- subq %rax, %rdx
- movq %rdx, %rax
- sarq $2, %rax
- movq %rax, %rdx
- movq -8(%rbp), %rax
- movq (%rax), %rcx
- movq -8(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_deallocate(int*, unsigned long)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_Vector_impl::~_Vector_impl()
- nop
- leave
- ret
- std::chrono::duration<long, std::ratio<1l, 1000l> > std::chrono::__duration_cast_impl<std::chrono::duration<long, std::ratio<1l, 1000l> >, std::ratio<1l, 1000000l>, long, true, false>::__cast<long, std::ratio<1l, 1000000000l> >(std::chrono::duration<long, std::ratio<1l, 1000000000l> > const&):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -24(%rbp)
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call std::chrono::duration<long, std::ratio<1l, 1000000000l> >::count() const
- movq %rax, %rcx
- movabsq $4835703278458516699, %rdx
- movq %rcx, %rax
- imulq %rdx
- sarq $18, %rdx
- movq %rcx, %rax
- sarq $63, %rax
- subq %rax, %rdx
- movq %rdx, %rax
- movq %rax, -8(%rbp)
- leaq -8(%rbp), %rdx
- leaq -16(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::chrono::duration<long, std::ratio<1l, 1000l> >::duration<long, void>(long const&)
- movq -16(%rbp), %rax
- leave
- ret
- std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>::seed(unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movl $0, %edi
- call unsigned long std::__detail::__mod<unsigned long, 2147483647ul, 1ul, 0ul>(unsigned long)
- testq %rax, %rax
- jne .L96
- movq -16(%rbp), %rax
- movq %rax, %rdi
- call unsigned long std::__detail::__mod<unsigned long, 2147483647ul, 1ul, 0ul>(unsigned long)
- testq %rax, %rax
- jne .L96
- movl $1, %eax
- jmp .L97
- .L96:
- movl $0, %eax
- .L97:
- testb %al, %al
- je .L98
- movq -8(%rbp), %rax
- movq $1, (%rax)
- jmp .L100
- .L98:
- movq -16(%rbp), %rax
- movq %rax, %rdi
- call unsigned long std::__detail::__mod<unsigned long, 2147483647ul, 1ul, 0ul>(unsigned long)
- movq %rax, %rdx
- movq -8(%rbp), %rax
- movq %rdx, (%rax)
- .L100:
- nop
- leave
- ret
- std::uniform_int_distribution<int>::param_type::param_type(int, int):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movl %esi, -12(%rbp)
- movl %edx, -16(%rbp)
- movq -8(%rbp), %rax
- movl -12(%rbp), %edx
- movl %edx, (%rax)
- movq -8(%rbp), %rax
- movl -16(%rbp), %edx
- movl %edx, 4(%rax)
- nop
- popq %rbp
- ret
- std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator():
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- void std::_Destroy<int*, int>(int*, int*, std::allocator<int>&):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -16(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::_Destroy<int*>(int*, int*)
- nop
- leave
- ret
- .LC7:
- .string "vector::_M_default_append"
- std::vector<int, std::allocator<int> >::_M_default_append(unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $56, %rsp
- movq %rdi, -56(%rbp)
- movq %rsi, -64(%rbp)
- cmpq $0, -64(%rbp)
- je .L113
- movq -56(%rbp), %rax
- movq 16(%rax), %rax
- movq %rax, %rdx
- movq -56(%rbp), %rax
- movq 8(%rax), %rax
- subq %rax, %rdx
- movq %rdx, %rax
- sarq $2, %rax
- cmpq %rax, -64(%rbp)
- ja .L107
- movq -56(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rdx
- movq -56(%rbp), %rax
- movq 8(%rax), %rax
- movq -64(%rbp), %rcx
- movq %rcx, %rsi
- movq %rax, %rdi
- call int* std::__uninitialized_default_n_a<int*, unsigned long, int>(int*, unsigned long, std::allocator<int>&)
- movq %rax, %rdx
- movq -56(%rbp), %rax
- movq %rdx, 8(%rax)
- jmp .L113
- .L107:
- movq -64(%rbp), %rcx
- movq -56(%rbp), %rax
- movl $.LC7, %edx
- movq %rcx, %rsi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::_M_check_len(unsigned long, char const*) const
- movq %rax, -32(%rbp)
- movq -56(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- movq %rax, -40(%rbp)
- movq -56(%rbp), %rax
- movq -32(%rbp), %rdx
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_allocate(unsigned long)
- movq %rax, -48(%rbp)
- movq -48(%rbp), %rax
- movq %rax, -24(%rbp)
- movq -56(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rcx
- movq -56(%rbp), %rax
- movq 8(%rax), %rsi
- movq -56(%rbp), %rax
- movq (%rax), %rax
- movq -48(%rbp), %rdx
- movq %rax, %rdi
- call int* std::__uninitialized_move_if_noexcept_a<int*, int*, std::allocator<int> >(int*, int*, int*, std::allocator<int>&)
- movq %rax, -24(%rbp)
- movq -56(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rdx
- movq -64(%rbp), %rcx
- movq -24(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call int* std::__uninitialized_default_n_a<int*, unsigned long, int>(int*, unsigned long, std::allocator<int>&)
- movq %rax, -24(%rbp)
- movq -56(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rdx
- movq -56(%rbp), %rax
- movq 8(%rax), %rcx
- movq -56(%rbp), %rax
- movq (%rax), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::_Destroy<int*, int>(int*, int*, std::allocator<int>&)
- movq -56(%rbp), %rax
- movq -56(%rbp), %rdx
- movq 16(%rdx), %rdx
- movq %rdx, %rcx
- movq -56(%rbp), %rdx
- movq (%rdx), %rdx
- subq %rdx, %rcx
- movq %rcx, %rdx
- sarq $2, %rdx
- movq %rdx, %rsi
- movq -56(%rbp), %rdx
- movq (%rdx), %rcx
- movq %rsi, %rdx
- movq %rcx, %rsi
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_deallocate(int*, unsigned long)
- movq -56(%rbp), %rax
- movq -48(%rbp), %rdx
- movq %rdx, (%rax)
- movq -56(%rbp), %rax
- movq -24(%rbp), %rdx
- movq %rdx, 8(%rax)
- movq -32(%rbp), %rax
- leaq 0(,%rax,4), %rdx
- movq -48(%rbp), %rax
- addq %rax, %rdx
- movq -56(%rbp), %rax
- movq %rdx, 16(%rax)
- jmp .L113
- movq %rax, %rdi
- call __cxa_begin_catch
- movq -56(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rdx
- movq -24(%rbp), %rcx
- movq -48(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::_Destroy<int*, int>(int*, int*, std::allocator<int>&)
- movq -56(%rbp), %rax
- movq -32(%rbp), %rdx
- movq -48(%rbp), %rcx
- movq %rcx, %rsi
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_deallocate(int*, unsigned long)
- call __cxa_rethrow
- movq %rax, %rbx
- call __cxa_end_catch
- movq %rbx, %rax
- movq %rax, %rdi
- call _Unwind_Resume
- .L113:
- nop
- addq $56, %rsp
- popq %rbx
- popq %rbp
- ret
- std::vector<int, std::allocator<int> >::_M_erase_at_end(int*):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rdx
- movq -8(%rbp), %rax
- movq 8(%rax), %rcx
- movq -16(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::_Destroy<int*, int>(int*, int*, std::allocator<int>&)
- movq -8(%rbp), %rax
- movq -16(%rbp), %rdx
- movq %rdx, 8(%rax)
- nop
- leave
- ret
- int std::uniform_int_distribution<int>::operator()<std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul> >(std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>&, std::uniform_int_distribution<int>::param_type const&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $136, %rsp
- movq %rdi, -120(%rbp)
- movq %rsi, -128(%rbp)
- movq %rdx, -136(%rbp)
- movq $1, -32(%rbp)
- movq $2147483646, -40(%rbp)
- movq $2147483645, -48(%rbp)
- movq -136(%rbp), %rax
- movq %rax, %rdi
- call std::uniform_int_distribution<int>::param_type::b() const
- movslq %eax, %rbx
- movq -136(%rbp), %rax
- movq %rax, %rdi
- call std::uniform_int_distribution<int>::param_type::a() const
- cltq
- subq %rax, %rbx
- movq %rbx, %rax
- movq %rax, -56(%rbp)
- cmpq $2147483644, -56(%rbp)
- ja .L116
- movq -56(%rbp), %rax
- addq $1, %rax
- movq %rax, -80(%rbp)
- movl $2147483645, %eax
- movl $0, %edx
- divq -80(%rbp)
- movq %rax, -88(%rbp)
- movq -80(%rbp), %rax
- imulq -88(%rbp), %rax
- movq %rax, -96(%rbp)
- .L118:
- movq -128(%rbp), %rax
- movq %rax, %rdi
- call std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>::operator()()
- subq $1, %rax
- movq %rax, -24(%rbp)
- movq -24(%rbp), %rax
- cmpq -96(%rbp), %rax
- jb .L117
- jmp .L118
- .L117:
- movq -24(%rbp), %rax
- movl $0, %edx
- divq -88(%rbp)
- movq %rax, -24(%rbp)
- jmp .L119
- .L116:
- cmpq $2147483645, -56(%rbp)
- jbe .L120
- .L123:
- movq $2147483646, -64(%rbp)
- movq -56(%rbp), %rax
- shrq %rax
- movabsq $-9223372028264841207, %rdx
- mulq %rdx
- movq %rdx, %rax
- shrq $29, %rax
- movl %eax, %edx
- leaq -104(%rbp), %rax
- movl $0, %esi
- movq %rax, %rdi
- call std::uniform_int_distribution<int>::param_type::param_type(int, int)
- leaq -104(%rbp), %rdx
- movq -128(%rbp), %rcx
- movq -120(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call int std::uniform_int_distribution<int>::operator()<std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul> >(std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>&, std::uniform_int_distribution<int>::param_type const&)
- movslq %eax, %rdx
- movq %rdx, %rax
- salq $30, %rax
- subq %rdx, %rax
- addq %rax, %rax
- movq %rax, -72(%rbp)
- movq -128(%rbp), %rax
- movq %rax, %rdi
- call std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>::operator()()
- movq %rax, %rdx
- movq -72(%rbp), %rax
- addq %rdx, %rax
- subq $1, %rax
- movq %rax, -24(%rbp)
- movq -24(%rbp), %rax
- cmpq -56(%rbp), %rax
- ja .L123
- movq -24(%rbp), %rax
- cmpq -72(%rbp), %rax
- jnb .L119
- jmp .L123
- .L120:
- movq -128(%rbp), %rax
- movq %rax, %rdi
- call std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>::operator()()
- subq $1, %rax
- movq %rax, -24(%rbp)
- .L119:
- movq -136(%rbp), %rax
- movq %rax, %rdi
- call std::uniform_int_distribution<int>::param_type::a() const
- movl %eax, %edx
- movq -24(%rbp), %rax
- addl %edx, %eax
- addq $136, %rsp
- popq %rbx
- popq %rbp
- ret
- void std::vector<int, std::allocator<int> >::emplace_back<int>(int&&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $24, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq -24(%rbp), %rax
- movq 8(%rax), %rdx
- movq -24(%rbp), %rax
- movq 16(%rax), %rax
- cmpq %rax, %rdx
- je .L126
- movq -32(%rbp), %rax
- movq %rax, %rdi
- call int&& std::forward<int>(std::remove_reference<int>::type&)
- movq %rax, %rdx
- movq -24(%rbp), %rax
- movq 8(%rax), %rcx
- movq -24(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::allocator_traits<std::allocator<int> >::construct<int, int>(std::allocator<int>&, int*, int&&)
- movq -24(%rbp), %rax
- movq 8(%rax), %rax
- leaq 4(%rax), %rdx
- movq -24(%rbp), %rax
- movq %rdx, 8(%rax)
- jmp .L128
- .L126:
- movq -32(%rbp), %rax
- movq %rax, %rdi
- call int&& std::forward<int>(std::remove_reference<int>::type&)
- movq %rax, %rbx
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::end()
- movq %rax, %rcx
- movq -24(%rbp), %rax
- movq %rbx, %rdx
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::vector<int, std::allocator<int> >::_M_realloc_insert<int>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, int&&)
- .L128:
- nop
- addq $24, %rsp
- popq %rbx
- popq %rbp
- ret
- void std::allocator_traits<std::allocator<int> >::construct<int, int const&>(std::allocator<int>&, int*, int const&):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call int const& std::forward<int const&>(std::remove_reference<int const&>::type&)
- movq %rax, %rdx
- movq -16(%rbp), %rcx
- movq -8(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void __gnu_cxx::new_allocator<int>::construct<int, int const&>(int*, int const&)
- nop
- leave
- ret
- .LC8:
- .string "vector::_M_realloc_insert"
- void std::vector<int, std::allocator<int> >::_M_realloc_insert<int const&>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, int const&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r12
- pushq %rbx
- subq $80, %rsp
- movq %rdi, -72(%rbp)
- movq %rsi, -80(%rbp)
- movq %rdx, -88(%rbp)
- movq -72(%rbp), %rax
- movl $.LC8, %edx
- movl $1, %esi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::_M_check_len(unsigned long, char const*) const
- movq %rax, -32(%rbp)
- movq -72(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::begin()
- movq %rax, -56(%rbp)
- leaq -56(%rbp), %rdx
- leaq -80(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::difference_type __gnu_cxx::operator-<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- movq %rax, -40(%rbp)
- movq -72(%rbp), %rax
- movq -32(%rbp), %rdx
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_allocate(unsigned long)
- movq %rax, -48(%rbp)
- movq -48(%rbp), %rax
- movq %rax, -24(%rbp)
- movq -88(%rbp), %rax
- movq %rax, %rdi
- call int const& std::forward<int const&>(std::remove_reference<int const&>::type&)
- movq %rax, %rsi
- movq -40(%rbp), %rax
- leaq 0(,%rax,4), %rdx
- movq -48(%rbp), %rax
- leaq (%rdx,%rax), %rcx
- movq -72(%rbp), %rax
- movq %rsi, %rdx
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::allocator_traits<std::allocator<int> >::construct<int, int const&>(std::allocator<int>&, int*, int const&)
- movq $0, -24(%rbp)
- movq -72(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rbx
- leaq -80(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rsi
- movq -72(%rbp), %rax
- movq (%rax), %rax
- movq -48(%rbp), %rdx
- movq %rbx, %rcx
- movq %rax, %rdi
- call int* std::__uninitialized_move_if_noexcept_a<int*, int*, std::allocator<int> >(int*, int*, int*, std::allocator<int>&)
- movq %rax, -24(%rbp)
- addq $4, -24(%rbp)
- movq -72(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %r12
- movq -72(%rbp), %rax
- movq 8(%rax), %rbx
- leaq -80(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rax
- movq -24(%rbp), %rdx
- movq %r12, %rcx
- movq %rbx, %rsi
- movq %rax, %rdi
- call int* std::__uninitialized_move_if_noexcept_a<int*, int*, std::allocator<int> >(int*, int*, int*, std::allocator<int>&)
- movq %rax, -24(%rbp)
- movq -72(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rdx
- movq -72(%rbp), %rax
- movq 8(%rax), %rcx
- movq -72(%rbp), %rax
- movq (%rax), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::_Destroy<int*, int>(int*, int*, std::allocator<int>&)
- movq -72(%rbp), %rax
- movq -72(%rbp), %rdx
- movq 16(%rdx), %rdx
- movq %rdx, %rcx
- movq -72(%rbp), %rdx
- movq (%rdx), %rdx
- subq %rdx, %rcx
- movq %rcx, %rdx
- sarq $2, %rdx
- movq %rdx, %rsi
- movq -72(%rbp), %rdx
- movq (%rdx), %rcx
- movq %rsi, %rdx
- movq %rcx, %rsi
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_deallocate(int*, unsigned long)
- movq -72(%rbp), %rax
- movq -48(%rbp), %rdx
- movq %rdx, (%rax)
- movq -72(%rbp), %rax
- movq -24(%rbp), %rdx
- movq %rdx, 8(%rax)
- movq -32(%rbp), %rax
- leaq 0(,%rax,4), %rdx
- movq -48(%rbp), %rax
- addq %rax, %rdx
- movq -72(%rbp), %rax
- movq %rdx, 16(%rax)
- jmp .L137
- movq %rax, %rdi
- call __cxa_begin_catch
- cmpq $0, -24(%rbp)
- jne .L132
- movq -40(%rbp), %rax
- leaq 0(,%rax,4), %rdx
- movq -48(%rbp), %rax
- addq %rax, %rdx
- movq -72(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::allocator_traits<std::allocator<int> >::destroy<int>(std::allocator<int>&, int*)
- jmp .L133
- .L132:
- movq -72(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rdx
- movq -24(%rbp), %rcx
- movq -48(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::_Destroy<int*, int>(int*, int*, std::allocator<int>&)
- .L133:
- movq -72(%rbp), %rax
- movq -32(%rbp), %rdx
- movq -48(%rbp), %rcx
- movq %rcx, %rsi
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_deallocate(int*, unsigned long)
- call __cxa_rethrow
- movq %rax, %rbx
- call __cxa_end_catch
- movq %rbx, %rax
- movq %rax, %rdi
- call _Unwind_Resume
- .L137:
- addq $80, %rsp
- popq %rbx
- popq %r12
- popq %rbp
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::__normal_iterator(int* const&):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -16(%rbp), %rax
- movq (%rax), %rdx
- movq -8(%rbp), %rax
- movq %rdx, (%rax)
- nop
- popq %rbp
- ret
- void std::__sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r12
- pushq %rbx
- subq $16, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- leaq -32(%rbp), %rdx
- leaq -24(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call bool __gnu_cxx::operator!=<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- testb %al, %al
- je .L141
- leaq -24(%rbp), %rdx
- leaq -32(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::difference_type __gnu_cxx::operator-<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- movq %rax, %rdi
- call std::__lg(long)
- leaq (%rax,%rax), %rdx
- movq -32(%rbp), %rcx
- movq -24(%rbp), %rax
- subq $8, %rsp
- pushq %r12
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::__introsort_loop<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- movq -32(%rbp), %rdx
- movq -24(%rbp), %rax
- subq $8, %rsp
- pushq %rbx
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::__final_insertion_sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- .L141:
- nop
- leaq -16(%rbp), %rsp
- popq %rbx
- popq %r12
- popq %rbp
- ret
- std::_Vector_base<int, std::allocator<int> >::_Vector_impl::_Vector_impl():
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::allocator<int>::allocator()
- movq -8(%rbp), %rax
- movq $0, (%rax)
- movq -8(%rbp), %rax
- movq $0, 8(%rax)
- movq -8(%rbp), %rax
- movq $0, 16(%rax)
- nop
- leave
- ret
- std::allocator<int>::~allocator():
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::new_allocator<int>::~new_allocator()
- nop
- leave
- ret
- std::_Vector_base<int, std::allocator<int> >::_M_deallocate(int*, unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- cmpq $0, -16(%rbp)
- je .L146
- movq -8(%rbp), %rax
- movq -24(%rbp), %rdx
- movq -16(%rbp), %rcx
- movq %rcx, %rsi
- movq %rax, %rdi
- call std::allocator_traits<std::allocator<int> >::deallocate(std::allocator<int>&, int*, unsigned long)
- .L146:
- nop
- leave
- ret
- std::chrono::duration<long, std::ratio<1l, 1000l> >::duration<long, void>(long const&):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -16(%rbp), %rax
- movq (%rax), %rdx
- movq -8(%rbp), %rax
- movq %rdx, (%rax)
- nop
- popq %rbp
- ret
- unsigned long std::__detail::__mod<unsigned long, 2147483647ul, 1ul, 0ul>(unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::__detail::_Mod<unsigned long, 2147483647ul, 1ul, 0ul, true, true>::__calc(unsigned long)
- leave
- ret
- void std::_Destroy<int*>(int*, int*):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -16(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::_Destroy_aux<true>::__destroy<int*>(int*, int*)
- nop
- leave
- ret
- int* std::__uninitialized_default_n_a<int*, unsigned long, int>(int*, unsigned long, std::allocator<int>&):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -16(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call int* std::__uninitialized_default_n<int*, unsigned long>(int*, unsigned long)
- leave
- ret
- std::vector<int, std::allocator<int> >::_M_check_len(unsigned long, char const*) const:
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $56, %rsp
- movq %rdi, -40(%rbp)
- movq %rsi, -48(%rbp)
- movq %rdx, -56(%rbp)
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::max_size() const
- movq %rax, %rbx
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- subq %rax, %rbx
- movq %rbx, %rdx
- movq -48(%rbp), %rax
- cmpq %rax, %rdx
- setb %al
- testb %al, %al
- je .L154
- movq -56(%rbp), %rax
- movq %rax, %rdi
- call std::__throw_length_error(char const*)
- .L154:
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- movq %rax, %rbx
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- movq %rax, -32(%rbp)
- leaq -48(%rbp), %rdx
- leaq -32(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call unsigned long const& std::max<unsigned long>(unsigned long const&, unsigned long const&)
- movq (%rax), %rax
- addq %rbx, %rax
- movq %rax, -24(%rbp)
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::size() const
- cmpq %rax, -24(%rbp)
- jb .L155
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::max_size() const
- cmpq %rax, -24(%rbp)
- jbe .L156
- .L155:
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::max_size() const
- jmp .L157
- .L156:
- movq -24(%rbp), %rax
- .L157:
- addq $56, %rsp
- popq %rbx
- popq %rbp
- ret
- std::_Vector_base<int, std::allocator<int> >::_M_allocate(unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- cmpq $0, -16(%rbp)
- je .L160
- movq -8(%rbp), %rax
- movq -16(%rbp), %rdx
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::allocator_traits<std::allocator<int> >::allocate(std::allocator<int>&, unsigned long)
- jmp .L162
- .L160:
- movl $0, %eax
- .L162:
- leave
- ret
- int* std::__uninitialized_move_if_noexcept_a<int*, int*, std::allocator<int> >(int*, int*, int*, std::allocator<int>&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $40, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movq %rcx, -48(%rbp)
- movq -32(%rbp), %rax
- movq %rax, %rdi
- call std::move_iterator<int*> std::__make_move_if_noexcept_iterator<int, std::move_iterator<int*> >(int*)
- movq %rax, %rbx
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call std::move_iterator<int*> std::__make_move_if_noexcept_iterator<int, std::move_iterator<int*> >(int*)
- movq %rax, %rdi
- movq -48(%rbp), %rdx
- movq -40(%rbp), %rax
- movq %rdx, %rcx
- movq %rax, %rdx
- movq %rbx, %rsi
- call int* std::__uninitialized_copy_a<std::move_iterator<int*>, int*, int>(std::move_iterator<int*>, std::move_iterator<int*>, int*, std::allocator<int>&)
- addq $40, %rsp
- popq %rbx
- popq %rbp
- ret
- std::uniform_int_distribution<int>::param_type::b() const:
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movl 4(%rax), %eax
- popq %rbp
- ret
- std::uniform_int_distribution<int>::param_type::a() const:
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movl (%rax), %eax
- popq %rbp
- ret
- std::linear_congruential_engine<unsigned long, 16807ul, 0ul, 2147483647ul>::operator()():
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq (%rax), %rax
- movq %rax, %rdi
- call unsigned long std::__detail::__mod<unsigned long, 2147483647ul, 16807ul, 0ul>(unsigned long)
- movq %rax, %rdx
- movq -8(%rbp), %rax
- movq %rdx, (%rax)
- movq -8(%rbp), %rax
- movq (%rax), %rax
- leave
- ret
- int&& std::forward<int>(std::remove_reference<int>::type&):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- void std::allocator_traits<std::allocator<int> >::construct<int, int>(std::allocator<int>&, int*, int&&):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call int&& std::forward<int>(std::remove_reference<int>::type&)
- movq %rax, %rdx
- movq -16(%rbp), %rcx
- movq -8(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void __gnu_cxx::new_allocator<int>::construct<int, int>(int*, int&&)
- nop
- leave
- ret
- void std::vector<int, std::allocator<int> >::_M_realloc_insert<int>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, int&&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r12
- pushq %rbx
- subq $80, %rsp
- movq %rdi, -72(%rbp)
- movq %rsi, -80(%rbp)
- movq %rdx, -88(%rbp)
- movq -72(%rbp), %rax
- movl $.LC8, %edx
- movl $1, %esi
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::_M_check_len(unsigned long, char const*) const
- movq %rax, -32(%rbp)
- movq -72(%rbp), %rax
- movq %rax, %rdi
- call std::vector<int, std::allocator<int> >::begin()
- movq %rax, -56(%rbp)
- leaq -56(%rbp), %rdx
- leaq -80(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::difference_type __gnu_cxx::operator-<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- movq %rax, -40(%rbp)
- movq -72(%rbp), %rax
- movq -32(%rbp), %rdx
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_allocate(unsigned long)
- movq %rax, -48(%rbp)
- movq -48(%rbp), %rax
- movq %rax, -24(%rbp)
- movq -88(%rbp), %rax
- movq %rax, %rdi
- call int&& std::forward<int>(std::remove_reference<int>::type&)
- movq %rax, %rsi
- movq -40(%rbp), %rax
- leaq 0(,%rax,4), %rdx
- movq -48(%rbp), %rax
- leaq (%rdx,%rax), %rcx
- movq -72(%rbp), %rax
- movq %rsi, %rdx
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::allocator_traits<std::allocator<int> >::construct<int, int>(std::allocator<int>&, int*, int&&)
- movq $0, -24(%rbp)
- movq -72(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rbx
- leaq -80(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rsi
- movq -72(%rbp), %rax
- movq (%rax), %rax
- movq -48(%rbp), %rdx
- movq %rbx, %rcx
- movq %rax, %rdi
- call int* std::__uninitialized_move_if_noexcept_a<int*, int*, std::allocator<int> >(int*, int*, int*, std::allocator<int>&)
- movq %rax, -24(%rbp)
- addq $4, -24(%rbp)
- movq -72(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %r12
- movq -72(%rbp), %rax
- movq 8(%rax), %rbx
- leaq -80(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rax
- movq -24(%rbp), %rdx
- movq %r12, %rcx
- movq %rbx, %rsi
- movq %rax, %rdi
- call int* std::__uninitialized_move_if_noexcept_a<int*, int*, std::allocator<int> >(int*, int*, int*, std::allocator<int>&)
- movq %rax, -24(%rbp)
- movq -72(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rdx
- movq -72(%rbp), %rax
- movq 8(%rax), %rcx
- movq -72(%rbp), %rax
- movq (%rax), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::_Destroy<int*, int>(int*, int*, std::allocator<int>&)
- movq -72(%rbp), %rax
- movq -72(%rbp), %rdx
- movq 16(%rdx), %rdx
- movq %rdx, %rcx
- movq -72(%rbp), %rdx
- movq (%rdx), %rdx
- subq %rdx, %rcx
- movq %rcx, %rdx
- sarq $2, %rdx
- movq %rdx, %rsi
- movq -72(%rbp), %rdx
- movq (%rdx), %rcx
- movq %rsi, %rdx
- movq %rcx, %rsi
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_deallocate(int*, unsigned long)
- movq -72(%rbp), %rax
- movq -48(%rbp), %rdx
- movq %rdx, (%rax)
- movq -72(%rbp), %rax
- movq -24(%rbp), %rdx
- movq %rdx, 8(%rax)
- movq -32(%rbp), %rax
- leaq 0(,%rax,4), %rdx
- movq -48(%rbp), %rax
- addq %rax, %rdx
- movq -72(%rbp), %rax
- movq %rdx, 16(%rax)
- jmp .L181
- movq %rax, %rdi
- call __cxa_begin_catch
- cmpq $0, -24(%rbp)
- jne .L176
- movq -40(%rbp), %rax
- leaq 0(,%rax,4), %rdx
- movq -48(%rbp), %rax
- addq %rax, %rdx
- movq -72(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::allocator_traits<std::allocator<int> >::destroy<int>(std::allocator<int>&, int*)
- jmp .L177
- .L176:
- movq -72(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator()
- movq %rax, %rdx
- movq -24(%rbp), %rcx
- movq -48(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::_Destroy<int*, int>(int*, int*, std::allocator<int>&)
- .L177:
- movq -72(%rbp), %rax
- movq -32(%rbp), %rdx
- movq -48(%rbp), %rcx
- movq %rcx, %rsi
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_deallocate(int*, unsigned long)
- call __cxa_rethrow
- movq %rax, %rbx
- call __cxa_end_catch
- movq %rbx, %rax
- movq %rax, %rdi
- call _Unwind_Resume
- .L181:
- addq $80, %rsp
- popq %rbx
- popq %r12
- popq %rbp
- ret
- int const& std::forward<int const&>(std::remove_reference<int const&>::type&):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- void __gnu_cxx::new_allocator<int>::construct<int, int const&>(int*, int const&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $40, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call int const& std::forward<int const&>(std::remove_reference<int const&>::type&)
- movl (%rax), %ebx
- movq -32(%rbp), %rax
- movq %rax, %rsi
- movl $4, %edi
- call operator new(unsigned long, void*)
- testq %rax, %rax
- je .L187
- movl %ebx, (%rax)
- .L187:
- nop
- addq $40, %rsp
- popq %rbx
- popq %rbp
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::difference_type __gnu_cxx::operator-<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $24, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rax
- movq %rax, %rbx
- movq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rax
- subq %rax, %rbx
- movq %rbx, %rax
- sarq $2, %rax
- addq $24, %rsp
- popq %rbx
- popq %rbp
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const:
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- void std::allocator_traits<std::allocator<int> >::destroy<int>(std::allocator<int>&, int*):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -16(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void __gnu_cxx::new_allocator<int>::destroy<int>(int*)
- nop
- leave
- ret
- bool __gnu_cxx::operator!=<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $24, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rbx
- movq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rax
- cmpq %rax, %rbx
- setne %al
- addq $24, %rsp
- popq %rbx
- popq %rbp
- ret
- void std::__introsort_loop<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, __gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r13
- pushq %r12
- pushq %rbx
- subq $56, %rsp
- movq %rdi, -56(%rbp)
- movq %rsi, -64(%rbp)
- movq %rdx, -72(%rbp)
- .L198:
- leaq -56(%rbp), %rdx
- leaq -64(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::difference_type __gnu_cxx::operator-<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- cmpq $16, %rax
- setg %al
- testb %al, %al
- je .L195
- cmpq $0, -72(%rbp)
- jne .L197
- movq -64(%rbp), %rdx
- movq -64(%rbp), %rcx
- movq -56(%rbp), %rax
- subq $8, %rsp
- pushq %r13
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::__partial_sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- jmp .L195
- .L197:
- subq $1, -72(%rbp)
- movq -64(%rbp), %rdx
- movq -56(%rbp), %rax
- subq $8, %rsp
- pushq %r12
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > std::__unguarded_partition_pivot<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- movq %rax, -40(%rbp)
- movq -72(%rbp), %rdx
- movq -64(%rbp), %rcx
- movq -40(%rbp), %rax
- subq $8, %rsp
- pushq %rbx
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::__introsort_loop<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- movq -40(%rbp), %rax
- movq %rax, -64(%rbp)
- jmp .L198
- .L195:
- leaq -24(%rbp), %rsp
- popq %rbx
- popq %r12
- popq %r13
- popq %rbp
- ret
- void std::__final_insertion_sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r13
- pushq %r12
- pushq %rbx
- subq $24, %rsp
- movq %rdi, -40(%rbp)
- movq %rsi, -48(%rbp)
- leaq -40(%rbp), %rdx
- leaq -48(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::difference_type __gnu_cxx::operator-<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- cmpq $16, %rax
- setg %al
- testb %al, %al
- je .L200
- leaq -40(%rbp), %rax
- movl $16, %esi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, %rdx
- movq -40(%rbp), %rax
- subq $8, %rsp
- pushq %r13
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::__insertion_sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- leaq -40(%rbp), %rax
- movl $16, %esi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, %rdx
- movq -48(%rbp), %rax
- subq $8, %rsp
- pushq %r12
- movq %rax, %rsi
- movq %rdx, %rdi
- call void std::__unguarded_insertion_sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- jmp .L202
- .L200:
- movq -48(%rbp), %rdx
- movq -40(%rbp), %rax
- subq $8, %rsp
- pushq %rbx
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::__insertion_sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- .L202:
- nop
- leaq -24(%rbp), %rsp
- popq %rbx
- popq %r12
- popq %r13
- popq %rbp
- ret
- std::allocator<int>::allocator():
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::new_allocator<int>::new_allocator()
- nop
- leave
- ret
- __gnu_cxx::new_allocator<int>::~new_allocator():
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- nop
- popq %rbp
- ret
- std::allocator_traits<std::allocator<int> >::deallocate(std::allocator<int>&, int*, unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -24(%rbp), %rdx
- movq -16(%rbp), %rcx
- movq -8(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::new_allocator<int>::deallocate(int*, unsigned long)
- nop
- leave
- ret
- std::__detail::_Mod<unsigned long, 2147483647ul, 1ul, 0ul, true, true>::__calc(unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -24(%rbp)
- movq -24(%rbp), %rax
- movq %rax, -8(%rbp)
- movq -8(%rbp), %rcx
- movabsq $8589934597, %rdx
- movq %rcx, %rax
- mulq %rdx
- movq %rcx, %rax
- subq %rdx, %rax
- shrq %rax
- addq %rdx, %rax
- shrq $30, %rax
- movq %rax, %rdx
- movq %rdx, %rax
- salq $31, %rax
- subq %rdx, %rax
- subq %rax, %rcx
- movq %rcx, %rax
- movq %rax, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- void std::_Destroy_aux<true>::__destroy<int*>(int*, int*):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- nop
- popq %rbp
- ret
- int* std::__uninitialized_default_n<int*, unsigned long>(int*, unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movb $1, -1(%rbp)
- movq -32(%rbp), %rdx
- movq -24(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call int* std::__uninitialized_default_n_1<true>::__uninit_default_n<int*, unsigned long>(int*, unsigned long)
- leave
- ret
- std::vector<int, std::allocator<int> >::max_size() const:
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator() const
- movq %rax, %rdi
- call std::allocator_traits<std::allocator<int> >::max_size(std::allocator<int> const&)
- leave
- ret
- unsigned long const& std::max<unsigned long>(unsigned long const&, unsigned long const&):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -8(%rbp), %rax
- movq (%rax), %rdx
- movq -16(%rbp), %rax
- movq (%rax), %rax
- cmpq %rax, %rdx
- jnb .L214
- movq -16(%rbp), %rax
- jmp .L215
- .L214:
- movq -8(%rbp), %rax
- .L215:
- popq %rbp
- ret
- std::allocator_traits<std::allocator<int> >::allocate(std::allocator<int>&, unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -16(%rbp), %rcx
- movq -8(%rbp), %rax
- movl $0, %edx
- movq %rcx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::new_allocator<int>::allocate(unsigned long, void const*)
- leave
- ret
- std::move_iterator<int*> std::__make_move_if_noexcept_iterator<int, std::move_iterator<int*> >(int*):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -24(%rbp)
- movq -24(%rbp), %rdx
- leaq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call std::move_iterator<int*>::move_iterator(int*)
- movq -8(%rbp), %rax
- leave
- ret
- int* std::__uninitialized_copy_a<std::move_iterator<int*>, int*, int>(std::move_iterator<int*>, std::move_iterator<int*>, int*, std::allocator<int>&):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq %rcx, -32(%rbp)
- movq -24(%rbp), %rdx
- movq -16(%rbp), %rcx
- movq -8(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call int* std::uninitialized_copy<std::move_iterator<int*>, int*>(std::move_iterator<int*>, std::move_iterator<int*>, int*)
- leave
- ret
- unsigned long std::__detail::__mod<unsigned long, 2147483647ul, 16807ul, 0ul>(unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call std::__detail::_Mod<unsigned long, 2147483647ul, 16807ul, 0ul, true, true>::__calc(unsigned long)
- leave
- ret
- void __gnu_cxx::new_allocator<int>::construct<int, int>(int*, int&&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $40, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call int&& std::forward<int>(std::remove_reference<int>::type&)
- movl (%rax), %ebx
- movq -32(%rbp), %rax
- movq %rax, %rsi
- movl $4, %edi
- call operator new(unsigned long, void*)
- testq %rax, %rax
- je .L227
- movl %ebx, (%rax)
- .L227:
- nop
- addq $40, %rsp
- popq %rbx
- popq %rbp
- ret
- void __gnu_cxx::new_allocator<int>::destroy<int>(int*):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- nop
- popq %rbp
- ret
- void std::__partial_sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -24(%rbp), %rdx
- movq -16(%rbp), %rcx
- movq -8(%rbp), %rax
- subq $8, %rsp
- pushq %r8
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::__heap_select<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- movq -16(%rbp), %rcx
- movq -8(%rbp), %rax
- leaq 16(%rbp), %rdx
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::__sort_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter&)
- nop
- leave
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > std::__unguarded_partition_pivot<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r13
- pushq %r12
- pushq %rbx
- subq $40, %rsp
- movq %rdi, -56(%rbp)
- movq %rsi, -64(%rbp)
- leaq -56(%rbp), %rdx
- leaq -64(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::difference_type __gnu_cxx::operator-<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- movq %rax, %rdx
- shrq $63, %rdx
- addq %rdx, %rax
- sarq %rax
- movq %rax, %rdx
- leaq -56(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, -40(%rbp)
- leaq -64(%rbp), %rax
- movl $1, %esi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator-(long) const
- movq %rax, %rbx
- leaq -56(%rbp), %rax
- movl $1, %esi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, %rsi
- movq -40(%rbp), %rdx
- movq -56(%rbp), %rax
- subq $8, %rsp
- pushq %r13
- movq %rbx, %rcx
- movq %rax, %rdi
- call void std::__move_median_to_first<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- leaq -56(%rbp), %rax
- movl $1, %esi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, %rcx
- movq -56(%rbp), %rdx
- movq -64(%rbp), %rax
- subq $8, %rsp
- pushq %r12
- movq %rax, %rsi
- movq %rcx, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > std::__unguarded_partition<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- leaq -24(%rbp), %rsp
- popq %rbx
- popq %r12
- popq %r13
- popq %rbp
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const:
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq -24(%rbp), %rax
- movq (%rax), %rax
- movq -32(%rbp), %rdx
- salq $2, %rdx
- addq %rdx, %rax
- movq %rax, -8(%rbp)
- leaq -8(%rbp), %rdx
- leaq -16(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::__normal_iterator(int* const&)
- movq -16(%rbp), %rax
- leave
- ret
- void std::__insertion_sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r13
- pushq %r12
- pushq %rbx
- subq $56, %rsp
- movq %rdi, -72(%rbp)
- movq %rsi, -80(%rbp)
- leaq -80(%rbp), %rdx
- leaq -72(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call bool __gnu_cxx::operator==<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- testb %al, %al
- jne .L241
- leaq -72(%rbp), %rax
- movl $1, %esi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, -48(%rbp)
- .L240:
- leaq -80(%rbp), %rdx
- leaq -48(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call bool __gnu_cxx::operator!=<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- testb %al, %al
- je .L234
- movq -72(%rbp), %rdx
- movq -48(%rbp), %rax
- movq %rax, %rsi
- leaq 16(%rbp), %rdi
- call bool __gnu_cxx::__ops::_Iter_less_iter::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const
- testb %al, %al
- je .L238
- leaq -48(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movl (%rax), %eax
- movl %eax, -52(%rbp)
- leaq -48(%rbp), %rax
- movl $1, %esi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, %rdx
- movq -48(%rbp), %rcx
- movq -72(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > std::move_backward<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- leaq -52(%rbp), %rax
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movq %rax, %rbx
- leaq -72(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdx
- movl (%rbx), %eax
- movl %eax, (%rdx)
- jmp .L239
- .L238:
- subq $8, %rsp
- pushq %r13
- call __gnu_cxx::__ops::__val_comp_iter(__gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- movq -48(%rbp), %rax
- subq $8, %rsp
- pushq %r12
- movq %rax, %rdi
- call void std::__unguarded_linear_insert<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Val_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Val_less_iter)
- addq $16, %rsp
- .L239:
- leaq -48(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator++()
- jmp .L240
- .L241:
- nop
- .L234:
- leaq -24(%rbp), %rsp
- popq %rbx
- popq %r12
- popq %r13
- popq %rbp
- ret
- void std::__unguarded_insertion_sort<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r12
- pushq %rbx
- subq $32, %rsp
- movq %rdi, -40(%rbp)
- movq %rsi, -48(%rbp)
- movq -40(%rbp), %rax
- movq %rax, -32(%rbp)
- .L244:
- leaq -48(%rbp), %rdx
- leaq -32(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call bool __gnu_cxx::operator!=<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- testb %al, %al
- je .L245
- subq $8, %rsp
- pushq %r12
- call __gnu_cxx::__ops::__val_comp_iter(__gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- movq -32(%rbp), %rax
- subq $8, %rsp
- pushq %rbx
- movq %rax, %rdi
- call void std::__unguarded_linear_insert<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Val_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Val_less_iter)
- addq $16, %rsp
- leaq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator++()
- jmp .L244
- .L245:
- nop
- leaq -16(%rbp), %rsp
- popq %rbx
- popq %r12
- popq %rbp
- ret
- __gnu_cxx::new_allocator<int>::new_allocator():
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- nop
- popq %rbp
- ret
- __gnu_cxx::new_allocator<int>::deallocate(int*, unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -16(%rbp), %rax
- movq %rax, %rdi
- call operator delete(void*)
- nop
- leave
- ret
- int* std::__uninitialized_default_n_1<true>::__uninit_default_n<int*, unsigned long>(int*, unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movl $0, -4(%rbp)
- leaq -4(%rbp), %rdx
- movq -32(%rbp), %rcx
- movq -24(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call int* std::fill_n<int*, unsigned long, int>(int*, unsigned long, int const&)
- leave
- ret
- std::allocator_traits<std::allocator<int> >::max_size(std::allocator<int> const&):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::new_allocator<int>::max_size() const
- leave
- ret
- std::_Vector_base<int, std::allocator<int> >::_M_get_Tp_allocator() const:
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- __gnu_cxx::new_allocator<int>::allocate(unsigned long, void const*):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::new_allocator<int>::max_size() const
- cmpq %rax, -16(%rbp)
- seta %al
- testb %al, %al
- je .L255
- call std::__throw_bad_alloc()
- .L255:
- movq -16(%rbp), %rax
- salq $2, %rax
- movq %rax, %rdi
- call operator new(unsigned long)
- leave
- ret
- std::move_iterator<int*>::move_iterator(int*):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq -8(%rbp), %rax
- movq -16(%rbp), %rdx
- movq %rdx, (%rax)
- nop
- popq %rbp
- ret
- int* std::uninitialized_copy<std::move_iterator<int*>, int*>(std::move_iterator<int*>, std::move_iterator<int*>, int*):
- pushq %rbp
- movq %rsp, %rbp
- subq $48, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movb $1, -1(%rbp)
- movq -40(%rbp), %rdx
- movq -32(%rbp), %rcx
- movq -24(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call int* std::__uninitialized_copy<true>::__uninit_copy<std::move_iterator<int*>, int*>(std::move_iterator<int*>, std::move_iterator<int*>, int*)
- leave
- ret
- std::__detail::_Mod<unsigned long, 2147483647ul, 16807ul, 0ul, true, true>::__calc(unsigned long):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -24(%rbp)
- movq -24(%rbp), %rax
- imulq $16807, %rax, %rax
- movq %rax, -8(%rbp)
- movq -8(%rbp), %rcx
- movabsq $8589934597, %rdx
- movq %rcx, %rax
- mulq %rdx
- movq %rcx, %rax
- subq %rdx, %rax
- shrq %rax
- addq %rdx, %rax
- shrq $30, %rax
- movq %rax, %rdx
- movq %rdx, %rax
- salq $31, %rax
- subq %rdx, %rax
- subq %rax, %rcx
- movq %rcx, %rax
- movq %rax, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- void std::__heap_select<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- subq $48, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movq -32(%rbp), %rcx
- movq -24(%rbp), %rax
- leaq 16(%rbp), %rdx
- movq %rcx, %rsi
- movq %rax, %rdi
- call void std::__make_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter&)
- movq -32(%rbp), %rax
- movq %rax, -8(%rbp)
- .L265:
- leaq -40(%rbp), %rdx
- leaq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call bool __gnu_cxx::operator< <int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- testb %al, %al
- je .L266
- movq -24(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rax, %rsi
- leaq 16(%rbp), %rdi
- call bool __gnu_cxx::__ops::_Iter_less_iter::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const
- testb %al, %al
- je .L264
- movq -8(%rbp), %rdx
- movq -32(%rbp), %rsi
- movq -24(%rbp), %rax
- leaq 16(%rbp), %rcx
- movq %rax, %rdi
- call void std::__pop_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter&)
- .L264:
- leaq -8(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator++()
- jmp .L265
- .L266:
- nop
- leave
- ret
- void std::__sort_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter&):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- .L269:
- leaq -8(%rbp), %rdx
- leaq -16(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::difference_type __gnu_cxx::operator-<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- cmpq $1, %rax
- setg %al
- testb %al, %al
- je .L270
- leaq -16(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator--()
- movq -24(%rbp), %rcx
- movq -16(%rbp), %rdx
- movq -16(%rbp), %rsi
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call void std::__pop_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter&)
- jmp .L269
- .L270:
- nop
- leave
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator-(long) const:
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq -24(%rbp), %rax
- movq (%rax), %rax
- movq -32(%rbp), %rdx
- salq $2, %rdx
- negq %rdx
- addq %rdx, %rax
- movq %rax, -8(%rbp)
- leaq -8(%rbp), %rdx
- leaq -16(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::__normal_iterator(int* const&)
- movq -16(%rbp), %rax
- leave
- ret
- bool __gnu_cxx::__ops::_Iter_less_iter::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const:
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $40, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- leaq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movl (%rax), %ebx
- leaq -40(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movl (%rax), %eax
- cmpl %eax, %ebx
- setl %al
- addq $40, %rsp
- popq %rbx
- popq %rbp
- ret
- void std::__move_median_to_first<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq %rcx, -32(%rbp)
- movq -24(%rbp), %rdx
- movq -16(%rbp), %rax
- movq %rax, %rsi
- leaq 16(%rbp), %rdi
- call bool __gnu_cxx::__ops::_Iter_less_iter::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const
- testb %al, %al
- je .L276
- movq -32(%rbp), %rdx
- movq -24(%rbp), %rax
- movq %rax, %rsi
- leaq 16(%rbp), %rdi
- call bool __gnu_cxx::__ops::_Iter_less_iter::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const
- testb %al, %al
- je .L277
- movq -24(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::iter_swap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- jmp .L283
- .L277:
- movq -32(%rbp), %rdx
- movq -16(%rbp), %rax
- movq %rax, %rsi
- leaq 16(%rbp), %rdi
- call bool __gnu_cxx::__ops::_Iter_less_iter::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const
- testb %al, %al
- je .L279
- movq -32(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::iter_swap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- jmp .L283
- .L279:
- movq -16(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::iter_swap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- jmp .L283
- .L276:
- movq -32(%rbp), %rdx
- movq -16(%rbp), %rax
- movq %rax, %rsi
- leaq 16(%rbp), %rdi
- call bool __gnu_cxx::__ops::_Iter_less_iter::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const
- testb %al, %al
- je .L281
- movq -16(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::iter_swap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- jmp .L283
- .L281:
- movq -32(%rbp), %rdx
- movq -24(%rbp), %rax
- movq %rax, %rsi
- leaq 16(%rbp), %rdi
- call bool __gnu_cxx::__ops::_Iter_less_iter::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const
- testb %al, %al
- je .L282
- movq -32(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::iter_swap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- jmp .L283
- .L282:
- movq -24(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::iter_swap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- .L283:
- nop
- leave
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > std::__unguarded_partition<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- .L286:
- movq -24(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rax, %rsi
- leaq 16(%rbp), %rdi
- call bool __gnu_cxx::__ops::_Iter_less_iter::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const
- testb %al, %al
- je .L285
- leaq -8(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator++()
- jmp .L286
- .L285:
- leaq -16(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator--()
- .L288:
- movq -16(%rbp), %rdx
- movq -24(%rbp), %rax
- movq %rax, %rsi
- leaq 16(%rbp), %rdi
- call bool __gnu_cxx::__ops::_Iter_less_iter::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const
- testb %al, %al
- je .L287
- leaq -16(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator--()
- jmp .L288
- .L287:
- leaq -16(%rbp), %rdx
- leaq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call bool __gnu_cxx::operator< <int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- xorl $1, %eax
- testb %al, %al
- je .L289
- movq -8(%rbp), %rax
- jmp .L291
- .L289:
- movq -16(%rbp), %rdx
- movq -8(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call void std::iter_swap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- leaq -8(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator++()
- jmp .L286
- .L291:
- leave
- ret
- bool __gnu_cxx::operator==<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $24, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rbx
- movq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rax
- cmpq %rax, %rbx
- sete %al
- addq $24, %rsp
- popq %rbx
- popq %rbp
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator++():
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq (%rax), %rax
- leaq 4(%rax), %rdx
- movq -8(%rbp), %rax
- movq %rdx, (%rax)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const:
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq (%rax), %rax
- popq %rbp
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > std::move_backward<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $40, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > std::__miter_base<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- movq %rax, %rbx
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > std::__miter_base<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- movq %rax, %rcx
- movq -40(%rbp), %rax
- movq %rax, %rdx
- movq %rbx, %rsi
- movq %rcx, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > std::__copy_move_backward_a2<true, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- addq $40, %rsp
- popq %rbx
- popq %rbp
- ret
- void std::__unguarded_linear_insert<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Val_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Val_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $40, %rsp
- movq %rdi, -40(%rbp)
- leaq -40(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movl (%rax), %eax
- movl %eax, -20(%rbp)
- movq -40(%rbp), %rax
- movq %rax, -32(%rbp)
- leaq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator--()
- .L302:
- movq -32(%rbp), %rdx
- leaq -20(%rbp), %rax
- movq %rax, %rsi
- leaq 16(%rbp), %rdi
- call bool __gnu_cxx::__ops::_Val_less_iter::operator()<int, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(int&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const
- testb %al, %al
- je .L301
- leaq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movq %rax, %rbx
- leaq -40(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdx
- movl (%rbx), %eax
- movl %eax, (%rdx)
- movq -32(%rbp), %rax
- movq %rax, -40(%rbp)
- leaq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator--()
- jmp .L302
- .L301:
- leaq -20(%rbp), %rax
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movq %rax, %rbx
- leaq -40(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdx
- movl (%rbx), %eax
- movl %eax, (%rdx)
- nop
- addq $40, %rsp
- popq %rbx
- popq %rbp
- ret
- int* std::fill_n<int*, unsigned long, int>(int*, unsigned long, int const&):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -8(%rbp), %rax
- movq %rax, %rdi
- call int* std::__niter_base<int*>(int*)
- movq %rax, %rcx
- movq -24(%rbp), %rdx
- movq -16(%rbp), %rax
- movq %rax, %rsi
- movq %rcx, %rdi
- call __gnu_cxx::__enable_if<std::__is_scalar<int>::__value, int*>::__type std::__fill_n_a<int*, unsigned long, int>(int*, unsigned long, int const&)
- leave
- ret
- __gnu_cxx::new_allocator<int>::max_size() const:
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movabsq $4611686018427387903, %rax
- popq %rbp
- ret
- int* std::__uninitialized_copy<true>::__uninit_copy<std::move_iterator<int*>, int*>(std::move_iterator<int*>, std::move_iterator<int*>, int*):
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- movq -24(%rbp), %rdx
- movq -16(%rbp), %rcx
- movq -8(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call int* std::copy<std::move_iterator<int*>, int*>(std::move_iterator<int*>, std::move_iterator<int*>, int*)
- leave
- ret
- void std::__make_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $72, %rsp
- movq %rdi, -56(%rbp)
- movq %rsi, -64(%rbp)
- movq %rdx, -72(%rbp)
- leaq -56(%rbp), %rdx
- leaq -64(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::difference_type __gnu_cxx::operator-<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- cmpq $1, %rax
- setle %al
- testb %al, %al
- jne .L314
- leaq -56(%rbp), %rdx
- leaq -64(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::difference_type __gnu_cxx::operator-<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- movq %rax, -32(%rbp)
- movq -32(%rbp), %rax
- subq $2, %rax
- movq %rax, %rdx
- shrq $63, %rdx
- addq %rdx, %rax
- sarq %rax
- movq %rax, -24(%rbp)
- .L313:
- movq -24(%rbp), %rdx
- leaq -56(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, -40(%rbp)
- leaq -40(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movl (%rax), %eax
- movl %eax, -44(%rbp)
- leaq -44(%rbp), %rax
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movl (%rax), %ecx
- movq -32(%rbp), %rdx
- movq -24(%rbp), %rsi
- movq -56(%rbp), %rax
- subq $8, %rsp
- pushq %rbx
- movq %rax, %rdi
- call void std::__adjust_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, int, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, long, int, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- cmpq $0, -24(%rbp)
- je .L315
- subq $1, -24(%rbp)
- jmp .L313
- .L314:
- nop
- jmp .L309
- .L315:
- nop
- .L309:
- movq -8(%rbp), %rbx
- leave
- ret
- bool __gnu_cxx::operator< <int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $24, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rbx
- movq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rax
- cmpq %rax, %rbx
- setb %al
- addq $24, %rsp
- popq %rbx
- popq %rbp
- ret
- void std::__pop_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__ops::_Iter_less_iter&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r12
- pushq %rbx
- subq $48, %rsp
- movq %rdi, -40(%rbp)
- movq %rsi, -48(%rbp)
- movq %rdx, -56(%rbp)
- movq %rcx, -64(%rbp)
- leaq -56(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movl (%rax), %eax
- movl %eax, -20(%rbp)
- leaq -40(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movq %rax, %rbx
- leaq -56(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdx
- movl (%rbx), %eax
- movl %eax, (%rdx)
- leaq -20(%rbp), %rax
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movl (%rax), %ebx
- leaq -40(%rbp), %rdx
- leaq -48(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::difference_type __gnu_cxx::operator-<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > const&)
- movq %rax, %rdx
- movq -40(%rbp), %rax
- subq $8, %rsp
- pushq %r12
- movl %ebx, %ecx
- movl $0, %esi
- movq %rax, %rdi
- call void std::__adjust_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, int, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, long, int, __gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- nop
- leaq -16(%rbp), %rsp
- popq %rbx
- popq %r12
- popq %rbp
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator--():
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq (%rax), %rax
- leaq -4(%rax), %rdx
- movq -8(%rbp), %rax
- movq %rdx, (%rax)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- void std::iter_swap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $24, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- leaq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rbx
- leaq -24(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rbx, %rsi
- movq %rax, %rdi
- call std::enable_if<std::__and_<std::__not_<std::__is_tuple_like<int> >, std::is_move_constructible<int>, std::is_move_assignable<int> >::value, void>::type std::swap<int>(int&, int&)
- nop
- addq $24, %rsp
- popq %rbx
- popq %rbp
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > std::__miter_base<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > std::__copy_move_backward_a2<true, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r12
- pushq %rbx
- subq $48, %rsp
- movq %rdi, -40(%rbp)
- movq %rsi, -48(%rbp)
- movq %rdx, -56(%rbp)
- movq -56(%rbp), %rax
- movq %rax, %rdi
- call int* std::__niter_base<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- movq %rax, %r12
- movq -48(%rbp), %rax
- movq %rax, %rdi
- call int* std::__niter_base<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- movq %rax, %rbx
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call int* std::__niter_base<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >)
- movq %r12, %rdx
- movq %rbx, %rsi
- movq %rax, %rdi
- call int* std::__copy_move_backward_a<true, int*, int*>(int*, int*, int*)
- movq %rax, -24(%rbp)
- leaq -24(%rbp), %rdx
- leaq -32(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::__normal_iterator(int* const&)
- movq -32(%rbp), %rax
- addq $48, %rsp
- popq %rbx
- popq %r12
- popq %rbp
- ret
- bool __gnu_cxx::__ops::_Val_less_iter::operator()<int, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(int&, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const:
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $40, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movq -32(%rbp), %rax
- movl (%rax), %ebx
- leaq -40(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movl (%rax), %eax
- cmpl %eax, %ebx
- setl %al
- addq $40, %rsp
- popq %rbx
- popq %rbp
- ret
- int* std::__niter_base<int*>(int*):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- __gnu_cxx::__enable_if<std::__is_scalar<int>::__value, int*>::__type std::__fill_n_a<int*, unsigned long, int>(int*, unsigned long, int const&):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movq -40(%rbp), %rax
- movl (%rax), %eax
- movl %eax, -12(%rbp)
- movq -32(%rbp), %rax
- movq %rax, -8(%rbp)
- .L332:
- cmpq $0, -8(%rbp)
- je .L331
- movq -24(%rbp), %rax
- movl -12(%rbp), %edx
- movl %edx, (%rax)
- subq $1, -8(%rbp)
- addq $4, -24(%rbp)
- jmp .L332
- .L331:
- movq -24(%rbp), %rax
- popq %rbp
- ret
- int* std::copy<std::move_iterator<int*>, int*>(std::move_iterator<int*>, std::move_iterator<int*>, int*):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $40, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movq -32(%rbp), %rax
- movq %rax, %rdi
- call decltype (__miter_base(({parm#1}.base)())) std::__miter_base<int*>(std::move_iterator<int*>)
- movq %rax, %rbx
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call decltype (__miter_base(({parm#1}.base)())) std::__miter_base<int*>(std::move_iterator<int*>)
- movq %rax, %rcx
- movq -40(%rbp), %rax
- movq %rax, %rdx
- movq %rbx, %rsi
- movq %rcx, %rdi
- call int* std::__copy_move_a2<true, int*, int*>(int*, int*, int*)
- addq $40, %rsp
- popq %rbx
- popq %rbp
- ret
- void std::__adjust_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, int, __gnu_cxx::__ops::_Iter_less_iter>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, long, int, __gnu_cxx::__ops::_Iter_less_iter):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r12
- pushq %rbx
- subq $96, %rsp
- movq %rdi, -88(%rbp)
- movq %rsi, -96(%rbp)
- movq %rdx, -104(%rbp)
- movl %ecx, -108(%rbp)
- movq -96(%rbp), %rax
- movq %rax, -32(%rbp)
- movq -96(%rbp), %rax
- movq %rax, -24(%rbp)
- .L339:
- movq -104(%rbp), %rax
- subq $1, %rax
- movq %rax, %rdx
- shrq $63, %rdx
- addq %rdx, %rax
- sarq %rax
- cmpq %rax, -24(%rbp)
- jge .L337
- movq -24(%rbp), %rax
- addq $1, %rax
- addq %rax, %rax
- movq %rax, -24(%rbp)
- movq -24(%rbp), %rax
- leaq -1(%rax), %rdx
- leaq -88(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, %rbx
- movq -24(%rbp), %rdx
- leaq -88(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rbx, %rdx
- movq %rax, %rsi
- leaq 16(%rbp), %rdi
- call bool __gnu_cxx::__ops::_Iter_less_iter::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >) const
- testb %al, %al
- je .L338
- subq $1, -24(%rbp)
- .L338:
- movq -24(%rbp), %rdx
- leaq -88(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, -64(%rbp)
- leaq -64(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movq %rax, %rbx
- movq -96(%rbp), %rdx
- leaq -88(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, -56(%rbp)
- leaq -56(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdx
- movl (%rbx), %eax
- movl %eax, (%rdx)
- movq -24(%rbp), %rax
- movq %rax, -96(%rbp)
- jmp .L339
- .L337:
- movq -104(%rbp), %rax
- andl $1, %eax
- testq %rax, %rax
- jne .L340
- movq -104(%rbp), %rax
- subq $2, %rax
- movq %rax, %rdx
- shrq $63, %rdx
- addq %rdx, %rax
- sarq %rax
- cmpq %rax, -24(%rbp)
- jne .L340
- movq -24(%rbp), %rax
- addq $1, %rax
- addq %rax, %rax
- movq %rax, -24(%rbp)
- movq -24(%rbp), %rax
- leaq -1(%rax), %rdx
- leaq -88(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, -48(%rbp)
- leaq -48(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movq %rax, %rbx
- movq -96(%rbp), %rdx
- leaq -88(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, -40(%rbp)
- leaq -40(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdx
- movl (%rbx), %eax
- movl %eax, (%rdx)
- movq -24(%rbp), %rax
- subq $1, %rax
- movq %rax, -96(%rbp)
- .L340:
- leaq 16(%rbp), %rdi
- call std::remove_reference<__gnu_cxx::__ops::_Iter_less_iter&>::type&& std::move<__gnu_cxx::__ops::_Iter_less_iter&>(__gnu_cxx::__ops::_Iter_less_iter&)
- leaq -65(%rbp), %rax
- subq $8, %rsp
- pushq %r12
- movq %rax, %rdi
- call __gnu_cxx::__ops::_Iter_less_val::_Iter_less_val(__gnu_cxx::__ops::_Iter_less_iter)
- addq $16, %rsp
- leaq -108(%rbp), %rax
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movl (%rax), %ecx
- leaq -65(%rbp), %rdi
- movq -32(%rbp), %rdx
- movq -96(%rbp), %rsi
- movq -88(%rbp), %rax
- movq %rdi, %r8
- movq %rax, %rdi
- call void std::__push_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, int, __gnu_cxx::__ops::_Iter_less_val>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, long, int, __gnu_cxx::__ops::_Iter_less_val&)
- nop
- leaq -16(%rbp), %rsp
- popq %rbx
- popq %r12
- popq %rbp
- ret
- int* std::__niter_base<int*, std::vector<int, std::allocator<int> > >(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- leaq -8(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::base() const
- movq (%rax), %rax
- leave
- ret
- int* std::__copy_move_backward_a<true, int*, int*>(int*, int*, int*):
- pushq %rbp
- movq %rsp, %rbp
- subq $48, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movb $1, -1(%rbp)
- movq -40(%rbp), %rdx
- movq -32(%rbp), %rcx
- movq -24(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call int* std::__copy_move_backward<true, true, std::random_access_iterator_tag>::__copy_move_b<int>(int const*, int const*, int*)
- leave
- ret
- decltype (__miter_base(({parm#1}.base)())) std::__miter_base<int*>(std::move_iterator<int*>):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movq %rdi, -8(%rbp)
- leaq -8(%rbp), %rax
- movq %rax, %rdi
- call std::move_iterator<int*>::base() const
- movq %rax, %rdi
- call int* std::__miter_base<int*>(int*)
- leave
- ret
- int* std::__copy_move_a2<true, int*, int*>(int*, int*, int*):
- pushq %rbp
- movq %rsp, %rbp
- pushq %r12
- pushq %rbx
- subq $32, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movq -40(%rbp), %rax
- movq %rax, %rdi
- call int* std::__niter_base<int*>(int*)
- movq %rax, %r12
- movq -32(%rbp), %rax
- movq %rax, %rdi
- call int* std::__niter_base<int*>(int*)
- movq %rax, %rbx
- movq -24(%rbp), %rax
- movq %rax, %rdi
- call int* std::__niter_base<int*>(int*)
- movq %r12, %rdx
- movq %rbx, %rsi
- movq %rax, %rdi
- call int* std::__copy_move_a<true, int*, int*>(int*, int*, int*)
- addq $32, %rsp
- popq %rbx
- popq %r12
- popq %rbp
- ret
- std::remove_reference<__gnu_cxx::__ops::_Iter_less_iter&>::type&& std::move<__gnu_cxx::__ops::_Iter_less_iter&>(__gnu_cxx::__ops::_Iter_less_iter&):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- void std::__push_heap<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, int, __gnu_cxx::__ops::_Iter_less_val>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, long, long, int, __gnu_cxx::__ops::_Iter_less_val&):
- pushq %rbp
- movq %rsp, %rbp
- pushq %rbx
- subq $88, %rsp
- movq %rdi, -56(%rbp)
- movq %rsi, -64(%rbp)
- movq %rdx, -72(%rbp)
- movl %ecx, -76(%rbp)
- movq %r8, -88(%rbp)
- movq -64(%rbp), %rax
- subq $1, %rax
- movq %rax, %rdx
- shrq $63, %rdx
- addq %rdx, %rax
- sarq %rax
- movq %rax, -24(%rbp)
- .L355:
- movq -64(%rbp), %rax
- cmpq -72(%rbp), %rax
- jle .L352
- movq -24(%rbp), %rdx
- leaq -56(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, %rcx
- leaq -76(%rbp), %rdx
- movq -88(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call bool __gnu_cxx::__ops::_Iter_less_val::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, int>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, int&) const
- testb %al, %al
- je .L352
- movl $1, %eax
- jmp .L353
- .L352:
- movl $0, %eax
- .L353:
- testb %al, %al
- je .L354
- movq -24(%rbp), %rdx
- leaq -56(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, -48(%rbp)
- leaq -48(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movq %rax, %rbx
- movq -64(%rbp), %rdx
- leaq -56(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, -40(%rbp)
- leaq -40(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdx
- movl (%rbx), %eax
- movl %eax, (%rdx)
- movq -24(%rbp), %rax
- movq %rax, -64(%rbp)
- movq -64(%rbp), %rax
- subq $1, %rax
- movq %rax, %rdx
- shrq $63, %rdx
- addq %rdx, %rax
- sarq %rax
- movq %rax, -24(%rbp)
- jmp .L355
- .L354:
- leaq -76(%rbp), %rax
- movq %rax, %rdi
- call std::remove_reference<int&>::type&& std::move<int&>(int&)
- movq %rax, %rbx
- movq -64(%rbp), %rdx
- leaq -56(%rbp), %rax
- movq %rdx, %rsi
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator+(long) const
- movq %rax, -32(%rbp)
- leaq -32(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movq %rax, %rdx
- movl (%rbx), %eax
- movl %eax, (%rdx)
- nop
- addq $88, %rsp
- popq %rbx
- popq %rbp
- ret
- int* std::__copy_move_backward<true, true, std::random_access_iterator_tag>::__copy_move_b<int>(int const*, int const*, int*):
- pushq %rbp
- movq %rsp, %rbp
- subq $48, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movq -32(%rbp), %rdx
- movq -24(%rbp), %rax
- subq %rax, %rdx
- movq %rdx, %rax
- sarq $2, %rax
- movq %rax, -8(%rbp)
- cmpq $0, -8(%rbp)
- je .L357
- movq -8(%rbp), %rax
- leaq 0(,%rax,4), %rdx
- movq -8(%rbp), %rax
- salq $2, %rax
- negq %rax
- movq %rax, %rcx
- movq -40(%rbp), %rax
- addq %rax, %rcx
- movq -24(%rbp), %rax
- movq %rax, %rsi
- movq %rcx, %rdi
- call memmove
- .L357:
- movq -8(%rbp), %rax
- salq $2, %rax
- negq %rax
- movq %rax, %rdx
- movq -40(%rbp), %rax
- addq %rdx, %rax
- leave
- ret
- std::move_iterator<int*>::base() const:
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- movq (%rax), %rax
- popq %rbp
- ret
- int* std::__miter_base<int*>(int*):
- pushq %rbp
- movq %rsp, %rbp
- movq %rdi, -8(%rbp)
- movq -8(%rbp), %rax
- popq %rbp
- ret
- int* std::__copy_move_a<true, int*, int*>(int*, int*, int*):
- pushq %rbp
- movq %rsp, %rbp
- subq $48, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movb $1, -1(%rbp)
- movq -40(%rbp), %rdx
- movq -32(%rbp), %rcx
- movq -24(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call int* std::__copy_move<true, true, std::random_access_iterator_tag>::__copy_m<int>(int const*, int const*, int*)
- leave
- ret
- bool __gnu_cxx::__ops::_Iter_less_val::operator()<__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, int>(__gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >, int&) const:
- pushq %rbp
- movq %rsp, %rbp
- subq $32, %rsp
- movq %rdi, -8(%rbp)
- movq %rsi, -16(%rbp)
- movq %rdx, -24(%rbp)
- leaq -16(%rbp), %rax
- movq %rax, %rdi
- call __gnu_cxx::__normal_iterator<int*, std::vector<int, std::allocator<int> > >::operator*() const
- movl (%rax), %edx
- movq -24(%rbp), %rax
- movl (%rax), %eax
- cmpl %eax, %edx
- setl %al
- leave
- ret
- int* std::__copy_move<true, true, std::random_access_iterator_tag>::__copy_m<int>(int const*, int const*, int*):
- pushq %rbp
- movq %rsp, %rbp
- subq $48, %rsp
- movq %rdi, -24(%rbp)
- movq %rsi, -32(%rbp)
- movq %rdx, -40(%rbp)
- movq -32(%rbp), %rdx
- movq -24(%rbp), %rax
- subq %rax, %rdx
- movq %rdx, %rax
- sarq $2, %rax
- movq %rax, -8(%rbp)
- cmpq $0, -8(%rbp)
- je .L368
- movq -8(%rbp), %rax
- leaq 0(,%rax,4), %rdx
- movq -24(%rbp), %rcx
- movq -40(%rbp), %rax
- movq %rcx, %rsi
- movq %rax, %rdi
- call memmove
- .L368:
- movq -8(%rbp), %rax
- leaq 0(,%rax,4), %rdx
- movq -40(%rbp), %rax
- addq %rdx, %rax
- leave
- ret
- __static_initialization_and_destruction_0(int, int):
- pushq %rbp
- movq %rsp, %rbp
- subq $16, %rsp
- movl %edi, -4(%rbp)
- movl %esi, -8(%rbp)
- cmpl $1, -4(%rbp)
- jne .L372
- cmpl $65535, -8(%rbp)
- jne .L372
- movl std::__ioinit, %edi
- call std::ios_base::Init::Init()
- movl $__dso_handle, %edx
- movl std::__ioinit, %esi
- movl std::ios_base::Init::~Init(), %edi
- call __cxa_atexit
- movl $counter_vect, %edi
- call std::vector<int, std::allocator<int> >::vector()
- movl $__dso_handle, %edx
- movl $counter_vect, %esi
- movl std::vector<int, std::allocator<int> >::~vector(), %edi
- call __cxa_atexit
- .L372:
- nop
- leave
- ret
- _GLOBAL__sub_I__Z11GetTimeMs64v:
- pushq %rbp
- movq %rsp, %rbp
- movl $65535, %esi
- movl $1, %edi
- call __static_initialization_and_destruction_0(int, int)
- popq %rbp
- ret
- .LC0:
- .long 0
- .long 1072693248
- .LC1:
- .long 0
- .long 1138753536
- .LC3:
- .long 0
- .long 1093567616
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement