// File: /workspace/github_c_makefile_star2_O0/nimble-code[P]Modex/Src/tree.c
// Function: name_of_node
char*
name_of_node(tn_t val)
{
    switch (val)
    {
    case TN_EMPTY:
        return SHOW(TN_EMPTY);

    case TN_FUNC_DEF:
        return SHOW(TN_FUNC_DEF);
    case TN_FUNC_DECL:
        return SHOW(TN_FUNC_DECL);
    case TN_FUNC_CALL:
        return SHOW(TN_FUNC_CALL);
    case TN_BLOCK:
        return SHOW(TN_BLOCK);
    case TN_DECL:
        return SHOW(TN_DECL);
    case TN_ARRAY_DECL:
        return SHOW(TN_ARRAY_DECL);

    case TN_TRANS_LIST:
        return SHOW(TN_TRANS_LIST);
    case TN_DECL_LIST:
        return SHOW(TN_DECL_LIST);
    case TN_DECLS:
        return SHOW(TN_DECLS);
    case TN_STEMNT_LIST:
        return SHOW(TN_STEMNT_LIST);
    case TN_EXPR_LIST:
        return SHOW(TN_EXPR_LIST);
    case TN_NAME_LIST:
        return SHOW(TN_NAME_LIST);
    case TN_ENUM_LIST:
        return SHOW(TN_ENUM_LIST);
    case TN_FIELD_LIST:
        return SHOW(TN_FIELD_LIST);
    case TN_PARAM_LIST:
        return SHOW(TN_PARAM_LIST);
    case TN_IDENT_LIST:
        return SHOW(TN_IDENT_LIST);

    case TN_COMP_DECL:
        return SHOW(TN_COMP_DECL);
    case TN_BIT_FIELD:
        return SHOW(TN_BIT_FIELD);
    case TN_PNTR:
        return SHOW(TN_PNTR);

    case TN_TYPE_LIST:
        return SHOW(TN_TYPE_LIST);
    case TN_TYPE_NME:
        return SHOW(TN_TYPE_NME);

    case TN_INIT_LIST:
        return SHOW(TN_INIT_LIST);
    case TN_INIT_BLK:
        return SHOW(TN_INIT_BLK);

    case TN_OBJ_DEF:
        return SHOW(TN_OBJ_DEF);
    case TN_OBJ_REF:
        return SHOW(TN_OBJ_REF);

    case TN_CAST:
        return SHOW(TN_CAST);
    case TN_IF:
        return SHOW(TN_IF);
    case TN_ASSIGN:
        return SHOW(TN_ASSIGN);
    case TN_JUMP:
        return SHOW(TN_JUMP);
    case TN_FOR:
        return SHOW(TN_FOR);
    case TN_WHILE:
        return SHOW(TN_WHILE);
    case TN_DOWHILE:
        return SHOW(TN_DOWHILE);
    case TN_SWITCH:
        return SHOW(TN_SWITCH);
    case TN_LABEL:
        return SHOW(TN_LABEL);
    case TN_STEMNT:
        return SHOW(TN_STEMNT);

    case TN_INDEX:
        return SHOW(TN_INDEX);
    case TN_DEREF:
        return SHOW(TN_DEREF);
    case TN_SELECT:
        return SHOW(TN_SELECT);

    case TN_EXPR:
        return SHOW(TN_EXPR);
    case TN_COND_EXPR:
        return SHOW(TN_COND_EXPR);

    case TN_COMMENT:
        return SHOW(TN_COMMENT);
    case TN_CPP:
        return SHOW(TN_CPP);

    case TN_ELLIPSIS:
        return SHOW(TN_ELLIPSIS);
    case TN_IDENT:
        return SHOW(TN_IDENT);
    case TN_TYPE:
        return SHOW(TN_TYPE);
    case TN_STRING:
        return SHOW(TN_STRING);

    case TN_INT:
        return SHOW(TN_INT);

    case TN_REAL:
        return SHOW(TN_REAL);

    default:
        return "<Unknown Node Name>";
    }
}

// Assembly:
pushq %rbp
movq %rsp, %rbp
movl %edi, -0xc(%rbp)
movl -0xc(%rbp), %eax
movq %rax, -0x18(%rbp)
subq $0x31, %rax
ja 0x1bf61
movq -0x18(%rbp), %rax
leaq 0x1bf51(%rip), %rcx     # 0x37bb4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x1c4eb(%rip), %rax     # 0x3815e
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4e4(%rip), %rax     # 0x38167
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4e0(%rip), %rax     # 0x38173
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4dd(%rip), %rax     # 0x38180
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4da(%rip), %rax     # 0x3818d
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4d3(%rip), %rax     # 0x38196
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4cb(%rip), %rax     # 0x3819e
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4c9(%rip), %rax     # 0x381ac
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4c7(%rip), %rax     # 0x381ba
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4c4(%rip), %rax     # 0x381c7
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4bd(%rip), %rax     # 0x381d0
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4bc(%rip), %rax     # 0x381df
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4b9(%rip), %rax     # 0x381ec
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4b6(%rip), %rax     # 0x381f9
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4b3(%rip), %rax     # 0x38206
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4b1(%rip), %rax     # 0x38214
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4af(%rip), %rax     # 0x38222
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4ad(%rip), %rax     # 0x38230
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4aa(%rip), %rax     # 0x3823d
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c4a7(%rip), %rax     # 0x3824a
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c49f(%rip), %rax     # 0x38252
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c49c(%rip), %rax     # 0x3825f
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c498(%rip), %rax     # 0x3826b
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c495(%rip), %rax     # 0x38278
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c491(%rip), %rax     # 0x38284
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c48c(%rip), %rax     # 0x3828f
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c487(%rip), %rax     # 0x3829a
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c47f(%rip), %rax     # 0x382a2
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c475(%rip), %rax     # 0x382a8
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c46f(%rip), %rax     # 0x382b2
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c467(%rip), %rax     # 0x382ba
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c45e(%rip), %rax     # 0x382c1
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c457(%rip), %rax     # 0x382ca
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c452(%rip), %rax     # 0x382d5
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c44c(%rip), %rax     # 0x382df
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c445(%rip), %rax     # 0x382e8
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c43f(%rip), %rax     # 0x382f2
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c438(%rip), %rax     # 0x382fb
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c431(%rip), %rax     # 0x38304
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c42b(%rip), %rax     # 0x3830e
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c423(%rip), %rax     # 0x38316
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c423(%rip), %rax     # 0x38323
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c421(%rip), %rax     # 0x3832e
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c41b(%rip), %rax     # 0x38335
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c41a(%rip), %rax     # 0x38341
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c416(%rip), %rax     # 0x3834a
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c411(%rip), %rax     # 0x38352
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c40e(%rip), %rax     # 0x3835c
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c408(%rip), %rax     # 0x38363
movq %rax, -0x8(%rbp)
jmp 0x1bf6c
leaq 0x1c403(%rip), %rax     # 0x3836b
movq %rax, -0x8(%rbp)
movq -0x8(%rbp), %rax
popq %rbp
retq
nopw %cs:(%rax,%rax)