// File: /workspace/github_cpp_makefile_star2_O2/cybozu[P]yrmcds/src/memcache/memcache.cpp
// Function: yrmcds::memcache::text_response::stats_general(unsigned long)
void text_response::stats_general(std::size_t n_slaves) {
    struct rusage ru;
    if( ::getrusage(RUSAGE_SELF, &ru) == -1 )
        cybozu::throw_unix_error(errno, "getrusage");

    std::ostringstream os;
    os << std::setfill('0');
    os << "STAT pid " << ::getpid() << CRLF;
    os << "STAT time " << g_current_time.load(relaxed) << CRLF;
    os << "STAT version " << VERSION << CRLF;
    os << "STAT pointer_size " << sizeof(void*)*8 << CRLF;
    os << "STAT rusage_user " << ru.ru_utime.tv_sec << '.'
       << std::setw(6) << ru.ru_utime.tv_usec << CRLF;
    os << "STAT rusage_system " << ru.ru_stime.tv_sec << '.'
       << std::setw(6) << ru.ru_stime.tv_usec << CRLF;
    os << "STAT curr_connections " << g_stats.curr_connections.load(relaxed) << CRLF;
    os << "STAT total_connections " << g_stats.total_connections.load(relaxed) << CRLF;
    os << "STAT curr_items " << g_stats.objects.load(relaxed) << CRLF;
    os << "STAT total_items " << g_stats.total_objects.load(relaxed) << CRLF;
    os << "STAT get_hits " << g_stats.get_hits.load(relaxed) << CRLF;
    os << "STAT get_misses " << g_stats.get_misses.load(relaxed) << CRLF;
    os << "STAT cas_hits " << g_stats.cas_hits.load(relaxed) << CRLF;
    os << "STAT cas_misses " << g_stats.cas_misses.load(relaxed) << CRLF;
    os << "STAT cas_badval " << g_stats.cas_badval.load(relaxed) << CRLF;
    os << "STAT bytes " << g_stats.used_memory.load(relaxed) << CRLF;
    os << "STAT limit_maxbytes " << g_config.memory_limit() << CRLF;
    os << "STAT threads " << g_config.workers() << CRLF;
    os << "STAT gc_count " << g_stats.gc_count.load(relaxed) << CRLF;
    os << "STAT slaves " << n_slaves << CRLF;
    os << "STAT last_expirations "
       << g_stats.last_expirations.load(relaxed) << CRLF;
    os << "STAT last_evictions "
       << g_stats.last_evictions.load(relaxed) << CRLF;
    os << "STAT evictions "
       << g_stats.total_evictions.load(relaxed) << CRLF;
    os << "STAT last_gc_elapsed "
       << g_stats.last_gc_elapsed.load(relaxed) << CRLF;
    os << "STAT total_gc_elapsed "
       << g_stats.total_gc_elapsed.load(relaxed) << CRLF;
    std::string s = os.str();
    m_socket.send(s.data(), s.size());
}

// Assembly:
pushq %r15
pushq %r14
pushq %r12
pushq %rbx
subq $0x228, %rsp            # imm = 0x228
movq %rsi, %r14
movq %rdi, %rbx
leaq 0x198(%rsp), %rsi
xorl %edi, %edi
callq 0x72c0
cmpl $-0x1, %eax
je 0x210cd
leaq 0x20(%rsp), %r15
movq %r15, %rdi
callq 0x7700
pushq $0x30
popq %rsi
movq %r15, %rdi
callq 0x7860
leaq 0x8995(%rip), %rsi      # 0x29544
leaq 0x20(%rsp), %rdi
callq 0x7500
movq %rax, %r15
callq 0x77d0
movq %r15, %rdi
movl %eax, %esi
callq 0x7970
leaq 0x81cd(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x896d(%rip), %rsi      # 0x2954e
leaq 0x20(%rsp), %rdi
callq 0x7500
leaq 0x1b28e(%rip), %rcx     # 0x3be80
movq (%rcx), %rsi
movq %rax, %rdi
callq 0x74f0
leaq 0x819b(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x8946(%rip), %rsi      # 0x29559
leaq 0x20(%rsp), %rdi
callq 0x7500
leaq 0x818c(%rip), %rsi      # 0x28db0
movq %rax, %rdi
callq 0x7500
leaq 0x816c(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x8925(%rip), %rsi      # 0x29567
leaq 0x20(%rsp), %rdi
callq 0x7500
pushq $0x40
popq %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x8141(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x890d(%rip), %rsi      # 0x2957a
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x198(%rsp), %rsi
movq %rax, %rdi
callq 0x74f0
pushq $0x2e
popq %rsi
movq %rax, %rdi
callq 0x7590
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq $0x6, 0x10(%rax,%rcx)
movq 0x1a0(%rsp), %rsi
movq %rax, %rdi
callq 0x74f0
leaq 0x80e6(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x88c4(%rip), %rsi      # 0x2958c
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x1a8(%rsp), %rsi
movq %rax, %rdi
callq 0x74f0
pushq $0x2e
popq %rsi
movq %rax, %rdi
callq 0x7590
movq (%rax), %rcx
movq -0x18(%rcx), %rcx
movq $0x6, 0x10(%rax,%rcx)
movq 0x1b0(%rsp), %rsi
movq %rax, %rdi
callq 0x74f0
leaq 0x808b(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x887d(%rip), %rsi      # 0x295a0
leaq 0x20(%rsp), %rdi
callq 0x7500
leaq 0x1b18c(%rip), %r15     # 0x3bec0
movq 0x100(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x8055(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x885e(%rip), %rsi      # 0x295b7
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x108(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x8026(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x8847(%rip), %rsi      # 0x295cf
leaq 0x20(%rsp), %rdi
callq 0x7500
movl (%r15), %esi
movq %rax, %rdi
callq 0x7360
leaq 0x7ffb(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x882d(%rip), %rsi      # 0x295e0
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x80(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x7fcc(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x8810(%rip), %rsi      # 0x295f2
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x488(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x7f9d(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x87f0(%rip), %rsi      # 0x29601
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x490(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x7f6e(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x87d2(%rip), %rsi      # 0x29612
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x498(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x7f3f(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x87b2(%rip), %rsi      # 0x29621
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x4a0(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x7f10(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x8794(%rip), %rsi      # 0x29632
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x4a8(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x7ee1(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x8776(%rip), %rsi      # 0x29643
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x28(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x7eb5(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x8756(%rip), %rsi      # 0x2964f
leaq 0x20(%rsp), %rdi
callq 0x7500
leaq 0x1acb6(%rip), %r12     # 0x3bbc0
movq 0xe8(%r12), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x7e7e(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x8734(%rip), %rsi      # 0x29664
leaq 0x20(%rsp), %rdi
callq 0x7500
movl 0x104(%r12), %esi
movq %rax, %rdi
callq 0x7360
leaq 0x7e4e(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x8712(%rip), %rsi      # 0x29672
leaq 0x20(%rsp), %rdi
callq 0x7500
movl 0x34(%r15), %esi
movq %rax, %rdi
callq 0x7360
leaq 0x7e22(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x86f5(%rip), %rsi      # 0x29681
leaq 0x20(%rsp), %rdi
callq 0x7500
movq %rax, %rdi
movq %r14, %rsi
callq 0x7360
leaq 0x7df7(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x86d7(%rip), %rsi      # 0x2968e
leaq 0x20(%rsp), %rdi
callq 0x7500
movl 0x48(%r15), %esi
movq %rax, %rdi
callq 0x7360
leaq 0x7dcb(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x86c2(%rip), %rsi      # 0x296a5
leaq 0x20(%rsp), %rdi
callq 0x7500
movl 0x4c(%r15), %esi
movq %rax, %rdi
callq 0x7360
leaq 0x7d9f(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x86ab(%rip), %rsi      # 0x296ba
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x50(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x7d73(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x868f(%rip), %rsi      # 0x296ca
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x58(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x7d47(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x8679(%rip), %rsi      # 0x296e0
leaq 0x20(%rsp), %rdi
callq 0x7500
movq 0x60(%r15), %rsi
movq %rax, %rdi
callq 0x7360
leaq 0x7d1b(%rip), %rsi      # 0x28d9f
movq %rax, %rdi
callq 0x7500
leaq 0x28(%rsp), %rsi
movq %rsp, %rdi
callq 0x7870
movq (%rbx), %rdi
movq (%rsp), %rsi
movq 0x8(%rsp), %rdx
xorl %ecx, %ecx
callq 0x1523e
movq %rsp, %rdi
callq 0x71d0
leaq 0x20(%rsp), %rdi
callq 0x70b0
addq $0x228, %rsp            # imm = 0x228
popq %rbx
popq %r12
popq %r14
popq %r15
retq
callq 0x7030
movl (%rax), %edi
leaq 0x845f(%rip), %rsi      # 0x2953a
callq 0x8513
movq %rax, %rbx
movq %rsp, %rdi
callq 0x71d0
jmp 0x210f2
jmp 0x210ef
movq %rax, %rbx
leaq 0x20(%rsp), %rdi
callq 0x70b0
movq %rbx, %rdi
callq 0x7990