// File: /workspace/github_cpp_makefile_star2_O3/tsoding[P]wcc/src/./wcc_alexer.cpp
// Function: print1(_IO_FILE*, Token_Type)
void print1(FILE *stream, Token_Type type)
{
    switch (type) {
    case Token_Type::Func: print(stream, "Func"); break;
    case Token_Type::Symbol: print(stream, "Symbol"); break;
    case Token_Type::Open_Paren: print(stream, "Open_Paren"); break;
    case Token_Type::Closed_Paren: print(stream, "Closed_Paren"); break;
    case Token_Type::Colon: print(stream, "Colon"); break;
    case Token_Type::Open_Curly: print(stream, "Open_Curly"); break;
    case Token_Type::Closed_Curly: print(stream, "Closed_Curly"); break;
    case Token_Type::Local: print(stream, "Local"); break;
    case Token_Type::Equals: print(stream, "Equals"); break;
    case Token_Type::Number_Literal: print(stream, "Number_Literal"); break;
    case Token_Type::While: print(stream, "While"); break;
    case Token_Type::Greater: print(stream, "Greater"); break;
    case Token_Type::Less_Equals: print(stream, "Less_Equals"); break;
    case Token_Type::Plus: print(stream, "Plus"); break;
    case Token_Type::Minus_Equals: print(stream, "Minus_Equals"); break;
    case Token_Type::Minus: print(stream, "Minus"); break;
    case Token_Type::Semicolon: print(stream, "Semicolon"); break;
    case Token_Type::Comma: print(stream, "Comma"); break;
    case Token_Type::And: print(stream, "And"); break;
    case Token_Type::Rem: print(stream, "Rem"); break;
    case Token_Type::If: print(stream, "If"); break;
    case Token_Type::Else: print(stream, "Else"); break;
    case Token_Type::Asterisk: print(stream, "Asterisk"); break;
    case Token_Type::Equals_Equals: print(stream, "Equals_Equals"); break;
    case Token_Type::Return: print(stream, "Return"); break;
    case Token_Type::True: print(stream, "True"); break;
    case Token_Type::False: print(stream, "False"); break;
    case Token_Type::Plus_Equals: print(stream, "Plus_Equals"); break;
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
cmpl $0x1b, %esi
ja 0x27c3
movq %rdi, %rcx
movl %esi, %eax
leaq 0x6a52(%rip), %rdx      # 0x9074
movslq (%rdx,%rax,4), %rax
addq %rdx, %rax
jmpq *%rax
leaq 0x7229(%rip), %rdi      # 0x985b
jmp 0x27cc
leaq 0x72e9(%rip), %rdi      # 0x9927
jmp 0x2788
leaq 0x7287(%rip), %rdi      # 0x98d1
jmp 0x26d9
leaq 0x726a(%rip), %rdi      # 0x98c0
jmp 0x2705
leaq 0x7241(%rip), %rdi      # 0x98a3
movl $0x1, %esi
movl $0xe, %edx
jmp 0x27d6
leaq 0x7207(%rip), %rdi      # 0x987f
jmp 0x2788
leaq 0x722e(%rip), %rdi      # 0x98b2
jmp 0x2788
leaq 0x7284(%rip), %rdi      # 0x9914
jmp 0x26ef
leaq 0x7282(%rip), %rdi      # 0x991b
jmp 0x26ef
leaq 0x7262(%rip), %rdi      # 0x9904
movl $0x1, %esi
movl $0x8, %edx
jmp 0x27d6
leaq 0x71af(%rip), %rdi      # 0x9867
jmp 0x2759
leaq 0x7208(%rip), %rdi      # 0x98cc
jmp 0x27cc
leaq 0x71a2(%rip), %rdi      # 0x9872
jmp 0x26d9
leaq 0x71b7(%rip), %rdi      # 0x9890
movl $0x1, %esi
movl $0xc, %edx
jmp 0x27d6
leaq 0x7171(%rip), %rdi      # 0x9860
movl $0x1, %esi
movl $0x6, %edx
jmp 0x27d6
leaq 0x7228(%rip), %rdi      # 0x992d
movl $0x1, %esi
movl $0xb, %edx
jmp 0x27d6
leaq 0x71d9(%rip), %rdi      # 0x98f4
jmp 0x272d
leaq 0x71ca(%rip), %rdi      # 0x98ee
jmp 0x2788
leaq 0x71cb(%rip), %rdi      # 0x98f8
movl $0x1, %esi
movl $0x3, %edx
jmp 0x27d6
leaq 0x7175(%rip), %rdi      # 0x98b8
movl $0x1, %esi
movl $0x7, %edx
jmp 0x27d6
leaq 0x712c(%rip), %rdi      # 0x9885
movl $0x1, %esi
movl $0xa, %edx
jmp 0x27d6
leaq 0x7172(%rip), %rdi      # 0x98de
jmp 0x2788
leaq 0x7198(%rip), %rdi      # 0x990d
movl $0x1, %esi
movl $0xd, %edx
jmp 0x27d6
leaq 0x7115(%rip), %rdi      # 0x989d
movl $0x1, %esi
movl $0x5, %edx
jmp 0x27d6
leaq 0x7161(%rip), %rdi      # 0x98fc
movl $0x1, %esi
movl $0x2, %edx
jmp 0x27d6
leaq 0x7136(%rip), %rdi      # 0x98e4
movl $0x1, %esi
movl $0x9, %edx
jmp 0x27d6
leaq 0x713e(%rip), %rdi      # 0x98ff
jmp 0x27cc
popq %rbp
retq
leaq 0x7156(%rip), %rdi      # 0x9922
movl $0x1, %esi
movl $0x4, %edx
popq %rbp
jmp 0x1190