// File: /workspace/github_c_makefile_star2_O0/voithos[P]awl/src/types.c
// Function: awlval_parse_sysname
awlval_type_t awlval_parse_sysname(const char* sysname) {
    /* Ordering reflects most common types first */
    if (streq(sysname, "int")) {
        return AWLVAL_INT;
    } else if (streq(sysname, "float")) {
        return AWLVAL_FLOAT;
    } else if (streq(sysname, "str")) {
        return AWLVAL_STR;
    } else if (streq(sysname, "bool")) {
        return AWLVAL_BOOL;
    } else if (streq(sysname, "qsym")) {
        return AWLVAL_QSYM;
    } else if (streq(sysname, "qexpr")) {
        return AWLVAL_QEXPR;
    } else if (streq(sysname, "err")) {
        return AWLVAL_ERR;
    } else if (streq(sysname, "builtin")) {
        return AWLVAL_BUILTIN;
    } else if (streq(sysname, "fn")) {
        return AWLVAL_FN;
    } else if (streq(sysname, "macro")) {
        return AWLVAL_MACRO;
    } else if (streq(sysname, "sym")) {
        return AWLVAL_SYM;
    } else if (streq(sysname, "dict")) {
        return AWLVAL_DICT;
    } else if (streq(sysname, "sexpr")) {
        return AWLVAL_SEXPR;
    } else if (streq(sysname, "eexpr")) {
        return AWLVAL_EEXPR;
    } else if (streq(sysname, "cexpr")) {
        return AWLVAL_CEXPR;
    } else {
        errno = EINVAL;
        return 0;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x10, %rsp
movq %rdi, -0x10(%rbp)
movq -0x10(%rbp), %rdi
leaq 0x4ec9(%rip), %rsi      # 0x1b2c0
callq 0x18d50
testb $0x1, %al
jne 0x16402
jmp 0x1640e
movl $0x0, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x4c1a(%rip), %rsi      # 0x1b033
callq 0x18d50
testb $0x1, %al
jne 0x16424
jmp 0x16430
movl $0x1, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x56e2(%rip), %rsi      # 0x1bb1d
callq 0x18d50
testb $0x1, %al
jne 0x16446
jmp 0x16452
movl $0x5, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x4e67(%rip), %rsi      # 0x1b2c4
callq 0x18d50
testb $0x1, %al
jne 0x16468
jmp 0x16474
movl $0x6, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x5699(%rip), %rsi      # 0x1bb18
callq 0x18d50
testb $0x1, %al
jne 0x1648a
jmp 0x16496
movl $0x4, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x4e3e(%rip), %rsi      # 0x1b2df
callq 0x18d50
testb $0x1, %al
jne 0x164ac
jmp 0x164b8
movl $0xc, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x5649(%rip), %rsi      # 0x1bb0c
callq 0x18d50
testb $0x1, %al
jne 0x164ce
jmp 0x164da
movl $0x2, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x562b(%rip), %rsi      # 0x1bb10
callq 0x18d50
testb $0x1, %al
jne 0x164f0
jmp 0x164fc
movl $0x7, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x3f41(%rip), %rsi      # 0x1a448
callq 0x18d50
testb $0x1, %al
jne 0x16512
jmp 0x1651e
movl $0x8, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x3fb0(%rip), %rsi      # 0x1a4d9
callq 0x18d50
testb $0x1, %al
jne 0x16534
jmp 0x16540
movl $0x9, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x55ce(%rip), %rsi      # 0x1bb19
callq 0x18d50
testb $0x1, %al
jne 0x16556
jmp 0x16562
movl $0x3, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x4d78(%rip), %rsi      # 0x1b2e5
callq 0x18d50
testb $0x1, %al
jne 0x16578
jmp 0x16581
movl $0xa, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x4d4d(%rip), %rsi      # 0x1b2d9
callq 0x18d50
testb $0x1, %al
jne 0x16597
jmp 0x165a0
movl $0xb, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x4d3f(%rip), %rsi      # 0x1b2ea
callq 0x18d50
testb $0x1, %al
jne 0x165b6
jmp 0x165bf
movl $0xd, -0x4(%rbp)
jmp 0x165f0
movq -0x10(%rbp), %rdi
leaq 0x4d26(%rip), %rsi      # 0x1b2f0
callq 0x18d50
testb $0x1, %al
jne 0x165d5
jmp 0x165de
movl $0xe, -0x4(%rbp)
jmp 0x165f0
callq 0x2050
movl $0x16, (%rax)
movl $0x0, -0x4(%rbp)
movl -0x4(%rbp), %eax
addq $0x10, %rsp
popq %rbp
retq
nopl (%rax)