// File: /workspace/github_cpp_makefile_star2_O3/jstaursky[P]hutch/src/build/pcodeparse.cc
// Function: yydestruct(char const*, yysymbol_kind_t, YYSTYPE*)
static void
yydestruct (const char *yymsg,
            yysymbol_kind_t yykind, YYSTYPE *yyvaluep)
{
  YY_USE (yyvaluep);
  if (!yymsg)
    yymsg = "Deleting";
  YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp);

  YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
  switch (yykind)
    {
    case YYSYMBOL_INTEGER: /* INTEGER  */
#line 90 "parser-tools/pcodeparse.y"
            { delete ((*yyvaluep).i); }
#line 1537 "src/build/pcodeparse.cc"
        break;

    case YYSYMBOL_STRING: /* STRING  */
#line 91 "parser-tools/pcodeparse.y"
            { delete ((*yyvaluep).str); }
#line 1543 "src/build/pcodeparse.cc"
        break;

    case YYSYMBOL_rtlmid: /* rtlmid  */
#line 93 "parser-tools/pcodeparse.y"
            { delete ((*yyvaluep).sem); }
#line 1549 "src/build/pcodeparse.cc"
        break;

    case YYSYMBOL_statement: /* statement  */
#line 94 "parser-tools/pcodeparse.y"
            { if (((*yyvaluep).stmt) != (vector<OpTpl *> *)0) { for(int4 i=0;i<((*yyvaluep).stmt)->size();++i) delete (*((*yyvaluep).stmt))[i]; delete ((*yyvaluep).stmt);} }
#line 1555 "src/build/pcodeparse.cc"
        break;

    case YYSYMBOL_expr: /* expr  */
#line 95 "parser-tools/pcodeparse.y"
            { delete ((*yyvaluep).tree); }
#line 1561 "src/build/pcodeparse.cc"
        break;

    case YYSYMBOL_sizedstar: /* sizedstar  */
#line 97 "parser-tools/pcodeparse.y"
            { delete ((*yyvaluep).starqual); }
#line 1567 "src/build/pcodeparse.cc"
        break;

    case YYSYMBOL_jumpdest: /* jumpdest  */
#line 96 "parser-tools/pcodeparse.y"
            { if (((*yyvaluep).varnode) != (VarnodeTpl *)0) delete ((*yyvaluep).varnode); }
#line 1573 "src/build/pcodeparse.cc"
        break;

    case YYSYMBOL_varnode: /* varnode  */
#line 96 "parser-tools/pcodeparse.y"
            { if (((*yyvaluep).varnode) != (VarnodeTpl *)0) delete ((*yyvaluep).varnode); }
#line 1579 "src/build/pcodeparse.cc"
        break;

    case YYSYMBOL_integervarnode: /* integervarnode  */
#line 96 "parser-tools/pcodeparse.y"
            { if (((*yyvaluep).varnode) != (VarnodeTpl *)0) delete ((*yyvaluep).varnode); }
#line 1585 "src/build/pcodeparse.cc"
        break;

    case YYSYMBOL_lhsvarnode: /* lhsvarnode  */
#line 96 "parser-tools/pcodeparse.y"
            { if (((*yyvaluep).varnode) != (VarnodeTpl *)0) delete ((*yyvaluep).varnode); }
#line 1591 "src/build/pcodeparse.cc"
        break;

    case YYSYMBOL_paramlist: /* paramlist  */
#line 92 "parser-tools/pcodeparse.y"
            { for(int4 i=0;i<((*yyvaluep).param)->size();++i) delete (*((*yyvaluep).param))[i]; delete ((*yyvaluep).param); }
#line 1597 "src/build/pcodeparse.cc"
        break;

      default:
        break;
    }
  YY_IGNORE_MAYBE_UNINITIALIZED_END
}

// Assembly:
pushq %r15
pushq %r14
pushq %rbx
movq %rsi, %rbx
leal -0x53(%rdi), %eax
cmpl $0xa, %eax
ja 0x7d3cc
leaq 0x5a17(%rip), %rcx      # 0x82dc4
movslq (%rcx,%rax,4), %rax
addq %rcx, %rax
jmpq *%rax
movq (%rbx), %rdi
testq %rdi, %rdi
je 0x7d4e0
movl $0x68, %esi
jmp 0x7d508
cmpl $0x41, %edi
je 0x7d500
cmpl $0x42, %edi
jne 0x7d4e0
movq (%rbx), %rbx
testq %rbx, %rbx
je 0x7d3fd
movq (%rbx), %rdi
leaq 0x10(%rbx), %rax
cmpq %rax, %rdi
je 0x7d3fd
movq (%rax), %rsi
incq %rsi
callq 0x40880
movl $0x20, %esi
jmp 0x7d4fb
movq (%rbx), %rbx
testq %rbx, %rbx
je 0x7d417
movq %rbx, %rdi
callq 0x40f60
movl $0x10, %esi
jmp 0x7d4fb
movq (%rbx), %r14
movq (%r14), %rdi
cmpq %rdi, 0x8(%r14)
je 0x7d4c5
xorl %r15d, %r15d
movq (%rdi,%r15,8), %r14
testq %r14, %r14
je 0x7d445
movq %r14, %rdi
callq 0x40f60
movl $0x10, %esi
movq %r14, %rdi
callq 0x40880
incq %r15
movq (%rbx), %r14
movq (%r14), %rdi
movq 0x8(%r14), %rax
subq %rdi, %rax
sarq $0x3, %rax
cmpq %r15, %rax
ja 0x7d434
jmp 0x7d4c5
movq (%rbx), %rdi
movl $0x28, %esi
jmp 0x7d508
movq (%rbx), %r14
testq %r14, %r14
je 0x7d4e0
movq (%r14), %rdi
cmpq %rdi, 0x8(%r14)
je 0x7d4c5
xorl %r15d, %r15d
movq (%rdi,%r15,8), %r14
testq %r14, %r14
je 0x7d49f
movq %r14, %rdi
callq 0x3f1f0
movl $0x28, %esi
movq %r14, %rdi
callq 0x40880
incq %r15
movq (%rbx), %r14
movq (%r14), %rdi
movq 0x8(%r14), %rax
subq %rdi, %rax
sarq $0x3, %rax
cmpq %r15, %rax
ja 0x7d48e
testq %rdi, %rdi
je 0x7d4d6
movq 0x10(%r14), %rsi
subq %rdi, %rsi
callq 0x40880
movl $0x18, %esi
movq %r14, %rdi
jmp 0x7d508
popq %rbx
popq %r14
popq %r15
retq
movq (%rbx), %rbx
testq %rbx, %rbx
je 0x7d4f6
movq %rbx, %rdi
callq 0x41750
movl $0x28, %esi
movq %rbx, %rdi
jmp 0x7d508
movq (%rbx), %rdi
movl $0x8, %esi
popq %rbx
popq %r14
popq %r15
jmp 0x40880