// File: /workspace/github_cpp_makefile_star2_O3/AndreRenaud[P]simple_uart/./acutest.h
// Function: acutest_dump_
void
acutest_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(acutest_verbose_level_ < 2)
        return;

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

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

    acutest_line_indent_(acutest_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;

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

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

        printf("\n");
    }

    if(truncate > 0) {
        acutest_line_indent_(acutest_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, 0x8205(%rip)      # 0xb220
jge 0x302c
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
cmpq $0x0, 0x8314(%rip)      # 0xb348
je 0x301d
cmpl $0x0, 0x8363(%rip)      # 0xb3a0
je 0x301d
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, 0x82f7(%rip)      # 0xb360
movl $0x3, %edi
sbbl $0x0, %edi
callq 0x2c0e
movq %rbx, %rdi
callq 0x2150
cmpb $0x3a, -0x1(%rbx,%rax)
leaq 0x42d4(%rip), %rax      # 0x735e
leaq 0x410e(%rip), %rdi      # 0x719f
cmoveq %rax, %rdi
movq %rbx, %rsi
xorl %eax, %eax
callq 0x2180
testq %r15, %r15
je 0x301d
movq %r12, (%rsp)
movq %r15, 0x8(%rsp)
leaq 0x4100(%rip), %r15      # 0x71b8
xorl %ebx, %ebx
cmpb $0x1, 0x829f(%rip)      # 0xb360
movl $0x4, %edi
sbbl $0x0, %edi
callq 0x2c0e
leaq 0x40d5(%rip), %rdi      # 0x71aa
movq %rbx, %rsi
xorl %eax, %eax
callq 0x2180
movl $0x10, %r12d
movq %rbx, %rbp
cmpq %r13, %rbp
jae 0x3102
movzbl (%r14,%rbp), %esi
leaq 0x40b9(%rip), %rdi      # 0x71b2
xorl %eax, %eax
callq 0x2180
jmp 0x310c
movq %r15, %rdi
xorl %eax, %eax
callq 0x2180
incq %rbp
decq %r12
jne 0x30e8
leaq 0x10(%rbx), %r12
leaq 0x409a(%rip), %rdi      # 0x71b9
xorl %eax, %eax
callq 0x2180
cmpq %r13, %r12
movq %r13, %rbp
movq %r12, 0x10(%rsp)
cmovbq %r12, %rbp
cmpq %rbx, %r13
jbe 0x3165
callq 0x2400
movq %rax, %r12
movzbl (%r14,%rbx), %edi
movq (%r12), %rax
movzwl (%rax,%rdi,2), %eax
testb $0x2, %al
je 0x3158
movl $0x2e, %edi
callq 0x2050
incq %rbx
cmpq %rbp, %rbx
jb 0x3142
movl $0xa, %edi
callq 0x2050
movq 0x10(%rsp), %rbx
cmpq %r13, %rbx
jb 0x30ba
cmpq $0x401, 0x8(%rsp)       # imm = 0x401
movq (%rsp), %rbx
jb 0x301d
cmpb $0x1, 0x81c9(%rip)      # 0xb360
movl $0x4, %edi
sbbl $0x0, %edi
callq 0x2c0e
leaq 0x4011(%rip), %rdi      # 0x71bc
movl %ebx, %esi
xorl %eax, %eax
addq $0x18, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x2180