// File: /workspace/github_c_makefile_star2_O1/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, 0xb502(%rip)      # 0xe190
jge 0x2c9f
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
cmpq $0x0, 0xb8c1(%rip)      # 0xe568
je 0x2c90
cmpl $0x0, 0xb910(%rip)      # 0xe5c0
je 0x2c90
movq %rdx, %r15
movq %rsi, %r14
movq %rdi, %rbx
movl $0x400, %r13d           # imm = 0x400
movq %rdx, %rax
subq %r13, %rax
movl $0x0, %ecx
cmovaeq %rax, %rcx
movq %rcx, (%rsp)
cmovbq %rdx, %r13
cmpb $0x1, 0xb8a1(%rip)      # 0xe580
movl $0x3, %edi
sbbl $0x0, %edi
callq 0x288f
movq %rbx, %rdi
callq 0x20d0
cmpb $0x3a, -0x1(%rbx,%rax)
leaq 0x6be4(%rip), %rax      # 0x98e4
leaq 0x6475(%rip), %rdi      # 0x917c
cmoveq %rax, %rdi
movq %rbx, %rsi
xorl %eax, %eax
callq 0x2100
movq %r15, 0x8(%rsp)
testq %r15, %r15
je 0x2def
leaq 0x6479(%rip), %r15      # 0x91a3
xorl %ebx, %ebx
cmpb $0x1, 0xb84d(%rip)      # 0xe580
movl $0x4, %edi
sbbl $0x0, %edi
callq 0x288f
leaq 0x644e(%rip), %rdi      # 0x9195
movq %rbx, %rsi
xorl %eax, %eax
callq 0x2100
movl $0x10, %r12d
movq %rbx, %rbp
cmpq %r13, %rbp
jae 0x2d74
movzbl (%r14,%rbp), %esi
leaq 0x6432(%rip), %rdi      # 0x919d
xorl %eax, %eax
callq 0x2100
jmp 0x2d7e
movq %r15, %rdi
xorl %eax, %eax
callq 0x2100
incq %rbp
decq %r12
jne 0x2d5a
leaq 0x10(%rbx), %r12
leaq 0x6413(%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 0x2dd7
callq 0x22c0
movq %rax, %r12
movzbl (%r14,%rbx), %edi
movq (%r12), %rax
movzwl (%rax,%rdi,2), %eax
testb $0x2, %al
je 0x2dca
movl $0x2e, %edi
callq 0x2030
incq %rbx
cmpq %rbp, %rbx
jb 0x2db4
movl $0xa, %edi
callq 0x2030
movq 0x10(%rsp), %rbx
cmpq %r13, %rbx
jb 0x2d2c
cmpq $0x401, 0x8(%rsp)       # imm = 0x401
jb 0x2c90
cmpb $0x1, 0xb77b(%rip)      # 0xe580
movl $0x4, %edi
sbbl $0x0, %edi
callq 0x288f
leaq 0x638e(%rip), %rdi      # 0x91a7
movq (%rsp), %rsi
xorl %eax, %eax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2100