// File: /workspace/github_cpp_makefile_star2_O2/AndreRenaud[P]simple_uart/./acutest.h
// Function: acutest_cmdline_callback_
static int
acutest_cmdline_callback_(int id, const char* arg)
{
    switch(id) {
        case 'X':
            acutest_exclude_mode_ = 1;
            break;

        case 'e':
            if(arg == NULL || strcmp(arg, "always") == 0) {
                acutest_no_exec_ = 0;
            } else if(strcmp(arg, "never") == 0) {
                acutest_no_exec_ = 1;
            } else if(strcmp(arg, "auto") == 0) {
                /*noop*/
            } else {
                fprintf(stderr, "%s: Unrecognized argument '%s' for option --exec.\n", acutest_argv0_, arg);
                fprintf(stderr, "Try '%s --help' for more information.\n", acutest_argv0_);
                acutest_exit_(2);
            }
            break;

        case 'E':
            acutest_no_exec_ = 1;
            break;

        case 't':
#if defined ACUTEST_WIN_  ||  defined ACUTEST_HAS_POSIX_TIMER_
            if(arg == NULL || strcmp(arg, "real") == 0) {
                acutest_timer_ = 1;
    #ifndef ACUTEST_WIN_
            } else if(strcmp(arg, "cpu") == 0) {
                acutest_timer_ = 2;
    #endif
            } else {
                fprintf(stderr, "%s: Unrecognized argument '%s' for option --time.\n", acutest_argv0_, arg);
                fprintf(stderr, "Try '%s --help' for more information.\n", acutest_argv0_);
                acutest_exit_(2);
            }
#endif
            break;

        case 'S':
            acutest_no_summary_ = 1;
            break;

        case 'T':
            acutest_tap_ = 1;
            break;

        case 'l':
            acutest_list_names_();
            acutest_exit_(0);
            break;

        case 'v':
            acutest_verbose_level_ = (arg != NULL ? atoi(arg) : acutest_verbose_level_+1);
            break;

        case 'q':
            acutest_verbose_level_ = 0;
            break;

        case 'c':
            if(arg == NULL || strcmp(arg, "always") == 0) {
                acutest_colorize_ = 1;
            } else if(strcmp(arg, "never") == 0) {
                acutest_colorize_ = 0;
            } else if(strcmp(arg, "auto") == 0) {
                /*noop*/
            } else {
                fprintf(stderr, "%s: Unrecognized argument '%s' for option --color.\n", acutest_argv0_, arg);
                fprintf(stderr, "Try '%s --help' for more information.\n", acutest_argv0_);
                acutest_exit_(2);
            }
            break;

        case 'C':
            acutest_colorize_ = 0;
            break;

        case 'h':
            acutest_help_();
            acutest_exit_(0);
            break;

        case 'w':
            acutest_worker_ = 1;
            acutest_worker_index_ = atoi(arg);
            break;
        case 'x':
            acutest_xml_output_ = fopen(arg, "w");
            if (!acutest_xml_output_) {
                fprintf(stderr, "Unable to open '%s': %s\n", arg, strerror(errno));
                acutest_exit_(2);
            }
            break;

        case 0:
            if(acutest_select_(arg) == 0) {
                fprintf(stderr, "%s: Unrecognized unit test '%s'\n", acutest_argv0_, arg);
                fprintf(stderr, "Try '%s --list' for list of unit tests.\n", acutest_argv0_);
                acutest_exit_(2);
            }
            break;

        case ACUTEST_CMDLINE_OPTID_UNKNOWN_:
            fprintf(stderr, "Unrecognized command line option '%s'.\n", arg);
            fprintf(stderr, "Try '%s --help' for more information.\n", acutest_argv0_);
            acutest_exit_(2);
            break;

        case ACUTEST_CMDLINE_OPTID_MISSINGARG_:
            fprintf(stderr, "The command line option '%s' requires an argument.\n", arg);
            fprintf(stderr, "Try '%s --help' for more information.\n", acutest_argv0_);
            acutest_exit_(2);
            break;

        case ACUTEST_CMDLINE_OPTID_BOGUSARG_:
            fprintf(stderr, "The command line option '%s' does not expect an argument.\n", arg);
            fprintf(stderr, "Try '%s --help' for more information.\n", acutest_argv0_);
            acutest_exit_(2);
            break;
    }

    return 0;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
subq $0x38, %rsp
movq %rsi, %rbp
leal -0x63(%rdi), %eax
cmpl $0x15, %eax
ja 0x3943
leaq 0x3741(%rip), %rcx      # 0x7010
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
testq %rbp, %rbp
je 0x3b8d
leaq 0x4096(%rip), %rsi      # 0x797e
movq %rbp, %rdi
callq 0x2220
testl %eax, %eax
je 0x3b8d
leaq 0x458f(%rip), %rsi      # 0x7e8e
movq %rbp, %rdi
callq 0x2220
testl %eax, %eax
je 0x39ae
leaq 0x406f(%rip), %rsi      # 0x7985
movq %rbp, %rdi
callq 0x2220
testl %eax, %eax
je 0x3cca
movq 0x76c3(%rip), %rbx      # 0xaff0
movq (%rbx), %rdi
movq 0x7b41(%rip), %rdx      # 0xb478
leaq 0x40e2(%rip), %rsi      # 0x7a20
jmp 0x3d70
testl %edi, %edi
je 0x3b27
cmpl $0x43, %edi
je 0x39ae
cmpl $0x45, %edi
je 0x3af4
cmpl $0x53, %edi
je 0x3b03
cmpl $0x54, %edi
je 0x3b1b
cmpl $0x58, %edi
je 0x3b0f
cmpl $0x80000001, %edi       # imm = 0x80000001
je 0x3d28
cmpl $0x80000002, %edi       # imm = 0x80000002
je 0x3d3b
cmpl $0x80000003, %edi       # imm = 0x80000003
jne 0x3cca
movq 0x7651(%rip), %rbx      # 0xaff0
movq (%rbx), %rdi
leaq 0x416c(%rip), %rsi      # 0x7b15
jmp 0x3d4c
andl $0x0, 0x7acb(%rip)      # 0xb480
jmp 0x3cca
leaq 0x4093(%rip), %rsi      # 0x7a54
movq %rbp, %rdi
callq 0x2330
movq %rax, 0x7ad8(%rip)      # 0xb4a8
testq %rax, %rax
jne 0x3cca
movq 0x7610(%rip), %rax      # 0xaff0
movq (%rax), %r14
callq 0x2060
movl (%rax), %edi
callq 0x23b0
leaq 0x4060(%rip), %rsi      # 0x7a56
movq %r14, %rdi
movq %rbp, %rdx
movq %rax, %rcx
xorl %eax, %eax
callq 0x2250
jmp 0x3d92
testq %rbp, %rbp
je 0x3b7e
leaq 0x3fc9(%rip), %rsi      # 0x79e4
movq %rbp, %rdi
callq 0x2220
testl %eax, %eax
je 0x3b7e
leaq 0x3fb7(%rip), %rsi      # 0x79e9
movq %rbp, %rdi
callq 0x2220
testl %eax, %eax
jne 0x3d58
movl $0x2, 0x7a68(%rip)      # 0xb4b4
jmp 0x3cca
movb $0x1, 0x7a44(%rip)      # 0xb49c
movq %rbp, %rdi
callq 0x2360
movl %eax, 0x7a3a(%rip)      # 0xb4a0
jmp 0x3cca
andl $0x0, 0x77ae(%rip)      # 0xb220
jmp 0x3cca
testq %rbp, %rbp
je 0x3cbc
movq %rbp, %rdi
callq 0x2360
jmp 0x3cc4
testq %rbp, %rbp
je 0x3b9c
leaq 0x3ee1(%rip), %rsi      # 0x797e
movq %rbp, %rdi
callq 0x2220
testl %eax, %eax
je 0x3b9c
leaq 0x43da(%rip), %rsi      # 0x7e8e
movq %rbp, %rdi
callq 0x2220
testl %eax, %eax
je 0x3af4
leaq 0x3ebe(%rip), %rsi      # 0x7985
movq %rbp, %rdi
callq 0x2220
testl %eax, %eax
je 0x3cca
movq 0x7512(%rip), %rbx      # 0xaff0
movq (%rbx), %rdi
movq 0x7990(%rip), %rdx      # 0xb478
leaq 0x3e9b(%rip), %rsi      # 0x798a
jmp 0x3d70
movl $0x1, 0x7726(%rip)      # 0xb224
jmp 0x3cca
movb $0x1, 0x798e(%rip)      # 0xb498
jmp 0x3cca
movb $0x1, 0x797a(%rip)      # 0xb490
jmp 0x3cca
movb $0x1, 0x7972(%rip)      # 0xb494
jmp 0x3cca
movl 0x7957(%rip), %eax      # 0xb484
xorl %ecx, %ecx
testl %eax, %eax
cmovlel %ecx, %eax
movq %rax, 0x28(%rsp)
shlq $0x4, %rax
movq %rax, 0x20(%rsp)
leaq 0x10(%rax), %rbx
leaq 0x7203(%rip), %r15      # 0xad50
leaq 0x10(%rcx), %r14
cmpq %r14, %rbx
je 0x3ba8
movq (%rcx,%r15), %rdi
movq %rbp, %rsi
callq 0x2220
movq %r14, %rcx
testl %eax, %eax
jne 0x3b4d
movq 0x7918(%rip), %rax      # 0xb488
movl $0xfffffffd, -0x10(%rax,%r14) # imm = 0xFFFFFFFD
jmp 0x3cca
movl $0x1, 0x792c(%rip)      # 0xb4b4
jmp 0x3cca
movl $0x1, 0x78e9(%rip)      # 0xb480
jmp 0x3cca
andl $0x0, 0x7681(%rip)      # 0xb224
jmp 0x3cca
xorl %ecx, %ecx
movq 0x78d7(%rip), %rax      # 0xb488
movq %rax, 0x10(%rsp)
xorl %r14d, %r14d
cmpq 0x28(%rsp), %rcx
je 0x3c88
movl %r14d, 0xc(%rsp)
movq %rcx, 0x18(%rsp)
shlq $0x4, %rcx
movq %rcx, 0x30(%rsp)
movq (%rcx,%r15), %rbx
movq %rbp, %rdi
callq 0x2150
movq %rax, %r12
movq %rbx, %r13
movq %r13, %rdi
movq %rbp, %rsi
callq 0x23d0
testq %rax, %rax
je 0x3c6f
movq %rax, %r13
movq %rbp, %r15
movb $0x1, %r14b
movb $0x1, %bpl
cmpq %rbx, %rax
je 0x3c25
movsbl -0x1(%r13), %esi
leaq 0x346b(%rip), %rdi      # 0x7081
pushq $0xa
popq %rdx
callq 0x21e0
testq %rax, %rax
setne %bpl
movsbl (%r13,%r12), %esi
testl %esi, %esi
je 0x3c45
leaq 0x344b(%rip), %rdi      # 0x7081
pushq $0xa
popq %rdx
callq 0x21e0
testq %rax, %rax
setne %r14b
andb %r14b, %bpl
incq %r13
cmpb $0x1, %bpl
movq %r15, %rbp
jne 0x3be9
movq 0x10(%rsp), %rax
movq 0x30(%rsp), %rcx
movl $0xfffffffd, (%rax,%rcx) # imm = 0xFFFFFFFD
movl 0xc(%rsp), %r14d
incl %r14d
jmp 0x3c74
movl 0xc(%rsp), %r14d
movq 0x18(%rsp), %rcx
incq %rcx
leaq 0x70cd(%rip), %r15      # 0xad50
jmp 0x3bb9
testl %r14d, %r14d
jg 0x3cca
xorl %ebx, %ebx
cmpq %rbx, 0x20(%rsp)
je 0x3cdb
movq (%rbx,%r15), %rdi
movq %rbp, %rsi
callq 0x23d0
testq %rax, %rax
je 0x3cb6
movq 0x10(%rsp), %rax
movl $0xfffffffd, (%rax,%rbx) # imm = 0xFFFFFFFD
incl %r14d
addq $0x10, %rbx
jmp 0x3c8f
movl 0x755e(%rip), %eax      # 0xb220
incl %eax
movl %eax, 0x7556(%rip)      # 0xb220
xorl %eax, %eax
addq $0x38, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
retq
testl %r14d, %r14d
jne 0x3cca
movq 0x7309(%rip), %rbx      # 0xaff0
movq (%rbx), %rdi
movq 0x7787(%rip), %rdx      # 0xb478
leaq 0x3d77(%rip), %rsi      # 0x7a6f
movq %rbp, %rcx
xorl %eax, %eax
callq 0x2250
movq (%rbx), %rdi
movq 0x776c(%rip), %rdx      # 0xb478
leaq 0x3d7d(%rip), %rsi      # 0x7a90
jmp 0x3d8b
callq 0x4da8
jmp 0x3d21
callq 0x4de8
xorl %edi, %edi
callq 0x2f40
movq 0x72c1(%rip), %rbx      # 0xaff0
movq (%rbx), %rdi
leaq 0x3d80(%rip), %rsi      # 0x7ab9
jmp 0x3d4c
movq 0x72ae(%rip), %rbx      # 0xaff0
movq (%rbx), %rdi
leaq 0x3d95(%rip), %rsi      # 0x7ae1
movq %rbp, %rdx
xorl %eax, %eax
callq 0x2250
jmp 0x3d7a
movq 0x7291(%rip), %rbx      # 0xaff0
movq (%rbx), %rdi
movq 0x770f(%rip), %rdx      # 0xb478
leaq 0x3c7d(%rip), %rsi      # 0x79ed
movq %rbp, %rcx
xorl %eax, %eax
callq 0x2250
movq (%rbx), %rdi
movq 0x76f4(%rip), %rdx      # 0xb478
leaq 0x3c32(%rip), %rsi      # 0x79bd
xorl %eax, %eax
callq 0x2250
pushq $0x2
popq %rdi
callq 0x2f40