// File: /workspace/github_c_makefile_star2_O3/giannisdravilas[P]Disease-Monitor/tests/../include/acutest.h
// Function: test_dump__
void
test_dump__(const char* title, const void* addr, size_t size)
{
    static const size_t BYTES_PER_LINE = 16;
    size_t line_beg;
    size_t truncate = 0;

    if(test_verbose_level__ < 2)
        return;

    /* We allow extra message only when something is already wrong in the
     * current test. */
    if(test_current_unit__ == NULL  ||  !test_cond_failed__)
        return;

    if(size > TEST_DUMP_MAXSIZE) {
        truncate = size - TEST_DUMP_MAXSIZE;
        size = TEST_DUMP_MAXSIZE;
    }

    test_line_indent__(test_case_name__[0] ? 3 : 2);
    printf((title[strlen(title)-1] == ':') ? "%s\n" : "%s:\n", title);

    for(line_beg = 0; line_beg < size; line_beg += BYTES_PER_LINE) {
        size_t line_end = line_beg + BYTES_PER_LINE;
        size_t off;

        test_line_indent__(test_case_name__[0] ? 4 : 3);
        printf("%08lx: ", (unsigned long)line_beg);
        for(off = line_beg; off < line_end; off++) {
            if(off < size)
                printf(" %02x", ((unsigned char*)addr)[off]);
            else
                printf("   ");
        }

        printf("  ");
        for(off = line_beg; off < line_end; off++) {
            unsigned char byte = ((unsigned char*)addr)[off];
            if(off < size)
                printf("%c", (iscntrl(byte) ? '.' : byte));
            else
                break;
        }

        printf("\n");
    }

    if(truncate > 0) {
        test_line_indent__(test_case_name__[0] ? 4 : 3);
        printf("           ... (and more %u bytes)\n", (unsigned) truncate);
    }
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x18, %rsp
cmpl $0x2, 0xb4ee(%rip)      # 0xe190
jge 0x2cb3
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
cmpq $0x0, 0xb8ad(%rip)      # 0xe568
je 0x2ca4
cmpl $0x0, 0xb8fc(%rip)      # 0xe5c0
je 0x2ca4
movq %rdx, %r15
movq %rsi, %r14
movq %rdi, %rbx
movl $0x400, %r13d           # imm = 0x400
movq %rdx, %rax
subq %r13, %rax
movl $0x0, %r12d
cmovaeq %rax, %r12
cmovbq %rdx, %r13
cmpb $0x1, 0xb890(%rip)      # 0xe580
movl $0x3, %edi
sbbl $0x0, %edi
callq 0x28a3
movq %rbx, %rdi
callq 0x20d0
cmpb $0x3a, -0x1(%rbx,%rax)
leaq 0x6bd0(%rip), %rax      # 0x98e1
leaq 0x6464(%rip), %rdi      # 0x917c
cmoveq %rax, %rdi
movq %rbx, %rsi
xorl %eax, %eax
callq 0x2100
testq %r15, %r15
je 0x2ca4
movq %r12, (%rsp)
movq %r15, 0x8(%rsp)
leaq 0x6464(%rip), %r15      # 0x91a3
xorl %ebx, %ebx
cmpb $0x1, 0xb838(%rip)      # 0xe580
movl $0x4, %edi
sbbl $0x0, %edi
callq 0x28a3
leaq 0x6439(%rip), %rdi      # 0x9195
movq %rbx, %rsi
xorl %eax, %eax
callq 0x2100
movl $0x10, %r12d
movq %rbx, %rbp
cmpq %r13, %rbp
jae 0x2d89
movzbl (%r14,%rbp), %esi
leaq 0x641d(%rip), %rdi      # 0x919d
xorl %eax, %eax
callq 0x2100
jmp 0x2d93
movq %r15, %rdi
xorl %eax, %eax
callq 0x2100
incq %rbp
decq %r12
jne 0x2d6f
leaq 0x10(%rbx), %r12
leaq 0x63fe(%rip), %rdi      # 0x91a4
xorl %eax, %eax
callq 0x2100
cmpq %r13, %r12
movq %r13, %rbp
movq %r12, 0x10(%rsp)
cmovbq %r12, %rbp
cmpq %rbx, %r13
jbe 0x2dec
callq 0x22c0
movq %rax, %r12
movzbl (%r14,%rbx), %edi
movq (%r12), %rax
movzwl (%rax,%rdi,2), %eax
testb $0x2, %al
je 0x2ddf
movl $0x2e, %edi
callq 0x2030
incq %rbx
cmpq %rbp, %rbx
jb 0x2dc9
movl $0xa, %edi
callq 0x2030
movq 0x10(%rsp), %rbx
cmpq %r13, %rbx
jb 0x2d41
cmpq $0x401, 0x8(%rsp)       # imm = 0x401
movq (%rsp), %rbx
jb 0x2ca4
cmpb $0x1, 0xb762(%rip)      # 0xe580
movl $0x4, %edi
sbbl $0x0, %edi
callq 0x28a3
leaq 0x6375(%rip), %rdi      # 0x91a7
movl %ebx, %esi
xorl %eax, %eax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2100