// File: /workspace/github_c_makefile_star2_O0/c-zhou[P]yahs/./agp-spec.h
// Function: agp_gap_type_key
static inline const uint32_t agp_gap_type_key(const char *val)
{
    uint32_t key = AGPSpec_hash(val);
    int c = 0;
    switch ((AGP_GT_t) key) {
        case AGP_GT_SCAFFOLD:        c = check_collision(val, "scaffold"); break;
        case AGP_GT_CONTIG:          c = check_collision(val, "contig"); break;
        case AGP_GT_CENTROMERE:      c = check_collision(val, "centromere"); break;
        case AGP_GT_SHORT_ARM:       c = check_collision(val, "short_arm"); break;
        case AGP_GT_HETEROCHROMATIN: c = check_collision(val, "heterochromatin"); break;
        case AGP_GT_TELOMERE:        c = check_collision(val, "telomere"); break;
        case AGP_GT_REPEAT:          c = check_collision(val, "repeat"); break;
        case AGP_GT_CONTAMINATION:   c = check_collision(val, "contamination"); break;
        default:                     AGPSpec_die("[E::%s] AGP gap type VAL error: %s\n", __func__, val);
    }
    if (c) AGPSpec_die("[E::%s] AGP gap type VAL error (hash collision): %s\n", __func__, val);
    return key;
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
subq $0x20, %rsp
movq %rdi, -0x8(%rbp)
movq -0x8(%rbp), %rdi
callq 0xb540
movl %eax, -0xc(%rbp)
movl $0x0, -0x10(%rbp)
movl -0xc(%rbp), %eax
movl %eax, -0x14(%rbp)
subl $0xb3971714, %eax       # imm = 0xB3971714
je 0x7f52
jmp 0x7ea2
movl -0x14(%rbp), %eax
subl $0xd066abb9, %eax       # imm = 0xD066ABB9
je 0x7fa6
jmp 0x7eb2
movl -0x14(%rbp), %eax
subl $0xec44fe02, %eax       # imm = 0xEC44FE02
je 0x7f7c
jmp 0x7ec2
movl -0x14(%rbp), %eax
subl $0xf6e4a809, %eax       # imm = 0xF6E4A809
je 0x7f22
jmp 0x7ece
movl -0x14(%rbp), %eax
subl $0x1297c4f1, %eax       # imm = 0x1297C4F1
je 0x7f67
jmp 0x7ede
movl -0x14(%rbp), %eax
subl $0x192dec66, %eax       # imm = 0x192DEC66
je 0x7f91
jmp 0x7eee
movl -0x14(%rbp), %eax
subl $0x328bce39, %eax       # imm = 0x328BCE39
je 0x7f3a
jmp 0x7efa
movl -0x14(%rbp), %eax
subl $0x4bbf6747, %eax       # imm = 0x4BBF6747
jne 0x7fbb
jmp 0x7f0a
movq -0x8(%rbp), %rdi
leaq 0x5a08(%rip), %rsi      # 0xd91d
callq 0xb590
movl %eax, -0x10(%rbp)
jmp 0x7fd4
movq -0x8(%rbp), %rdi
leaq 0x5b5a(%rip), %rsi      # 0xda87
callq 0xb590
movl %eax, -0x10(%rbp)
jmp 0x7fd4
movq -0x8(%rbp), %rdi
leaq 0x59e1(%rip), %rsi      # 0xd926
callq 0xb590
movl %eax, -0x10(%rbp)
jmp 0x7fd4
movq -0x8(%rbp), %rdi
leaq 0x59d4(%rip), %rsi      # 0xd931
callq 0xb590
movl %eax, -0x10(%rbp)
jmp 0x7fd4
movq -0x8(%rbp), %rdi
leaq 0x59c9(%rip), %rsi      # 0xd93b
callq 0xb590
movl %eax, -0x10(%rbp)
jmp 0x7fd4
movq -0x8(%rbp), %rdi
leaq 0x59c4(%rip), %rsi      # 0xd94b
callq 0xb590
movl %eax, -0x10(%rbp)
jmp 0x7fd4
movq -0x8(%rbp), %rdi
leaq 0x59b8(%rip), %rsi      # 0xd954
callq 0xb590
movl %eax, -0x10(%rbp)
jmp 0x7fd4
movq -0x8(%rbp), %rdi
leaq 0x59aa(%rip), %rsi      # 0xd95b
callq 0xb590
movl %eax, -0x10(%rbp)
jmp 0x7fd4
movq -0x8(%rbp), %rdx
leaq 0x59a3(%rip), %rdi      # 0xd969
leaq 0x59c0(%rip), %rsi      # 0xd98d
movb $0x0, %al
callq 0xb630
cmpl $0x0, -0x10(%rbp)
je 0x7ff3
movq -0x8(%rbp), %rdx
leaq 0x59b9(%rip), %rdi      # 0xd99e
leaq 0x59a1(%rip), %rsi      # 0xd98d
movb $0x0, %al
callq 0xb630
movl -0xc(%rbp), %eax
addq $0x20, %rsp
popq %rbp
retq
nopl (%rax)