char *yyprintname(n)
int n;
{
  if (n <= 50000)
    switch (n) {
    case 1:
      return "YYSTART";
      break;
    case 6:
      return "program";
      break;
    case 15:
      return "program_parts";
      break;
    case 27:
      return "func_proc";
      break;
    case 39:
      return "arguments";
      break;
    case 49:
      return "array_dcl";
      break;
    case 66:
      return "argument";
      break;
    case 72:
      return "func_dcl";
      break;
    case 90:
      return "Subphrase";
      break;
    case 97:
      return "Subphrase";
      break;
    case 104:
      return "extern_dcl";
      break;
    case 111:
      return "proc_dcl";
      break;
    case 129:
      return "Subphrase";
      break;
    case 136:
      return "Subphrase";
      break;
    case 143:
      return "type";
      break;
    case 183:
      return "var_dcl";
      break;
    case 190:
      return "Subphrase";
      break;
    case 197:
      return "var_dcl_cnts";
      break;
    case 207:
      return "var_dcl_cnt";
      break;
    case 215:
      return "struct_dec";
      break;
    case 224:
      return "block";
      break;
    case 230:
      return "Subphrase";
      break;
    case 238:
      return "Subphrase";
      break;
    case 246:
      return "arithmatic_low_level";
      break;
    case 254:
      return "arithmatic_high_level";
      break;
    case 286:
      return "arithmatic";
      break;
    case 326:
      return "conditional";
      break;
    case 350:
      return "binary_op";
      break;
    case 358:
      return "parameters";
      break;
    case 368:
      return "method_call_expr";
      break;
    case 375:
      return "Subphrase";
      break;
    case 382:
      return "array_complete_dcl";
      break;
    case 395:
      return "variable";
      break;
    case 404:
      return "const_val";
      break;
    case 424:
      return "assignment_expr";
      break;
    case 430:
      return "expr_assign";
      break;
    case 438:
      return "loop_stmt";
      break;
    case 470:
      return "Subphrase";
      break;
    case 477:
      return "Subphrase";
      break;
    case 484:
      return "double_unary_op";
      break;
    case 492:
      return "expr";
      break;
    case 536:
      return "cond_statement";
      break;
    case 560:
      return "Subphrase";
      break;
    case 568:
      return "Subphrase";
      break;
    case 579:
      return "gotofunc";
      break;
    case 584:
      return "labeltoken";
      break;
    case 589:
      return "statement_expr";
      break;
    case 640:
      return "Subphrase";
      break;
    case 647:
      return "null_point";
      break;
    }
  else
    switch (n - 50000) {
    case 324:
      return "UNTIL";
      break;
    case 323:
      return "IN";
      break;
    case 322:
      return "OF";
      break;
    case 321:
      return "FOREACH";
      break;
    case 320:
      return "PROCEDURE";
      break;
    case 319:
      return "REPEAT";
      break;
    case 318:
      return "RECORD";
      break;
    case 317:
      return "AUTO";
      break;
    case 316:
      return "VOID";
      break;
    case 315:
      return "SWITCH";
      break;
    case 314:
      return "STRINGKEYWORD";
      break;
    case 313:
      return "STATIC";
      break;
    case 312:
      return "SIZEOF";
      break;
    case 311:
      return "RETURN";
      break;
    case 310:
      return "OUTPUT";
      break;
    case 309:
      return "LONG";
      break;
    case 308:
      return "INT";
      break;
    case 307:
      return "INPUT";
      break;
    case 306:
      return "IF";
      break;
    case 305:
      return "GOTO";
      break;
    case 304:
      return "FOR";
      break;
    case 303:
      return "FLOAT";
      break;
    case 302:
      return "FUNCTION";
      break;
    case 301:
      return "EXTERN";
      break;
    case 300:
      return "ELSE";
      break;
    case 299:
      return "DOUBLE";
      break;
    case 298:
      return "DEFAULT";
      break;
    case 297:
      return "CONTINUE";
      break;
    case 296:
      return "CONST";
      break;
    case 295:
      return "CHARKEYWORD";
      break;
    case 294:
      return "CASE";
      break;
    case 293:
      return "BREAK";
      break;
    case 292:
      return "BOOLEAN";
      break;
    case 291:
      return "COLON";
      break;
    case 290:
      return "SEMICOLON";
      break;
    case 289:
      return "COMMA";
      break;
    case 288:
      return "CLOSINGPAREBTHESIS";
      break;
    case 287:
      return "OPENINGPAREBTHESIS";
      break;
    case 286:
      return "CLOSINGBRACE";
      break;
    case 285:
      return "OPENINGBRACE";
      break;
    case 284:
      return "CLOSECURLYBRACE";
      break;
    case 283:
      return "OPENCURLYBRACE";
      break;
    case 282:
      return "XOR";
      break;
    case 281:
      return "ARITHMETICOR";
      break;
    case 280:
      return "LOGICALOR";
      break;
    case 279:
      return "ARITHMETICAND";
      break;
    case 278:
      return "LOGICALAND";
      break;
    case 277:
      return "MOD";
      break;
    case 276:
      return "PRODUCTION";
      break;
    case 275:
      return "DIV";
      break;
    case 274:
      return "ADDUNARYPLUS";
      break;
    case 273:
      return "INCREMENT";
      break;
    case 272:
      return "SUBUNARYMINUS";
      break;
    case 271:
      return "DECREMENT";
      break;
    case 270:
      return "ASSIGNMENT";
      break;
    case 269:
      return "EQUAL";
      break;
    case 268:
      return "BIGGERTHAN";
      break;
    case 267:
      return "BIGGEROREQUAL";
      break;
    case 266:
      return "LESSTHAN";
      break;
    case 265:
      return "LESSOREQUAL";
      break;
    case 264:
      return "NOT";
      break;
    case 263:
      return "NOTEQUAL";
      break;
    case 262:
      return "REALNUMBER";
      break;
    case 261:
      return "INTNUMBER";
      break;
    case 260:
      return "ID_CODE";
      break;
    case 259:
      return "FALSEV";
      break;
    case 258:
      return "TRUEV";
      break;
    case 257:
      return "STRING";
      break;
    case 256:
      return "CHAR";
      break;
    }
  return "special_character";
}


x86 assembly (clang, -O0):
<yyprintname>:
push   %rbp
mov    %rsp,%rbp
mov    %edi,-0xc(%rbp)
cmpl   $0xc350,-0xc(%rbp)
jg     17b7 <yyprintname+0x6b7>
mov    -0xc(%rbp),%eax
mov    %eax,-0x10(%rbp)
sub    $0x1,%eax
je     14a2 <yyprintname+0x3a2>
jmp    1128 <yyprintname+0x28>
mov    -0x10(%rbp),%eax
sub    $0x6,%eax
je     14b2 <yyprintname+0x3b2>
jmp    1139 <yyprintname+0x39>
mov    -0x10(%rbp),%eax
sub    $0xf,%eax
je     14c2 <yyprintname+0x3c2>
jmp    114a <yyprintname+0x4a>
mov    -0x10(%rbp),%eax
sub    $0x1b,%eax
je     14d2 <yyprintname+0x3d2>
jmp    115b <yyprintname+0x5b>
mov    -0x10(%rbp),%eax
sub    $0x27,%eax
je     14e2 <yyprintname+0x3e2>
jmp    116c <yyprintname+0x6c>
mov    -0x10(%rbp),%eax
sub    $0x31,%eax
je     14f2 <yyprintname+0x3f2>
jmp    117d <yyprintname+0x7d>
mov    -0x10(%rbp),%eax
sub    $0x42,%eax
je     1502 <yyprintname+0x402>
jmp    118e <yyprintname+0x8e>
mov    -0x10(%rbp),%eax
sub    $0x48,%eax
je     1512 <yyprintname+0x412>
jmp    119f <yyprintname+0x9f>
mov    -0x10(%rbp),%eax
sub    $0x5a,%eax
je     1522 <yyprintname+0x422>
jmp    11b0 <yyprintname+0xb0>
mov    -0x10(%rbp),%eax
sub    $0x61,%eax
je     1532 <yyprintname+0x432>
jmp    11c1 <yyprintname+0xc1>
mov    -0x10(%rbp),%eax
sub    $0x68,%eax
je     1542 <yyprintname+0x442>
jmp    11d2 <yyprintname+0xd2>
mov    -0x10(%rbp),%eax
sub    $0x6f,%eax
je     1552 <yyprintname+0x452>
jmp    11e3 <yyprintname+0xe3>
mov    -0x10(%rbp),%eax
sub    $0x81,%eax
je     1562 <yyprintname+0x462>
jmp    11f6 <yyprintname+0xf6>
mov    -0x10(%rbp),%eax
sub    $0x88,%eax
je     1572 <yyprintname+0x472>
jmp    1209 <yyprintname+0x109>
mov    -0x10(%rbp),%eax
sub    $0x8f,%eax
je     1582 <yyprintname+0x482>
jmp    121c <yyprintname+0x11c>
mov    -0x10(%rbp),%eax
sub    $0xb7,%eax
je     1592 <yyprintname+0x492>
jmp    122f <yyprintname+0x12f>
mov    -0x10(%rbp),%eax
sub    $0xbe,%eax
je     15a2 <yyprintname+0x4a2>
jmp    1242 <yyprintname+0x142>
mov    -0x10(%rbp),%eax
sub    $0xc5,%eax
je     15b2 <yyprintname+0x4b2>
jmp    1255 <yyprintname+0x155>
mov    -0x10(%rbp),%eax
sub    $0xcf,%eax
je     15c2 <yyprintname+0x4c2>
jmp    1268 <yyprintname+0x168>
mov    -0x10(%rbp),%eax
sub    $0xd7,%eax
je     15d2 <yyprintname+0x4d2>
jmp    127b <yyprintname+0x17b>
mov    -0x10(%rbp),%eax
sub    $0xe0,%eax
je     15e2 <yyprintname+0x4e2>
jmp    128e <yyprintname+0x18e>
mov    -0x10(%rbp),%eax
sub    $0xe6,%eax
je     15f2 <yyprintname+0x4f2>
jmp    12a1 <yyprintname+0x1a1>
mov    -0x10(%rbp),%eax
sub    $0xee,%eax
je     1602 <yyprintname+0x502>
jmp    12b4 <yyprintname+0x1b4>
mov    -0x10(%rbp),%eax
sub    $0xf6,%eax
je     1612 <yyprintname+0x512>
jmp    12c7 <yyprintname+0x1c7>
mov    -0x10(%rbp),%eax
sub    $0xfe,%eax
je     1622 <yyprintname+0x522>
jmp    12da <yyprintname+0x1da>
mov    -0x10(%rbp),%eax
sub    $0x11e,%eax
je     1632 <yyprintname+0x532>
jmp    12ed <yyprintname+0x1ed>
mov    -0x10(%rbp),%eax
sub    $0x146,%eax
je     1642 <yyprintname+0x542>
jmp    1300 <yyprintname+0x200>
mov    -0x10(%rbp),%eax
sub    $0x15e,%eax
je     1652 <yyprintname+0x552>
jmp    1313 <yyprintname+0x213>
mov    -0x10(%rbp),%eax
sub    $0x166,%eax
je     1662 <yyprintname+0x562>
jmp    1326 <yyprintname+0x226>
mov    -0x10(%rbp),%eax
sub    $0x170,%eax
je     1672 <yyprintname+0x572>
jmp    1339 <yyprintname+0x239>
mov    -0x10(%rbp),%eax
sub    $0x177,%eax
je     1682 <yyprintname+0x582>
jmp    134c <yyprintname+0x24c>
mov    -0x10(%rbp),%eax
sub    $0x17e,%eax
je     1692 <yyprintname+0x592>
jmp    135f <yyprintname+0x25f>
mov    -0x10(%rbp),%eax
sub    $0x18b,%eax
je     16a2 <yyprintname+0x5a2>
jmp    1372 <yyprintname+0x272>
mov    -0x10(%rbp),%eax
sub    $0x194,%eax
je     16b2 <yyprintname+0x5b2>
jmp    1385 <yyprintname+0x285>
mov    -0x10(%rbp),%eax
sub    $0x1a8,%eax
je     16c2 <yyprintname+0x5c2>
jmp    1398 <yyprintname+0x298>
mov    -0x10(%rbp),%eax
sub    $0x1ae,%eax
je     16d2 <yyprintname+0x5d2>
jmp    13ab <yyprintname+0x2ab>
mov    -0x10(%rbp),%eax
sub    $0x1b6,%eax
je     16e2 <yyprintname+0x5e2>
jmp    13be <yyprintname+0x2be>
mov    -0x10(%rbp),%eax
sub    $0x1d6,%eax
je     16f2 <yyprintname+0x5f2>
jmp    13d1 <yyprintname+0x2d1>
mov    -0x10(%rbp),%eax
sub    $0x1dd,%eax
je     1702 <yyprintname+0x602>
jmp    13e4 <yyprintname+0x2e4>
mov    -0x10(%rbp),%eax
sub    $0x1e4,%eax
je     1712 <yyprintname+0x612>
jmp    13f7 <yyprintname+0x2f7>
mov    -0x10(%rbp),%eax
sub    $0x1ec,%eax
je     1722 <yyprintname+0x622>
jmp    140a <yyprintname+0x30a>
mov    -0x10(%rbp),%eax
sub    $0x218,%eax
je     1732 <yyprintname+0x632>
jmp    141d <yyprintname+0x31d>
mov    -0x10(%rbp),%eax
sub    $0x230,%eax
je     1742 <yyprintname+0x642>
jmp    1430 <yyprintname+0x330>
mov    -0x10(%rbp),%eax
sub    $0x238,%eax
je     1752 <yyprintname+0x652>
jmp    1443 <yyprintname+0x343>
mov    -0x10(%rbp),%eax
sub    $0x243,%eax
je     1762 <yyprintname+0x662>
jmp    1456 <yyprintname+0x356>
mov    -0x10(%rbp),%eax
sub    $0x248,%eax
je     1772 <yyprintname+0x672>
jmp    1469 <yyprintname+0x369>
mov    -0x10(%rbp),%eax
sub    $0x24d,%eax
je     1782 <yyprintname+0x682>
jmp    147c <yyprintname+0x37c>
mov    -0x10(%rbp),%eax
sub    $0x280,%eax
je     1792 <yyprintname+0x692>
jmp    148f <yyprintname+0x38f>
mov    -0x10(%rbp),%eax
sub    $0x287,%eax
je     17a2 <yyprintname+0x6a2>
jmp    17b2 <yyprintname+0x6b2>
lea    0xc6b(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xc63(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xc5b(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xc59(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xc53(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xc4d(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xc47(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xc40(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xc39(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xc29(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xc23(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xc1e(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xbf9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xbe9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xbf7(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xbec(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xbb9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xbd4(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xbd1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xbcd(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xbc8(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb69(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb59(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb9e(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xba3(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xba9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xba4(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xba0(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb9a(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb95(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xad9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb86(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb89(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb82(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb7c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb7c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb78(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa69(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa59(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb52(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xaf1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb42(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa19(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa09(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb21(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb1a(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb15(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9c9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb04(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
jmp    1c37 <yyprintname+0xb37>
mov    -0xc(%rbp),%eax
add    $0xffff3bb0,%eax
mov    %eax,%ecx
mov    %rcx,-0x18(%rbp)
sub    $0x44,%eax
ja     1c32 <yyprintname+0xb32>
mov    -0x18(%rbp),%rax
lea    0x827(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
lea    0xacf(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xac5(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xb02(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xaa8(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xaa0(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa9a(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa91(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa88(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa7d(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa72(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa69(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa67(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa5e(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa55(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa4c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa43(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa38(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa2c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa22(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa15(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0xa0a(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9fe(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9f4(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9ed(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9e4(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9d9(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9d0(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9c8(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9c1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9b7(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9b3(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x9a8(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x99e(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x99a(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x986(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x980(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x976(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x979(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x97c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x979(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x976(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x976(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x975(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x969(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x966(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x960(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x95e(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x959(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x94d(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x948(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x93c(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x939(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x933(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x931(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x92b(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x939(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x916(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x911(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x90f(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x908(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x904(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x8f8(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x8f1(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x8ec(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x8e6(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x8de(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x8d5(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x8cb(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
lea    0x8c2(%rip),%rax
mov    %rax,-0x8(%rbp)
jmp    1c42 <yyprintname+0xb42>
jmp    1c37 <yyprintname+0xb37>
lea    0x8b2(%rip),%rax
mov    %rax,-0x8(%rbp)
mov    -0x8(%rbp),%rax
pop    %rbp
ret

x86 assembly (clang, -O2):
<yyprintname>:
cmp    $0xc350,%edi
jg     113a <yyprintname+0x3a>
cmp    $0x145,%edi
jg     115b <yyprintname+0x5b>
lea    -0x1(%rdi),%ecx
cmp    $0x8e,%ecx
ja     1192 <yyprintname+0x92>
lea    0x16f6(%rip),%rax
lea    0xed7(%rip),%rdx
movslq (%rdx,%rcx,4),%rcx
add    %rdx,%rcx
jmp    *%rcx
lea    0x16e7(%rip),%rax
ret
add    $0xffff3bb0,%edi
cmp    $0x45,%edi
jae    1213 <yyprintname+0x113>
movslq %edi,%rax
lea    0x15b1(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
ret
cmp    $0x1a7,%edi
jle    11b5 <yyprintname+0xb5>
cmp    $0x217,%edi
jle    11d8 <yyprintname+0xd8>
lea    -0x218(%rdi),%eax
cmp    $0x35,%eax
ja     11fb <yyprintname+0xfb>
lea    0x14ab(%rip),%rcx
movslq (%rcx,%rax,4),%rax
add    %rcx,%rax
jmp    *%rax
lea    0x17ee(%rip),%rax
ret
add    $0xffffff49,%edi
cmp    $0x67,%edi
ja     1213 <yyprintname+0x113>
lea    0x1098(%rip),%rax
movslq (%rax,%rdi,4),%rcx
add    %rax,%rcx
jmp    *%rcx
lea    0x16d5(%rip),%rax
ret
add    $0xfffffeba,%edi
cmp    $0x4e,%edi
ja     1213 <yyprintname+0x113>
lea    0x1215(%rip),%rax
movslq (%rax,%rdi,4),%rcx
add    %rax,%rcx
jmp    *%rcx
lea    0x171a(%rip),%rax
ret
add    $0xfffffe58,%edi
cmp    $0x44,%edi
ja     1213 <yyprintname+0x113>
lea    0x132e(%rip),%rax
movslq (%rax,%rdi,4),%rcx
add    %rax,%rcx
jmp    *%rcx
lea    0x174f(%rip),%rax
ret
cmp    $0x280,%edi
je     121b <yyprintname+0x11b>
cmp    $0x287,%edi
jne    1213 <yyprintname+0x113>
lea    0x179f(%rip),%rax
ret
lea    0x19da(%rip),%rax
ret
lea    0x1644(%rip),%rax
ret
lea    0x15fe(%rip),%rax
ret
lea    0x1604(%rip),%rax
ret
lea    0x1606(%rip),%rax
ret
lea    0x1608(%rip),%rax
ret
lea    0x160a(%rip),%rax
ret
lea    0x160b(%rip),%rax
ret
lea    0x1616(%rip),%rax
ret
lea    0x1619(%rip),%rax
ret
lea    0x161a(%rip),%rax
ret
lea    0x171c(%rip),%rax
ret
lea    0x171d(%rip),%rax
ret
lea    0x1720(%rip),%rax
ret
lea    0x1607(%rip),%rax
ret
lea    0x160c(%rip),%rax
ret
lea    0x1610(%rip),%rax
ret
lea    0x1613(%rip),%rax
ret
lea    0x1611(%rip),%rax
ret
lea    0x161e(%rip),%rax
ret
lea    0x162c(%rip),%rax
ret
lea    0x163b(%rip),%rax
ret
lea    0x163d(%rip),%rax
ret
lea    0x1640(%rip),%rax
ret
lea    0x1649(%rip),%rax
ret
lea    0x1654(%rip),%rax
ret
lea    0x1655(%rip),%rax
ret
lea    0x1667(%rip),%rax
ret
lea    0x166b(%rip),%rax
ret
lea    0x166d(%rip),%rax
ret
lea    0x1614(%rip),%rax
ret

LLVM IR (-O0):
@.str = [8 x i8] c"YYSTART\00"
@.str.1 = [8 x i8] c"program\00"
@.str.2 = [14 x i8] c"program_parts\00"
@.str.3 = [10 x i8] c"func_proc\00"
@.str.4 = [10 x i8] c"arguments\00"
@.str.5 = [10 x i8] c"array_dcl\00"
@.str.6 = [9 x i8] c"argument\00"
@.str.7 = [9 x i8] c"func_dcl\00"
@.str.8 = [10 x i8] c"Subphrase\00"
@.str.9 = [11 x i8] c"extern_dcl\00"
@.str.10 = [9 x i8] c"proc_dcl\00"
@.str.11 = [5 x i8] c"type\00"
@.str.12 = [8 x i8] c"var_dcl\00"
@.str.13 = [13 x i8] c"var_dcl_cnts\00"
@.str.14 = [12 x i8] c"var_dcl_cnt\00"
@.str.15 = [11 x i8] c"struct_dec\00"
@.str.16 = [6 x i8] c"block\00"
@.str.17 = [21 x i8] c"arithmatic_low_level\00"
@.str.18 = [22 x i8] c"arithmatic_high_level\00"
@.str.19 = [11 x i8] c"arithmatic\00"
@.str.20 = [12 x i8] c"conditional\00"
@.str.21 = [10 x i8] c"binary_op\00"
@.str.22 = [11 x i8] c"parameters\00"
@.str.23 = [17 x i8] c"method_call_expr\00"
@.str.24 = [19 x i8] c"array_complete_dcl\00"
@.str.25 = [9 x i8] c"variable\00"
@.str.26 = [10 x i8] c"const_val\00"
@.str.27 = [16 x i8] c"assignment_expr\00"
@.str.28 = [12 x i8] c"expr_assign\00"
@.str.29 = [10 x i8] c"loop_stmt\00"
@.str.30 = [16 x i8] c"double_unary_op\00"
@.str.31 = [5 x i8] c"expr\00"
@.str.32 = [15 x i8] c"cond_statement\00"
@.str.33 = [9 x i8] c"gotofunc\00"
@.str.34 = [11 x i8] c"labeltoken\00"
@.str.35 = [15 x i8] c"statement_expr\00"
@.str.36 = [11 x i8] c"null_point\00"
@.str.37 = [6 x i8] c"UNTIL\00"
@.str.38 = [3 x i8] c"IN\00"
@.str.39 = [3 x i8] c"OF\00"
@.str.40 = [8 x i8] c"FOREACH\00"
@.str.41 = [10 x i8] c"PROCEDURE\00"
@.str.42 = [7 x i8] c"REPEAT\00"
@.str.43 = [7 x i8] c"RECORD\00"
@.str.44 = [5 x i8] c"AUTO\00"
@.str.45 = [5 x i8] c"VOID\00"
@.str.46 = [7 x i8] c"SWITCH\00"
@.str.47 = [14 x i8] c"STRINGKEYWORD\00"
@.str.48 = [7 x i8] c"STATIC\00"
@.str.49 = [7 x i8] c"SIZEOF\00"
@.str.50 = [7 x i8] c"RETURN\00"
@.str.51 = [7 x i8] c"OUTPUT\00"
@.str.52 = [5 x i8] c"LONG\00"
@.str.53 = [4 x i8] c"INT\00"
@.str.54 = [6 x i8] c"INPUT\00"
@.str.55 = [3 x i8] c"IF\00"
@.str.56 = [5 x i8] c"GOTO\00"
@.str.57 = [4 x i8] c"FOR\00"
@.str.58 = [6 x i8] c"FLOAT\00"
@.str.59 = [9 x i8] c"FUNCTION\00"
@.str.60 = [7 x i8] c"EXTERN\00"
@.str.61 = [5 x i8] c"ELSE\00"
@.str.62 = [7 x i8] c"DOUBLE\00"
@.str.63 = [8 x i8] c"DEFAULT\00"
@.str.64 = [9 x i8] c"CONTINUE\00"
@.str.65 = [6 x i8] c"CONST\00"
@.str.66 = [12 x i8] c"CHARKEYWORD\00"
@.str.67 = [5 x i8] c"CASE\00"
@.str.68 = [6 x i8] c"BREAK\00"
@.str.69 = [8 x i8] c"BOOLEAN\00"
@.str.70 = [6 x i8] c"COLON\00"
@.str.71 = [10 x i8] c"SEMICOLON\00"
@.str.72 = [6 x i8] c"COMMA\00"
@.str.73 = [19 x i8] c"CLOSINGPAREBTHESIS\00"
@.str.74 = [19 x i8] c"OPENINGPAREBTHESIS\00"
@.str.75 = [13 x i8] c"CLOSINGBRACE\00"
@.str.76 = [13 x i8] c"OPENINGBRACE\00"
@.str.77 = [16 x i8] c"CLOSECURLYBRACE\00"
@.str.78 = [15 x i8] c"OPENCURLYBRACE\00"
@.str.79 = [4 x i8] c"XOR\00"
@.str.80 = [13 x i8] c"ARITHMETICOR\00"
@.str.81 = [10 x i8] c"LOGICALOR\00"
@.str.82 = [14 x i8] c"ARITHMETICAND\00"
@.str.83 = [11 x i8] c"LOGICALAND\00"
@.str.84 = [4 x i8] c"MOD\00"
@.str.85 = [11 x i8] c"PRODUCTION\00"
@.str.86 = [4 x i8] c"DIV\00"
@.str.87 = [13 x i8] c"ADDUNARYPLUS\00"
@.str.88 = [10 x i8] c"INCREMENT\00"
@.str.89 = [14 x i8] c"SUBUNARYMINUS\00"
@.str.90 = [10 x i8] c"DECREMENT\00"
@.str.91 = [11 x i8] c"ASSIGNMENT\00"
@.str.92 = [6 x i8] c"EQUAL\00"
@.str.93 = [11 x i8] c"BIGGERTHAN\00"
@.str.94 = [14 x i8] c"BIGGEROREQUAL\00"
@.str.95 = [9 x i8] c"LESSTHAN\00"
@.str.96 = [12 x i8] c"LESSOREQUAL\00"
@.str.97 = [4 x i8] c"NOT\00"
@.str.98 = [9 x i8] c"NOTEQUAL\00"
@.str.99 = [11 x i8] c"REALNUMBER\00"
@.str.100 = [10 x i8] c"INTNUMBER\00"
@.str.101 = [8 x i8] c"ID_CODE\00"
@.str.102 = [7 x i8] c"FALSEV\00"
@.str.103 = [6 x i8] c"TRUEV\00"
@.str.104 = [7 x i8] c"STRING\00"
@.str.105 = [5 x i8] c"CHAR\00"
@.str.106 = [18 x i8] c"special_character\00"
define i8* @yyprintname(i32 %0) {
%2 = alloca i8*
%3 = alloca i32
store i32 %0, i32* %3
%4 = load i32, i32* %3
%5 = icmp sle i32 %4, 50000
br i1 %5, label %6, label %58
6: ; preds = %1
%7 = load i32, i32* %3
switch i32 %7, label %57 [
i32 1, label %8
i32 6, label %9
i32 15, label %10
i32 27, label %11
i32 39, label %12
i32 49, label %13
i32 66, label %14
i32 72, label %15
i32 90, label %16
i32 97, label %17
i32 104, label %18
i32 111, label %19
i32 129, label %20
i32 136, label %21
i32 143, label %22
i32 183, label %23
i32 190, label %24
i32 197, label %25
i32 207, label %26
i32 215, label %27
i32 224, label %28
i32 230, label %29
i32 238, label %30
i32 246, label %31
i32 254, label %32
i32 286, label %33
i32 326, label %34
i32 350, label %35
i32 358, label %36
i32 368, label %37
i32 375, label %38
i32 382, label %39
i32 395, label %40
i32 404, label %41
i32 424, label %42
i32 430, label %43
i32 438, label %44
i32 470, label %45
i32 477, label %46
i32 484, label %47
i32 492, label %48
i32 536, label %49
i32 560, label %50
i32 568, label %51
i32 579, label %52
i32 584, label %53
i32 589, label %54
i32 640, label %55
i32 647, label %56
]
8: ; preds = %6
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str, i64 0, i64 0), i8** %2
br label %132
9: ; preds = %6
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), i8** %2
br label %132
10: ; preds = %6
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.2, i64 0, i64 0), i8** %2
br label %132
11: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.3, i64 0, i64 0), i8** %2
br label %132
12: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.4, i64 0, i64 0), i8** %2
br label %132
13: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.5, i64 0, i64 0), i8** %2
br label %132
14: ; preds = %6
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.6, i64 0, i64 0), i8** %2
br label %132
15: ; preds = %6
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.7, i64 0, i64 0), i8** %2
br label %132
16: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
17: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
18: ; preds = %6
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.9, i64 0, i64 0), i8** %2
br label %132
19: ; preds = %6
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.10, i64 0, i64 0), i8** %2
br label %132
20: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
21: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
22: ; preds = %6
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.11, i64 0, i64 0), i8** %2
br label %132
23: ; preds = %6
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.12, i64 0, i64 0), i8** %2
br label %132
24: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
25: ; preds = %6
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.13, i64 0, i64 0), i8** %2
br label %132
26: ; preds = %6
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.14, i64 0, i64 0), i8** %2
br label %132
27: ; preds = %6
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.15, i64 0, i64 0), i8** %2
br label %132
28: ; preds = %6
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.16, i64 0, i64 0), i8** %2
br label %132
29: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
30: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
31: ; preds = %6
store i8* getelementptr inbounds ([21 x i8], [21 x i8]* @.str.17, i64 0, i64 0), i8** %2
br label %132
32: ; preds = %6
store i8* getelementptr inbounds ([22 x i8], [22 x i8]* @.str.18, i64 0, i64 0), i8** %2
br label %132
33: ; preds = %6
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.19, i64 0, i64 0), i8** %2
br label %132
34: ; preds = %6
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.20, i64 0, i64 0), i8** %2
br label %132
35: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.21, i64 0, i64 0), i8** %2
br label %132
36: ; preds = %6
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.22, i64 0, i64 0), i8** %2
br label %132
37: ; preds = %6
store i8* getelementptr inbounds ([17 x i8], [17 x i8]* @.str.23, i64 0, i64 0), i8** %2
br label %132
38: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
39: ; preds = %6
store i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.24, i64 0, i64 0), i8** %2
br label %132
40: ; preds = %6
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.25, i64 0, i64 0), i8** %2
br label %132
41: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.26, i64 0, i64 0), i8** %2
br label %132
42: ; preds = %6
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.27, i64 0, i64 0), i8** %2
br label %132
43: ; preds = %6
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.28, i64 0, i64 0), i8** %2
br label %132
44: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.29, i64 0, i64 0), i8** %2
br label %132
45: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
46: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
47: ; preds = %6
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.30, i64 0, i64 0), i8** %2
br label %132
48: ; preds = %6
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.31, i64 0, i64 0), i8** %2
br label %132
49: ; preds = %6
store i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.32, i64 0, i64 0), i8** %2
br label %132
50: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
51: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
52: ; preds = %6
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.33, i64 0, i64 0), i8** %2
br label %132
53: ; preds = %6
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.34, i64 0, i64 0), i8** %2
br label %132
54: ; preds = %6
store i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.35, i64 0, i64 0), i8** %2
br label %132
55: ; preds = %6
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), i8** %2
br label %132
56: ; preds = %6
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.36, i64 0, i64 0), i8** %2
br label %132
57: ; preds = %6
br label %131
58: ; preds = %1
%59 = load i32, i32* %3
%60 = sub nsw i32 %59, 50000
switch i32 %60, label %130 [
i32 324, label %61
i32 323, label %62
i32 322, label %63
i32 321, label %64
i32 320, label %65
i32 319, label %66
i32 318, label %67
i32 317, label %68
i32 316, label %69
i32 315, label %70
i32 314, label %71
i32 313, label %72
i32 312, label %73
i32 311, label %74
i32 310, label %75
i32 309, label %76
i32 308, label %77
i32 307, label %78
i32 306, label %79
i32 305, label %80
i32 304, label %81
i32 303, label %82
i32 302, label %83
i32 301, label %84
i32 300, label %85
i32 299, label %86
i32 298, label %87
i32 297, label %88
i32 296, label %89
i32 295, label %90
i32 294, label %91
i32 293, label %92
i32 292, label %93
i32 291, label %94
i32 290, label %95
i32 289, label %96
i32 288, label %97
i32 287, label %98
i32 286, label %99
i32 285, label %100
i32 284, label %101
i32 283, label %102
i32 282, label %103
i32 281, label %104
i32 280, label %105
i32 279, label %106
i32 278, label %107
i32 277, label %108
i32 276, label %109
i32 275, label %110
i32 274, label %111
i32 273, label %112
i32 272, label %113
i32 271, label %114
i32 270, label %115
i32 269, label %116
i32 268, label %117
i32 267, label %118
i32 266, label %119
i32 265, label %120
i32 264, label %121
i32 263, label %122
i32 262, label %123
i32 261, label %124
i32 260, label %125
i32 259, label %126
i32 258, label %127
i32 257, label %128
i32 256, label %129
]
61: ; preds = %58
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.37, i64 0, i64 0), i8** %2
br label %132
62: ; preds = %58
store i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.38, i64 0, i64 0), i8** %2
br label %132
63: ; preds = %58
store i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.39, i64 0, i64 0), i8** %2
br label %132
64: ; preds = %58
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.40, i64 0, i64 0), i8** %2
br label %132
65: ; preds = %58
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.41, i64 0, i64 0), i8** %2
br label %132
66: ; preds = %58
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.42, i64 0, i64 0), i8** %2
br label %132
67: ; preds = %58
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.43, i64 0, i64 0), i8** %2
br label %132
68: ; preds = %58
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.44, i64 0, i64 0), i8** %2
br label %132
69: ; preds = %58
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.45, i64 0, i64 0), i8** %2
br label %132
70: ; preds = %58
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.46, i64 0, i64 0), i8** %2
br label %132
71: ; preds = %58
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.47, i64 0, i64 0), i8** %2
br label %132
72: ; preds = %58
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.48, i64 0, i64 0), i8** %2
br label %132
73: ; preds = %58
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.49, i64 0, i64 0), i8** %2
br label %132
74: ; preds = %58
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.50, i64 0, i64 0), i8** %2
br label %132
75: ; preds = %58
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.51, i64 0, i64 0), i8** %2
br label %132
76: ; preds = %58
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.52, i64 0, i64 0), i8** %2
br label %132
77: ; preds = %58
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.53, i64 0, i64 0), i8** %2
br label %132
78: ; preds = %58
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.54, i64 0, i64 0), i8** %2
br label %132
79: ; preds = %58
store i8* getelementptr inbounds ([3 x i8], [3 x i8]* @.str.55, i64 0, i64 0), i8** %2
br label %132
80: ; preds = %58
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.56, i64 0, i64 0), i8** %2
br label %132
81: ; preds = %58
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.57, i64 0, i64 0), i8** %2
br label %132
82: ; preds = %58
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.58, i64 0, i64 0), i8** %2
br label %132
83: ; preds = %58
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.59, i64 0, i64 0), i8** %2
br label %132
84: ; preds = %58
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.60, i64 0, i64 0), i8** %2
br label %132
85: ; preds = %58
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.61, i64 0, i64 0), i8** %2
br label %132
86: ; preds = %58
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.62, i64 0, i64 0), i8** %2
br label %132
87: ; preds = %58
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.63, i64 0, i64 0), i8** %2
br label %132
88: ; preds = %58
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.64, i64 0, i64 0), i8** %2
br label %132
89: ; preds = %58
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.65, i64 0, i64 0), i8** %2
br label %132
90: ; preds = %58
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.66, i64 0, i64 0), i8** %2
br label %132
91: ; preds = %58
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.67, i64 0, i64 0), i8** %2
br label %132
92: ; preds = %58
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.68, i64 0, i64 0), i8** %2
br label %132
93: ; preds = %58
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.69, i64 0, i64 0), i8** %2
br label %132
94: ; preds = %58
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.70, i64 0, i64 0), i8** %2
br label %132
95: ; preds = %58
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.71, i64 0, i64 0), i8** %2
br label %132
96: ; preds = %58
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.72, i64 0, i64 0), i8** %2
br label %132
97: ; preds = %58
store i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.73, i64 0, i64 0), i8** %2
br label %132
98: ; preds = %58
store i8* getelementptr inbounds ([19 x i8], [19 x i8]* @.str.74, i64 0, i64 0), i8** %2
br label %132
99: ; preds = %58
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.75, i64 0, i64 0), i8** %2
br label %132
100: ; preds = %58
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.76, i64 0, i64 0), i8** %2
br label %132
101: ; preds = %58
store i8* getelementptr inbounds ([16 x i8], [16 x i8]* @.str.77, i64 0, i64 0), i8** %2
br label %132
102: ; preds = %58
store i8* getelementptr inbounds ([15 x i8], [15 x i8]* @.str.78, i64 0, i64 0), i8** %2
br label %132
103: ; preds = %58
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.79, i64 0, i64 0), i8** %2
br label %132
104: ; preds = %58
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.80, i64 0, i64 0), i8** %2
br label %132
105: ; preds = %58
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.81, i64 0, i64 0), i8** %2
br label %132
106: ; preds = %58
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.82, i64 0, i64 0), i8** %2
br label %132
107: ; preds = %58
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.83, i64 0, i64 0), i8** %2
br label %132
108: ; preds = %58
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.84, i64 0, i64 0), i8** %2
br label %132
109: ; preds = %58
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.85, i64 0, i64 0), i8** %2
br label %132
110: ; preds = %58
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.86, i64 0, i64 0), i8** %2
br label %132
111: ; preds = %58
store i8* getelementptr inbounds ([13 x i8], [13 x i8]* @.str.87, i64 0, i64 0), i8** %2
br label %132
112: ; preds = %58
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.88, i64 0, i64 0), i8** %2
br label %132
113: ; preds = %58
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.89, i64 0, i64 0), i8** %2
br label %132
114: ; preds = %58
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.90, i64 0, i64 0), i8** %2
br label %132
115: ; preds = %58
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.91, i64 0, i64 0), i8** %2
br label %132
116: ; preds = %58
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.92, i64 0, i64 0), i8** %2
br label %132
117: ; preds = %58
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.93, i64 0, i64 0), i8** %2
br label %132
118: ; preds = %58
store i8* getelementptr inbounds ([14 x i8], [14 x i8]* @.str.94, i64 0, i64 0), i8** %2
br label %132
119: ; preds = %58
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.95, i64 0, i64 0), i8** %2
br label %132
120: ; preds = %58
store i8* getelementptr inbounds ([12 x i8], [12 x i8]* @.str.96, i64 0, i64 0), i8** %2
br label %132
121: ; preds = %58
store i8* getelementptr inbounds ([4 x i8], [4 x i8]* @.str.97, i64 0, i64 0), i8** %2
br label %132
122: ; preds = %58
store i8* getelementptr inbounds ([9 x i8], [9 x i8]* @.str.98, i64 0, i64 0), i8** %2
br label %132
123: ; preds = %58
store i8* getelementptr inbounds ([11 x i8], [11 x i8]* @.str.99, i64 0, i64 0), i8** %2
br label %132
124: ; preds = %58
store i8* getelementptr inbounds ([10 x i8], [10 x i8]* @.str.100, i64 0, i64 0), i8** %2
br label %132
125: ; preds = %58
store i8* getelementptr inbounds ([8 x i8], [8 x i8]* @.str.101, i64 0, i64 0), i8** %2
br label %132
126: ; preds = %58
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.102, i64 0, i64 0), i8** %2
br label %132
127: ; preds = %58
store i8* getelementptr inbounds ([6 x i8], [6 x i8]* @.str.103, i64 0, i64 0), i8** %2
br label %132
128: ; preds = %58
store i8* getelementptr inbounds ([7 x i8], [7 x i8]* @.str.104, i64 0, i64 0), i8** %2
br label %132
129: ; preds = %58
store i8* getelementptr inbounds ([5 x i8], [5 x i8]* @.str.105, i64 0, i64 0), i8** %2
br label %132
130: ; preds = %58
br label %131
131: ; preds = %130, %57
store i8* getelementptr inbounds ([18 x i8], [18 x i8]* @.str.106, i64 0, i64 0), i8** %2
br label %132
132: ; preds = %131, %129, %128, %127, %126, %125, %124, %123, %122, %121, %120, %119, %118, %117, %116, %115, %114, %113, %112, %111, %110, %109, %108, %107, %106, %105, %104, %103, %102, %101, %100, %99, %98, %97, %96, %95, %94, %93, %92, %91, %90, %89, %88, %87, %86, %85, %84, %83, %82, %81, %80, %79, %78, %77, %76, %75, %74, %73, %72, %71, %70, %69, %68, %67, %66, %65, %64, %63, %62, %61, %56, %55, %54, %53, %52, %51, %50, %49, %48, %47, %46, %45, %44, %43, %42, %41, %40, %39, %38, %37, %36, %35, %34, %33, %32, %31, %30, %29, %28, %27, %26, %25, %24, %23, %22, %21, %20, %19, %18, %17, %16, %15, %14, %13, %12, %11, %10, %9, %8
%133 = load i8*, i8** %2
ret i8* %133
}

LLVM IR (-O2):
@.str = [8 x i8] c"YYSTART\00"
@.str.1 = [8 x i8] c"program\00"
@.str.2 = [14 x i8] c"program_parts\00"
@.str.3 = [10 x i8] c"func_proc\00"
@.str.4 = [10 x i8] c"arguments\00"
@.str.5 = [10 x i8] c"array_dcl\00"
@.str.6 = [9 x i8] c"argument\00"
@.str.7 = [9 x i8] c"func_dcl\00"
@.str.8 = [10 x i8] c"Subphrase\00"
@.str.9 = [11 x i8] c"extern_dcl\00"
@.str.10 = [9 x i8] c"proc_dcl\00"
@.str.11 = [5 x i8] c"type\00"
@.str.12 = [8 x i8] c"var_dcl\00"
@.str.13 = [13 x i8] c"var_dcl_cnts\00"
@.str.14 = [12 x i8] c"var_dcl_cnt\00"
@.str.15 = [11 x i8] c"struct_dec\00"
@.str.16 = [6 x i8] c"block\00"
@.str.17 = [21 x i8] c"arithmatic_low_level\00"
@.str.18 = [22 x i8] c"arithmatic_high_level\00"
@.str.19 = [11 x i8] c"arithmatic\00"
@.str.20 = [12 x i8] c"conditional\00"
@.str.21 = [10 x i8] c"binary_op\00"
@.str.22 = [11 x i8] c"parameters\00"
@.str.23 = [17 x i8] c"method_call_expr\00"
@.str.24 = [19 x i8] c"array_complete_dcl\00"
@.str.25 = [9 x i8] c"variable\00"
@.str.26 = [10 x i8] c"const_val\00"
@.str.27 = [16 x i8] c"assignment_expr\00"
@.str.28 = [12 x i8] c"expr_assign\00"
@.str.29 = [10 x i8] c"loop_stmt\00"
@.str.30 = [16 x i8] c"double_unary_op\00"
@.str.31 = [5 x i8] c"expr\00"
@.str.32 = [15 x i8] c"cond_statement\00"
@.str.33 = [9 x i8] c"gotofunc\00"
@.str.34 = [11 x i8] c"labeltoken\00"
@.str.35 = [15 x i8] c"statement_expr\00"
@.str.36 = [11 x i8] c"null_point\00"
@.str.37 = [6 x i8] c"UNTIL\00"
@.str.38 = [3 x i8] c"IN\00"
@.str.39 = [3 x i8] c"OF\00"
@.str.40 = [8 x i8] c"FOREACH\00"
@.str.41 = [10 x i8] c"PROCEDURE\00"
@.str.42 = [7 x i8] c"REPEAT\00"
@.str.43 = [7 x i8] c"RECORD\00"
@.str.44 = [5 x i8] c"AUTO\00"
@.str.45 = [5 x i8] c"VOID\00"
@.str.46 = [7 x i8] c"SWITCH\00"
@.str.47 = [14 x i8] c"STRINGKEYWORD\00"
@.str.48 = [7 x i8] c"STATIC\00"
@.str.49 = [7 x i8] c"SIZEOF\00"
@.str.50 = [7 x i8] c"RETURN\00"
@.str.51 = [7 x i8] c"OUTPUT\00"
@.str.52 = [5 x i8] c"LONG\00"
@.str.53 = [4 x i8] c"INT\00"
@.str.54 = [6 x i8] c"INPUT\00"
@.str.55 = [3 x i8] c"IF\00"
@.str.56 = [5 x i8] c"GOTO\00"
@.str.57 = [4 x i8] c"FOR\00"
@.str.58 = [6 x i8] c"FLOAT\00"
@.str.59 = [9 x i8] c"FUNCTION\00"
@.str.60 = [7 x i8] c"EXTERN\00"
@.str.61 = [5 x i8] c"ELSE\00"
@.str.62 = [7 x i8] c"DOUBLE\00"
@.str.63 = [8 x i8] c"DEFAULT\00"
@.str.64 = [9 x i8] c"CONTINUE\00"
@.str.65 = [6 x i8] c"CONST\00"
@.str.66 = [12 x i8] c"CHARKEYWORD\00"
@.str.67 = [5 x i8] c"CASE\00"
@.str.68 = [6 x i8] c"BREAK\00"
@.str.69 = [8 x i8] c"BOOLEAN\00"
@.str.70 = [6 x i8] c"COLON\00"
@.str.71 = [10 x i8] c"SEMICOLON\00"
@.str.72 = [6 x i8] c"COMMA\00"
@.str.73 = [19 x i8] c"CLOSINGPAREBTHESIS\00"
@.str.74 = [19 x i8] c"OPENINGPAREBTHESIS\00"
@.str.75 = [13 x i8] c"CLOSINGBRACE\00"
@.str.76 = [13 x i8] c"OPENINGBRACE\00"
@.str.77 = [16 x i8] c"CLOSECURLYBRACE\00"
@.str.78 = [15 x i8] c"OPENCURLYBRACE\00"
@.str.79 = [4 x i8] c"XOR\00"
@.str.80 = [13 x i8] c"ARITHMETICOR\00"
@.str.81 = [10 x i8] c"LOGICALOR\00"
@.str.82 = [14 x i8] c"ARITHMETICAND\00"
@.str.83 = [11 x i8] c"LOGICALAND\00"
@.str.84 = [4 x i8] c"MOD\00"
@.str.85 = [11 x i8] c"PRODUCTION\00"
@.str.86 = [4 x i8] c"DIV\00"
@.str.87 = [13 x i8] c"ADDUNARYPLUS\00"
@.str.88 = [10 x i8] c"INCREMENT\00"
@.str.89 = [14 x i8] c"SUBUNARYMINUS\00"
@.str.90 = [10 x i8] c"DECREMENT\00"
@.str.91 = [11 x i8] c"ASSIGNMENT\00"
@.str.92 = [6 x i8] c"EQUAL\00"
@.str.93 = [11 x i8] c"BIGGERTHAN\00"
@.str.94 = [14 x i8] c"BIGGEROREQUAL\00"
@.str.95 = [9 x i8] c"LESSTHAN\00"
@.str.96 = [12 x i8] c"LESSOREQUAL\00"
@.str.97 = [4 x i8] c"NOT\00"
@.str.98 = [9 x i8] c"NOTEQUAL\00"
@.str.99 = [11 x i8] c"REALNUMBER\00"
@.str.100 = [10 x i8] c"INTNUMBER\00"
@.str.101 = [8 x i8] c"ID_CODE\00"
@.str.102 = [7 x i8] c"FALSEV\00"
@.str.103 = [6 x i8] c"TRUEV\00"
@.str.104 = [7 x i8] c"STRING\00"
@.str.105 = [5 x i8] c"CHAR\00"
@.str.106 = [18 x i8] c"special_character\00"
@reltable.yyprintname = [69 x i32] [i32 trunc (i64 sub (i64 ptrtoint ([5 x i8]* @.str.105 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([7 x i8]* @.str.104 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([6 x i8]* @.str.103 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([7 x i8]* @.str.102 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([8 x i8]* @.str.101 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([10 x i8]* @.str.100 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([11 x i8]* @.str.99 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([9 x i8]* @.str.98 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([4 x i8]* @.str.97 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([12 x i8]* @.str.96 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([9 x i8]* @.str.95 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([14 x i8]* @.str.94 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([11 x i8]* @.str.93 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([6 x i8]* @.str.92 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([11 x i8]* @.str.91 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([10 x i8]* @.str.90 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([14 x i8]* @.str.89 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([10 x i8]* @.str.88 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([13 x i8]* @.str.87 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([4 x i8]* @.str.86 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([11 x i8]* @.str.85 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([4 x i8]* @.str.84 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([11 x i8]* @.str.83 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([14 x i8]* @.str.82 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([10 x i8]* @.str.81 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([13 x i8]* @.str.80 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([4 x i8]* @.str.79 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([15 x i8]* @.str.78 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([16 x i8]* @.str.77 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([13 x i8]* @.str.76 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([13 x i8]* @.str.75 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([19 x i8]* @.str.74 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([19 x i8]* @.str.73 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([6 x i8]* @.str.72 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([10 x i8]* @.str.71 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([6 x i8]* @.str.70 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([8 x i8]* @.str.69 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([6 x i8]* @.str.68 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([5 x i8]* @.str.67 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([12 x i8]* @.str.66 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([6 x i8]* @.str.65 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([9 x i8]* @.str.64 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([8 x i8]* @.str.63 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([7 x i8]* @.str.62 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([5 x i8]* @.str.61 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([7 x i8]* @.str.60 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([9 x i8]* @.str.59 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([6 x i8]* @.str.58 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([4 x i8]* @.str.57 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([5 x i8]* @.str.56 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([3 x i8]* @.str.55 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([6 x i8]* @.str.54 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([4 x i8]* @.str.53 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([5 x i8]* @.str.52 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([7 x i8]* @.str.51 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([7 x i8]* @.str.50 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([7 x i8]* @.str.49 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([7 x i8]* @.str.48 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([14 x i8]* @.str.47 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([7 x i8]* @.str.46 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([5 x i8]* @.str.45 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([5 x i8]* @.str.44 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([7 x i8]* @.str.43 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([7 x i8]* @.str.42 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([10 x i8]* @.str.41 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([8 x i8]* @.str.40 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([3 x i8]* @.str.39 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([3 x i8]* @.str.38 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32), i32 trunc (i64 sub (i64 ptrtoint ([6 x i8]* @.str.37 to i64), i64 ptrtoint ([69 x i32]* @reltable.yyprintname to i64)) to i32)]
define i8* @yyprintname(i32 %0) {
%2 = icmp slt i32 %0, 50001
br i1 %2, label %3, label %52
3: ; preds = %1
switch i32 %0, label %55 [
i32 1, label %60
i32 6, label %4
i32 15, label %5
i32 27, label %6
i32 39, label %7
i32 49, label %8
i32 66, label %9
i32 72, label %10
i32 90, label %11
i32 97, label %12
i32 104, label %13
i32 111, label %14
i32 129, label %15
i32 136, label %16
i32 143, label %17
i32 183, label %18
i32 190, label %19
i32 197, label %20
i32 207, label %21
i32 215, label %22
i32 224, label %23
i32 230, label %24
i32 238, label %25
i32 246, label %26
i32 254, label %27
i32 286, label %28
i32 326, label %29
i32 350, label %30
i32 358, label %31
i32 368, label %32
i32 375, label %33
i32 382, label %34
i32 395, label %35
i32 404, label %36
i32 424, label %37
i32 430, label %38
i32 438, label %39
i32 470, label %40
i32 477, label %41
i32 484, label %42
i32 492, label %43
i32 536, label %44
i32 560, label %45
i32 568, label %46
i32 579, label %47
i32 584, label %48
i32 589, label %49
i32 640, label %50
i32 647, label %51
]
4: ; preds = %3
br label %60
5: ; preds = %3
br label %60
6: ; preds = %3
br label %60
7: ; preds = %3
br label %60
8: ; preds = %3
br label %60
9: ; preds = %3
br label %60
10: ; preds = %3
br label %60
11: ; preds = %3
br label %60
12: ; preds = %3
br label %60
13: ; preds = %3
br label %60
14: ; preds = %3
br label %60
15: ; preds = %3
br label %60
16: ; preds = %3
br label %60
17: ; preds = %3
br label %60
18: ; preds = %3
br label %60
19: ; preds = %3
br label %60
20: ; preds = %3
br label %60
21: ; preds = %3
br label %60
22: ; preds = %3
br label %60
23: ; preds = %3
br label %60
24: ; preds = %3
br label %60
25: ; preds = %3
br label %60
26: ; preds = %3
br label %60
27: ; preds = %3
br label %60
28: ; preds = %3
br label %60
29: ; preds = %3
br label %60
30: ; preds = %3
br label %60
31: ; preds = %3
br label %60
32: ; preds = %3
br label %60
33: ; preds = %3
br label %60
34: ; preds = %3
br label %60
35: ; preds = %3
br label %60
36: ; preds = %3
br label %60
37: ; preds = %3
br label %60
38: ; preds = %3
br label %60
39: ; preds = %3
br label %60
40: ; preds = %3
br label %60
41: ; preds = %3
br label %60
42: ; preds = %3
br label %60
43: ; preds = %3
br label %60
44: ; preds = %3
br label %60
45: ; preds = %3
br label %60
46: ; preds = %3
br label %60
47: ; preds = %3
br label %60
48: ; preds = %3
br label %60
49: ; preds = %3
br label %60
50: ; preds = %3
br label %60
51: ; preds = %3
br label %60
52: ; preds = %1
%53 = add i32 %0, -50256
%54 = icmp ult i32 %53, 69
br i1 %54, label %56, label %55
55: ; preds = %52, %3
br label %60
56: ; preds = %52
%57 = sext i32 %53 to i64
%58 = shl i64 %57, 2
%59 = call i8* @llvm.load.relative.i64(i8* bitcast ([69 x i32]* @reltable.yyprintname to i8*), i64 %58)
br label %60
60: ; preds = %56, %3, %55, %51, %50, %49, %48, %47, %46, %45, %44, %43, %42, %41, %40, %39, %38, %37, %36, %35, %34, %33, %32, %31, %30, %29, %28, %27, %26, %25, %24, %23, %22, %21, %20, %19, %18, %17, %16, %15, %14, %13, %12, %11, %10, %9, %8, %7, %6, %5, %4
%61 = phi i8* [ getelementptr inbounds ([18 x i8], [18 x i8]* @.str.106, i64 0, i64 0), %55 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.36, i64 0, i64 0), %51 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %50 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.35, i64 0, i64 0), %49 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.34, i64 0, i64 0), %48 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.33, i64 0, i64 0), %47 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %46 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %45 ], [ getelementptr inbounds ([15 x i8], [15 x i8]* @.str.32, i64 0, i64 0), %44 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.31, i64 0, i64 0), %43 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.30, i64 0, i64 0), %42 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %41 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %40 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.29, i64 0, i64 0), %39 ], [ getelementptr inbounds ([12 x i8], [12 x i8]* @.str.28, i64 0, i64 0), %38 ], [ getelementptr inbounds ([16 x i8], [16 x i8]* @.str.27, i64 0, i64 0), %37 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.26, i64 0, i64 0), %36 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.25, i64 0, i64 0), %35 ], [ getelementptr inbounds ([19 x i8], [19 x i8]* @.str.24, i64 0, i64 0), %34 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %33 ], [ getelementptr inbounds ([17 x i8], [17 x i8]* @.str.23, i64 0, i64 0), %32 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.22, i64 0, i64 0), %31 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.21, i64 0, i64 0), %30 ], [ getelementptr inbounds ([12 x i8], [12 x i8]* @.str.20, i64 0, i64 0), %29 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.19, i64 0, i64 0), %28 ], [ getelementptr inbounds ([22 x i8], [22 x i8]* @.str.18, i64 0, i64 0), %27 ], [ getelementptr inbounds ([21 x i8], [21 x i8]* @.str.17, i64 0, i64 0), %26 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %25 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %24 ], [ getelementptr inbounds ([6 x i8], [6 x i8]* @.str.16, i64 0, i64 0), %23 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.15, i64 0, i64 0), %22 ], [ getelementptr inbounds ([12 x i8], [12 x i8]* @.str.14, i64 0, i64 0), %21 ], [ getelementptr inbounds ([13 x i8], [13 x i8]* @.str.13, i64 0, i64 0), %20 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %19 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.12, i64 0, i64 0), %18 ], [ getelementptr inbounds ([5 x i8], [5 x i8]* @.str.11, i64 0, i64 0), %17 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %16 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %15 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.10, i64 0, i64 0), %14 ], [ getelementptr inbounds ([11 x i8], [11 x i8]* @.str.9, i64 0, i64 0), %13 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %12 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.8, i64 0, i64 0), %11 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.7, i64 0, i64 0), %10 ], [ getelementptr inbounds ([9 x i8], [9 x i8]* @.str.6, i64 0, i64 0), %9 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.5, i64 0, i64 0), %8 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.4, i64 0, i64 0), %7 ], [ getelementptr inbounds ([10 x i8], [10 x i8]* @.str.3, i64 0, i64 0), %6 ], [ getelementptr inbounds ([14 x i8], [14 x i8]* @.str.2, i64 0, i64 0), %5 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str.1, i64 0, i64 0), %4 ], [ getelementptr inbounds ([8 x i8], [8 x i8]* @.str, i64 0, i64 0), %3 ], [ %59, %56 ]
ret i8* %61
}