// File: /workspace/github_c_makefile_star2_O1/ryvnf[P]czc/eval.c
// Function: op_to_name
const char *op_to_name(enum ast_tag tag)
{
    switch (tag) {
        case COMMA_EXPR:
            return "binary ,";
        case COND_EXPR:
            return "binary ?:";
        case ASGN_EXPR:
            return "binary =";
        case ADD_ASGN_EXPR:
            return "binary +=";
        case SUB_ASGN_EXPR:
            return "binary -=";
        case MUL_ASGN_EXPR:
            return "binary *=";
        case DIV_ASGN_EXPR:
            return "binary /=";
        case REM_ASGN_EXPR:
            return "binary %=";
        case OR_ASGN_EXPR:
            return "binary |=";
        case XOR_ASGN_EXPR:
            return "binary ~=";
        case AND_ASGN_EXPR:
            return "binary &=";
        case SHL_ASGN_EXPR:
            return "binary <<=";
        case SHR_ASGN_EXPR:
            return "binary >>=";
        case LOR_EXPR:
            return "binary ||";
        case LAND_EXPR:
            return "binary &&";
        case OR_EXPR:
            return "binary |";
        case XOR_EXPR:
            return "binary ~";
        case AND_EXPR:
            return "binary &";
        case EQ_EXPR:
            return "binary ==";
        case NE_EXPR:
            return "binary !=";
        case LT_EXPR:
            return "binary <";
        case GT_EXPR:
            return "binary >";
        case LE_EXPR:
            return "binary <=";
        case GE_EXPR:
            return "binary >=";
        case SHL_EXPR:
            return "binary <<";
        case SHR_EXPR:
            return "binary >>";
        case ADD_EXPR:
            return "binary +";
        case SUB_EXPR:
            return "binary -";
        case MUL_EXPR:
            return "binary *";
        case DIV_EXPR:
            return "binary /";
        case REM_EXPR:
            return "binary %";
        case NOT_EXPR:
            return "unary !";
        case COMPL_EXPR:
            return "unary ~";
        case UPLUS_EXPR:
            return "unary +";
        case NEG_EXPR:
            return "unary -";
        case REF_EXPR:
            return "reference ^";
        case DEREF_EXPR:
            return "dereference ^";
        case PRE_INC_EXPR:
            return "unary prefix ++";
        case PRE_DEC_EXPR:
            return "unary prefix --";
        case POST_INC_EXPR:
            return "unary postfix ++";
        case POST_DEC_EXPR:
            return "unary postfix --";
        case SIZEOF_EXPR:
            return "sizeof";
        case SUBSCR_EXPR:
            return "array subscript";
        case CALL_EXPR:
            return "function call";
        case MEMBER_EXPR:
            return "member access";
    }
    return ast_tag_name(tag);
}

// Assembly:
cmpl $0x428f, %edi           # imm = 0x428F
jg 0x515b
cmpl $0x423f, %edi           # imm = 0x423F
jg 0x518b
leal -0x4220(%rdi), %eax
cmpl $0x10, %eax
ja 0x525c
leaq 0x87fe(%rip), %rcx      # 0xd948
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x8ae1(%rip), %rax      # 0xdc3b
retq
cmpl $0x42b0, %edi           # imm = 0x42B0
jg 0x51d6
cmpl $0x42a0, %edi           # imm = 0x42A0
jg 0x51ba
cmpl $0x4290, %edi           # imm = 0x4290
je 0x51f9
cmpl $0x42a0, %edi           # imm = 0x42A0
jne 0x533c
leaq 0x8b89(%rip), %rax      # 0xdd13
retq
cmpl $0x425f, %edi           # imm = 0x425F
jle 0x5209
leal -0x4260(%rdi), %eax
cmpl $0x3, %eax
ja 0x527c
leaq 0x87e3(%rip), %rcx      # 0xd98c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x8b34(%rip), %rax      # 0xdced
retq
cmpl $0x42a1, %edi           # imm = 0x42A1
je 0x5201
cmpl $0x42b0, %edi           # imm = 0x42B0
jne 0x533c
leaq 0x8b52(%rip), %rax      # 0xdd27
retq
leal -0x42c0(%rdi), %eax
cmpl $0x17, %eax
ja 0x5235
leaq 0x87b4(%rip), %rcx      # 0xd99c
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x8b41(%rip), %rax      # 0xdd39
retq
leaq 0x8ad0(%rip), %rax      # 0xdcd0
retq
leaq 0x8b15(%rip), %rax      # 0xdd1d
retq
cmpl $0x4240, %edi           # imm = 0x4240
je 0x530c
cmpl $0x4250, %edi           # imm = 0x4250
je 0x52fc
cmpl $0x4251, %edi           # imm = 0x4251
jne 0x533c
leaq 0x8aaf(%rip), %rax      # 0xdce3
retq
leal -0x42f0(%rdi), %eax
cmpl $0x5, %eax
ja 0x532c
leaq 0x87b1(%rip), %rcx      # 0xd9fc
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
leaq 0x8b19(%rip), %rax      # 0xdd74
retq
cmpl $0x4200, %edi           # imm = 0x4200
je 0x5324
cmpl $0x4210, %edi           # imm = 0x4210
jne 0x533c
leaq 0x89b6(%rip), %rax      # 0xdc31
retq
cmpl $0x4270, %edi           # imm = 0x4270
je 0x531c
cmpl $0x4280, %edi           # imm = 0x4280
jne 0x533c
leaq 0x8a2c(%rip), %rax      # 0xdcc7
retq
leaq 0x89dd(%rip), %rax      # 0xdc80
retq
leaq 0x89df(%rip), %rax      # 0xdc8a
retq
leaq 0x89b9(%rip), %rax      # 0xdc6c
retq
leaq 0x8993(%rip), %rax      # 0xdc4e
retq
leaq 0x89dc(%rip), %rax      # 0xdc9f
retq
leaq 0x8997(%rip), %rax      # 0xdc62
retq
leaq 0x8971(%rip), %rax      # 0xdc44
retq
leaq 0x897d(%rip), %rax      # 0xdc58
retq
leaq 0x8993(%rip), %rax      # 0xdc76
retq
leaq 0x89bf(%rip), %rax      # 0xdcaa
retq
leaq 0x89a1(%rip), %rax      # 0xdc94
retq
leaq 0x8a04(%rip), %rax      # 0xdcff
retq
leaq 0x89d6(%rip), %rax      # 0xdcd9
retq
leaq 0x89fe(%rip), %rax      # 0xdd09
retq
leaq 0x89a1(%rip), %rax      # 0xdcb4
retq
leaq 0x89db(%rip), %rax      # 0xdcf6
retq
leaq 0x899b(%rip), %rax      # 0xdcbe
retq
leaq 0x88fd(%rip), %rax      # 0xdc28
retq
cmpl $0x42b1, %edi           # imm = 0x42B1
jne 0x533c
leaq 0x89f5(%rip), %rax      # 0xdd30
retq
jmp 0x2874
leaq 0x8a2e(%rip), %rax      # 0xdd76
retq
leaq 0x8a0c(%rip), %rax      # 0xdd5c
retq
leaq 0x8a14(%rip), %rax      # 0xdd6c
retq
leaq 0x8a22(%rip), %rax      # 0xdd82
retq
leaq 0x89ec(%rip), %rax      # 0xdd54
retq
leaq 0x89db(%rip), %rax      # 0xdd4b
retq
leaq 0x89ca(%rip), %rax      # 0xdd42
retq
leaq 0x8a44(%rip), %rax      # 0xddc4
retq
leaq 0x89dc(%rip), %rax      # 0xdd64
retq
leaq 0x8a02(%rip), %rax      # 0xdd92
retq
leaq 0x8a1b(%rip), %rax      # 0xddb3
retq
leaq 0x8adc(%rip), %rax      # 0xde7c
retq
leaq 0x89fa(%rip), %rax      # 0xdda2
retq
leaq 0x8a1b(%rip), %rax      # 0xddcb
retq
leaq 0x8a23(%rip), %rax      # 0xdddb
retq