LLVM API Documentation
00001 00002 #include <cstdio> 00003 #include "SparcV9InstrForest.h" 00004 00005 typedef llvm::InstrTreeNode* NODEPTR_TYPE; 00006 #define OP_LABEL(p) ((p)->opLabel) 00007 #define LEFT_CHILD(p) ((p)->LeftChild) 00008 #define RIGHT_CHILD(p) ((p)->RightChild) 00009 #define STATE_LABEL(p) ((p)->state) 00010 #define PANIC printf 00011 #ifndef burm_PANIC 00012 #define burm_PANIC PANIC 00013 #endif /* burm_PANIC */ 00014 #ifdef __STDC__ 00015 extern void abort(void); 00016 #else 00017 extern void abort(); 00018 #endif 00019 #ifdef NDEBUG 00020 #define burm_assert(x,y) ; 00021 #else 00022 #define burm_assert(x,y) if(!(x)) {y; abort();} 00023 #endif 00024 static short burm_r1_nts[] ={ 0 }; 00025 static short burm_r2_nts[] ={ 2, 0 }; 00026 static short burm_r3_nts[] ={ 2, 2, 0 }; 00027 static short burm_r4_nts[] ={ 2, 19, 0 }; 00028 static short burm_r6_nts[] ={ 17, 0 }; 00029 static short burm_r52_nts[] ={ 19, 0 }; 00030 static short burm_r123_nts[] ={ 5, 0 }; 00031 static short burm_r124_nts[] ={ 6, 0 }; 00032 static short burm_r125_nts[] ={ 7, 0 }; 00033 static short burm_r126_nts[] ={ 8, 0 }; 00034 static short burm_r127_nts[] ={ 9, 0 }; 00035 static short burm_r128_nts[] ={ 10, 0 }; 00036 static short burm_r129_nts[] ={ 11, 0 }; 00037 static short burm_r130_nts[] ={ 12, 0 }; 00038 static short burm_r131_nts[] ={ 13, 0 }; 00039 static short burm_r132_nts[] ={ 14, 0 }; 00040 static short burm_r133_nts[] ={ 15, 0 }; 00041 static short burm_r135_nts[] ={ 14, 14, 0 }; 00042 static short burm_r138_nts[] ={ 2, 3, 0 }; 00043 static short burm_r206_nts[] ={ 16, 0 }; 00044 static short burm_r221_nts[] ={ 3, 0 }; 00045 static short burm_r222_nts[] ={ 4, 0 }; 00046 static short burm_r321_nts[] ={ 18, 0 }; 00047 static short burm_r322_nts[] ={ 4, 2, 0 }; 00048 static short burm_r335_nts[] ={ 14, 15, 0 }; 00049 static short burm_r438_nts[] ={ 2, 18, 0 }; 00050 short *burm_nts[] = { 00051 0, 00052 burm_r1_nts, 00053 burm_r2_nts, 00054 burm_r3_nts, 00055 burm_r4_nts, 00056 burm_r1_nts, 00057 burm_r6_nts, 00058 0, 00059 burm_r2_nts, 00060 burm_r2_nts, 00061 burm_r3_nts, 00062 0, 00063 0, 00064 0, 00065 0, 00066 0, 00067 0, 00068 0, 00069 0, 00070 burm_r2_nts, 00071 burm_r2_nts, 00072 burm_r3_nts, 00073 burm_r2_nts, 00074 burm_r2_nts, 00075 burm_r2_nts, 00076 burm_r2_nts, 00077 burm_r2_nts, 00078 burm_r2_nts, 00079 burm_r2_nts, 00080 burm_r2_nts, 00081 burm_r2_nts, 00082 burm_r2_nts, 00083 burm_r2_nts, 00084 burm_r3_nts, 00085 burm_r3_nts, 00086 burm_r3_nts, 00087 burm_r3_nts, 00088 burm_r3_nts, 00089 burm_r3_nts, 00090 burm_r3_nts, 00091 burm_r3_nts, 00092 burm_r2_nts, 00093 burm_r3_nts, 00094 0, 00095 0, 00096 0, 00097 0, 00098 0, 00099 0, 00100 0, 00101 0, 00102 burm_r2_nts, 00103 burm_r52_nts, 00104 0, 00105 0, 00106 burm_r2_nts, 00107 burm_r3_nts, 00108 burm_r1_nts, 00109 burm_r2_nts, 00110 0, 00111 0, 00112 burm_r1_nts, 00113 burm_r3_nts, 00114 burm_r3_nts, 00115 burm_r3_nts, 00116 burm_r2_nts, 00117 burm_r2_nts, 00118 0, 00119 0, 00120 0, 00121 0, 00122 burm_r1_nts, 00123 burm_r1_nts, 00124 0, 00125 0, 00126 0, 00127 0, 00128 0, 00129 0, 00130 0, 00131 0, 00132 0, 00133 0, 00134 0, 00135 0, 00136 0, 00137 0, 00138 0, 00139 0, 00140 0, 00141 0, 00142 0, 00143 0, 00144 0, 00145 0, 00146 0, 00147 0, 00148 0, 00149 0, 00150 0, 00151 0, 00152 0, 00153 0, 00154 0, 00155 0, 00156 0, 00157 0, 00158 0, 00159 0, 00160 0, 00161 0, 00162 burm_r2_nts, 00163 0, 00164 0, 00165 0, 00166 0, 00167 0, 00168 0, 00169 0, 00170 0, 00171 0, 00172 0, 00173 0, 00174 burm_r123_nts, 00175 burm_r124_nts, 00176 burm_r125_nts, 00177 burm_r126_nts, 00178 burm_r127_nts, 00179 burm_r128_nts, 00180 burm_r129_nts, 00181 burm_r130_nts, 00182 burm_r131_nts, 00183 burm_r132_nts, 00184 burm_r133_nts, 00185 0, 00186 burm_r135_nts, 00187 0, 00188 0, 00189 burm_r138_nts, 00190 burm_r138_nts, 00191 burm_r138_nts, 00192 0, 00193 0, 00194 0, 00195 0, 00196 0, 00197 0, 00198 0, 00199 0, 00200 0, 00201 0, 00202 0, 00203 0, 00204 0, 00205 0, 00206 burm_r52_nts, 00207 0, 00208 0, 00209 0, 00210 0, 00211 0, 00212 0, 00213 0, 00214 0, 00215 0, 00216 0, 00217 0, 00218 0, 00219 0, 00220 0, 00221 0, 00222 0, 00223 0, 00224 0, 00225 0, 00226 0, 00227 0, 00228 0, 00229 0, 00230 0, 00231 0, 00232 0, 00233 0, 00234 0, 00235 0, 00236 0, 00237 0, 00238 0, 00239 0, 00240 0, 00241 0, 00242 0, 00243 0, 00244 0, 00245 0, 00246 0, 00247 0, 00248 0, 00249 0, 00250 0, 00251 0, 00252 0, 00253 0, 00254 0, 00255 0, 00256 0, 00257 burm_r206_nts, 00258 0, 00259 burm_r1_nts, 00260 0, 00261 0, 00262 0, 00263 0, 00264 0, 00265 0, 00266 0, 00267 0, 00268 0, 00269 0, 00270 0, 00271 0, 00272 burm_r221_nts, 00273 burm_r222_nts, 00274 0, 00275 0, 00276 0, 00277 0, 00278 0, 00279 0, 00280 0, 00281 0, 00282 0, 00283 burm_r1_nts, 00284 burm_r2_nts, 00285 burm_r2_nts, 00286 burm_r2_nts, 00287 burm_r2_nts, 00288 burm_r2_nts, 00289 burm_r2_nts, 00290 burm_r2_nts, 00291 burm_r2_nts, 00292 burm_r206_nts, 00293 burm_r6_nts, 00294 0, 00295 0, 00296 0, 00297 0, 00298 0, 00299 0, 00300 0, 00301 0, 00302 0, 00303 0, 00304 0, 00305 0, 00306 0, 00307 0, 00308 0, 00309 0, 00310 0, 00311 0, 00312 0, 00313 0, 00314 0, 00315 0, 00316 0, 00317 0, 00318 0, 00319 0, 00320 0, 00321 0, 00322 0, 00323 0, 00324 0, 00325 0, 00326 0, 00327 0, 00328 0, 00329 0, 00330 0, 00331 0, 00332 0, 00333 0, 00334 0, 00335 0, 00336 0, 00337 0, 00338 0, 00339 0, 00340 0, 00341 0, 00342 0, 00343 0, 00344 0, 00345 0, 00346 0, 00347 0, 00348 0, 00349 0, 00350 0, 00351 0, 00352 0, 00353 0, 00354 0, 00355 0, 00356 0, 00357 0, 00358 0, 00359 0, 00360 0, 00361 0, 00362 0, 00363 0, 00364 0, 00365 0, 00366 0, 00367 0, 00368 0, 00369 0, 00370 0, 00371 0, 00372 burm_r321_nts, 00373 burm_r322_nts, 00374 0, 00375 0, 00376 0, 00377 0, 00378 0, 00379 0, 00380 0, 00381 0, 00382 0, 00383 0, 00384 0, 00385 0, 00386 burm_r335_nts, 00387 0, 00388 0, 00389 burm_r3_nts, 00390 burm_r3_nts, 00391 burm_r3_nts, 00392 0, 00393 0, 00394 0, 00395 0, 00396 0, 00397 0, 00398 0, 00399 0, 00400 0, 00401 0, 00402 0, 00403 0, 00404 0, 00405 0, 00406 0, 00407 0, 00408 0, 00409 0, 00410 0, 00411 0, 00412 0, 00413 0, 00414 0, 00415 0, 00416 0, 00417 0, 00418 0, 00419 0, 00420 0, 00421 0, 00422 0, 00423 0, 00424 0, 00425 0, 00426 0, 00427 0, 00428 0, 00429 0, 00430 0, 00431 0, 00432 0, 00433 0, 00434 0, 00435 0, 00436 0, 00437 0, 00438 0, 00439 0, 00440 0, 00441 0, 00442 0, 00443 0, 00444 0, 00445 0, 00446 0, 00447 0, 00448 0, 00449 0, 00450 0, 00451 0, 00452 0, 00453 0, 00454 0, 00455 0, 00456 0, 00457 0, 00458 0, 00459 0, 00460 0, 00461 0, 00462 0, 00463 0, 00464 0, 00465 0, 00466 0, 00467 0, 00468 0, 00469 0, 00470 0, 00471 0, 00472 burm_r3_nts, 00473 0, 00474 0, 00475 0, 00476 0, 00477 0, 00478 0, 00479 0, 00480 0, 00481 0, 00482 0, 00483 0, 00484 0, 00485 0, 00486 0, 00487 0, 00488 0, 00489 burm_r438_nts, 00490 burm_r438_nts, 00491 burm_r438_nts, 00492 0, 00493 0, 00494 0, 00495 0, 00496 0, 00497 0, 00498 0, 00499 0, 00500 0, 00501 0, 00502 0, 00503 0, 00504 0, 00505 0, 00506 0, 00507 0, 00508 0, 00509 0, 00510 0, 00511 0, 00512 0, 00513 0, 00514 0, 00515 0, 00516 0, 00517 0, 00518 0, 00519 0, 00520 0, 00521 0, 00522 0, 00523 0, 00524 0, 00525 0, 00526 0, 00527 0, 00528 0, 00529 0, 00530 0, 00531 0, 00532 0, 00533 0, 00534 0, 00535 0, 00536 0, 00537 0, 00538 0, 00539 0, 00540 0, 00541 0, 00542 0, 00543 0, 00544 0, 00545 0, 00546 0, 00547 0, 00548 0, 00549 0, 00550 0, 00551 0, 00552 0, 00553 0, 00554 0, 00555 0, 00556 0, 00557 0, 00558 0, 00559 0, 00560 0, 00561 0, 00562 0, 00563 0, 00564 0, 00565 0, 00566 0, 00567 0, 00568 0, 00569 0, 00570 0, 00571 0, 00572 0, 00573 0, 00574 0, 00575 0, 00576 0, 00577 0, 00578 0, 00579 0, 00580 0, 00581 0, 00582 0, 00583 0, 00584 0, 00585 0, 00586 0, 00587 0, 00588 0, 00589 burm_r2_nts, 00590 burm_r2_nts, 00591 burm_r2_nts, 00592 }; 00593 static unsigned char burm_Add_transition[2][3] = { 00594 { 0, 0, 0} /* row 0 */, 00595 { 0, 1, 2} /* row 1 */ 00596 }; 00597 static unsigned char burm_Sub_transition[2][3] = { 00598 { 0, 0, 0} /* row 0 */, 00599 { 0, 1, 2} /* row 1 */ 00600 }; 00601 static unsigned char burm_Mul_transition[4][5] = { 00602 { 0, 0, 0, 0, 0} /* row 0 */, 00603 { 0, 1, 2, 1, 1} /* row 1 */, 00604 { 0, 1, 2, 3, 4} /* row 2 */, 00605 { 0, 1, 2, 3, 4} /* row 3 */ 00606 }; 00607 static unsigned char burm_Div_transition[2][3] = { 00608 { 0, 0, 0} /* row 0 */, 00609 { 0, 1, 2} /* row 1 */ 00610 }; 00611 static unsigned char burm_Rem_transition[2][3] = { 00612 { 0, 0, 0} /* row 0 */, 00613 { 0, 1, 2} /* row 1 */ 00614 }; 00615 static unsigned char burm_And_transition[2][4] = { 00616 { 0, 0, 0, 0} /* row 0 */, 00617 { 0, 1, 2, 3} /* row 1 */ 00618 }; 00619 static unsigned char burm_Or_transition[2][4] = { 00620 { 0, 0, 0, 0} /* row 0 */, 00621 { 0, 1, 2, 3} /* row 1 */ 00622 }; 00623 static unsigned char burm_Xor_transition[2][4] = { 00624 { 0, 0, 0, 0} /* row 0 */, 00625 { 0, 1, 2, 3} /* row 1 */ 00626 }; 00627 static unsigned char burm_BAnd_transition[2][4] = { 00628 { 0, 0, 0, 0} /* row 0 */, 00629 { 0, 1, 2, 3} /* row 1 */ 00630 }; 00631 static unsigned char burm_BOr_transition[2][4] = { 00632 { 0, 0, 0, 0} /* row 0 */, 00633 { 0, 1, 2, 3} /* row 1 */ 00634 }; 00635 static unsigned char burm_BXor_transition[2][4] = { 00636 { 0, 0, 0, 0} /* row 0 */, 00637 { 0, 1, 2, 3} /* row 1 */ 00638 }; 00639 static unsigned char burm_BNot_transition[2][2] = { 00640 { 0, 0} /* row 0 */, 00641 { 0, 1} /* row 1 */ 00642 }; 00643 static unsigned char burm_Not_transition[3][2] = { 00644 { 0, 0} /* row 0 */, 00645 { 0, 1} /* row 1 */, 00646 { 0, 1} /* row 2 */ 00647 }; 00648 static unsigned char burm_SetCC_transition[2][3] = { 00649 { 0, 0, 0} /* row 0 */, 00650 { 0, 1, 2} /* row 1 */ 00651 }; 00652 static unsigned char burm_Store_transition[2][3] = { 00653 { 0, 0, 0} /* row 0 */, 00654 { 0, 1, 1} /* row 1 */ 00655 }; 00656 static unsigned char burm_GetElemPtrIdx_transition[2][2] = { 00657 { 0, 0} /* row 0 */, 00658 { 0, 1} /* row 1 */ 00659 }; 00660 static unsigned char burm_Phi_transition[2][2] = { 00661 { 0, 0} /* row 0 */, 00662 { 0, 1} /* row 1 */ 00663 }; 00664 static unsigned char burm_Shl_transition[2][2] = { 00665 { 0, 0} /* row 0 */, 00666 { 0, 1} /* row 1 */ 00667 }; 00668 static unsigned char burm_Shr_transition[2][2] = { 00669 { 0, 0} /* row 0 */, 00670 { 0, 1} /* row 1 */ 00671 }; 00672 static unsigned char burm_VRegList_transition[2][2] = { 00673 { 0, 0} /* row 0 */, 00674 { 0, 1} /* row 1 */ 00675 }; 00676 static struct { 00677 unsigned int f15:2; 00678 unsigned int f16:2; 00679 unsigned int f17:2; 00680 unsigned int f18:2; 00681 unsigned int f19:2; 00682 unsigned int f20:2; 00683 unsigned int f21:2; 00684 unsigned int f22:2; 00685 unsigned int f23:2; 00686 unsigned int f24:2; 00687 unsigned int f25:2; 00688 unsigned int f26:6; 00689 unsigned int f27:4; 00690 } burm_plank_0[] = { 00691 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, /* row 0 */ 00692 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 1,}, /* row 1 */ 00693 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 1,}, /* row 2 */ 00694 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 1,}, /* row 3 */ 00695 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 1,}, /* row 4 */ 00696 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 1,}, /* row 5 */ 00697 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 1,}, /* row 6 */ 00698 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 1,}, /* row 7 */ 00699 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 1,}, /* row 8 */ 00700 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 1,}, /* row 9 */ 00701 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 28, 1,}, /* row 10 */ 00702 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 1,}, /* row 11 */ 00703 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 1,}, /* row 12 */ 00704 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 1,}, /* row 13 */ 00705 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 1,}, /* row 14 */ 00706 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 25, 1,}, /* row 15 */ 00707 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 1,}, /* row 16 */ 00708 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 24, 1,}, /* row 17 */ 00709 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4,}, /* row 18 */ 00710 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3,}, /* row 19 */ 00711 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,}, /* row 20 */ 00712 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5,}, /* row 21 */ 00713 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7,}, /* row 22 */ 00714 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 1,}, /* row 23 */ 00715 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1,}, /* row 24 */ 00716 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 31, 1,}, /* row 25 */ 00717 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 1,}, /* row 26 */ 00718 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 1,}, /* row 27 */ 00719 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 1,}, /* row 28 */ 00720 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 1,}, /* row 29 */ 00721 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 12, 1,}, /* row 30 */ 00722 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 33, 1,}, /* row 31 */ 00723 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 1,}, /* row 32 */ 00724 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 1,}, /* row 33 */ 00725 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 19, 1,}, /* row 34 */ 00726 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 52, 1,}, /* row 35 */ 00727 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, 1,}, /* row 36 */ 00728 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 1,}, /* row 37 */ 00729 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57, 1,}, /* row 38 */ 00730 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 1,}, /* row 39 */ 00731 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 1,}, /* row 40 */ 00732 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, 1,}, /* row 41 */ 00733 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11,}, /* row 42 */ 00734 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10,}, /* row 43 */ 00735 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 1,}, /* row 44 */ 00736 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 1,}, /* row 45 */ 00737 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 1,}, /* row 46 */ 00738 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 1,}, /* row 47 */ 00739 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9,}, /* row 48 */ 00740 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 1,}, /* row 49 */ 00741 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 1,}, /* row 50 */ 00742 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2,}, /* row 51 */ 00743 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 1,}, /* row 52 */ 00744 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 51, 1,}, /* row 53 */ 00745 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 39, 1,}, /* row 54 */ 00746 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 38, 1,}, /* row 55 */ 00747 { 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 1,}, /* row 56 */ 00748 { 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 43, 1,}, /* row 57 */ 00749 { 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 41, 1,}, /* row 58 */ 00750 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 1,}, /* row 59 */ 00751 { 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 47, 1,}, /* row 60 */ 00752 { 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 45, 1,}, /* row 61 */ 00753 { 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 48, 1,}, /* row 62 */ 00754 { 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 44, 1,}, /* row 63 */ 00755 { 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 42, 1,}, /* row 64 */ 00756 { 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 46, 1,}, /* row 65 */ 00757 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 1,}, /* row 66 */ 00758 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 1,}, /* row 67 */ 00759 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 1,}, /* row 68 */ 00760 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 1,}, /* row 69 */ 00761 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 1,}, /* row 70 */ 00762 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53, 1,}, /* row 71 */ 00763 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, 1,}, /* row 72 */ 00764 }; 00765 static struct { 00766 unsigned int f0:2; 00767 unsigned int f2:2; 00768 unsigned int f3:3; 00769 unsigned int f4:3; 00770 unsigned int f5:3; 00771 unsigned int f6:3; 00772 unsigned int f7:2; 00773 unsigned int f8:2; 00774 unsigned int f9:2; 00775 unsigned int f10:2; 00776 unsigned int f11:2; 00777 unsigned int f12:2; 00778 unsigned int f13:2; 00779 unsigned int f14:2; 00780 } burm_plank_1[] = { 00781 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, /* row 0 */ 00782 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 1 */ 00783 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 2 */ 00784 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 3 */ 00785 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 4 */ 00786 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 5 */ 00787 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 6 */ 00788 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 7 */ 00789 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 8 */ 00790 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 9 */ 00791 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 10 */ 00792 { 1, 1, 1, 1, 1, 3, 1, 1, 0, 1, 0, 0, 0, 0,}, /* row 11 */ 00793 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 12 */ 00794 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 13 */ 00795 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 14 */ 00796 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 15 */ 00797 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 16 */ 00798 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 17 */ 00799 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, /* row 18 */ 00800 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, /* row 19 */ 00801 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, /* row 20 */ 00802 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, /* row 21 */ 00803 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, /* row 22 */ 00804 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 23 */ 00805 { 1, 2, 1, 2, 2, 2, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 24 */ 00806 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 25 */ 00807 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 26 */ 00808 { 1, 1, 1, 1, 1, 1, 1, 2, 2, 0, 0, 0, 0, 0,}, /* row 27 */ 00809 { 1, 1, 1, 1, 1, 1, 1, 2, 1, 0, 0, 0, 0, 0,}, /* row 28 */ 00810 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 29 */ 00811 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 30 */ 00812 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 31 */ 00813 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 32 */ 00814 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 33 */ 00815 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 34 */ 00816 { 1, 1, 1, 1, 3, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 35 */ 00817 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 36 */ 00818 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 37 */ 00819 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 38 */ 00820 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 39 */ 00821 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 40 */ 00822 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 41 */ 00823 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, /* row 42 */ 00824 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, /* row 43 */ 00825 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0,}, /* row 44 */ 00826 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 0,}, /* row 45 */ 00827 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 46 */ 00828 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 47 */ 00829 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, /* row 48 */ 00830 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 49 */ 00831 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 50 */ 00832 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, /* row 51 */ 00833 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 52 */ 00834 { 1, 1, 1, 1, 1, 1, 2, 1, 0, 0, 0, 0, 0, 0,}, /* row 53 */ 00835 { 1, 1, 2, 3, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1,}, /* row 54 */ 00836 { 1, 1, 3, 4, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1,}, /* row 55 */ 00837 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 56 */ 00838 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 57 */ 00839 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 58 */ 00840 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 59 */ 00841 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 60 */ 00842 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 61 */ 00843 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 62 */ 00844 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 63 */ 00845 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 64 */ 00846 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 65 */ 00847 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 66 */ 00848 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 67 */ 00849 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 68 */ 00850 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 69 */ 00851 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 70 */ 00852 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 71 */ 00853 { 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0,}, /* row 72 */ 00854 }; 00855 static struct { 00856 unsigned int f1:3; 00857 } burm_plank_2[] = { 00858 { 0,}, /* row 0 */ 00859 { 1,}, /* row 1 */ 00860 { 1,}, /* row 2 */ 00861 { 1,}, /* row 3 */ 00862 { 1,}, /* row 4 */ 00863 { 1,}, /* row 5 */ 00864 { 1,}, /* row 6 */ 00865 { 1,}, /* row 7 */ 00866 { 1,}, /* row 8 */ 00867 { 1,}, /* row 9 */ 00868 { 1,}, /* row 10 */ 00869 { 1,}, /* row 11 */ 00870 { 1,}, /* row 12 */ 00871 { 1,}, /* row 13 */ 00872 { 1,}, /* row 14 */ 00873 { 1,}, /* row 15 */ 00874 { 1,}, /* row 16 */ 00875 { 1,}, /* row 17 */ 00876 { 0,}, /* row 18 */ 00877 { 0,}, /* row 19 */ 00878 { 0,}, /* row 20 */ 00879 { 0,}, /* row 21 */ 00880 { 0,}, /* row 22 */ 00881 { 1,}, /* row 23 */ 00882 { 2,}, /* row 24 */ 00883 { 1,}, /* row 25 */ 00884 { 1,}, /* row 26 */ 00885 { 1,}, /* row 27 */ 00886 { 1,}, /* row 28 */ 00887 { 1,}, /* row 29 */ 00888 { 1,}, /* row 30 */ 00889 { 1,}, /* row 31 */ 00890 { 1,}, /* row 32 */ 00891 { 1,}, /* row 33 */ 00892 { 1,}, /* row 34 */ 00893 { 1,}, /* row 35 */ 00894 { 1,}, /* row 36 */ 00895 { 1,}, /* row 37 */ 00896 { 1,}, /* row 38 */ 00897 { 1,}, /* row 39 */ 00898 { 1,}, /* row 40 */ 00899 { 1,}, /* row 41 */ 00900 { 0,}, /* row 42 */ 00901 { 0,}, /* row 43 */ 00902 { 3,}, /* row 44 */ 00903 { 4,}, /* row 45 */ 00904 { 1,}, /* row 46 */ 00905 { 1,}, /* row 47 */ 00906 { 0,}, /* row 48 */ 00907 { 1,}, /* row 49 */ 00908 { 1,}, /* row 50 */ 00909 { 0,}, /* row 51 */ 00910 { 1,}, /* row 52 */ 00911 { 1,}, /* row 53 */ 00912 { 1,}, /* row 54 */ 00913 { 1,}, /* row 55 */ 00914 { 1,}, /* row 56 */ 00915 { 1,}, /* row 57 */ 00916 { 1,}, /* row 58 */ 00917 { 1,}, /* row 59 */ 00918 { 1,}, /* row 60 */ 00919 { 1,}, /* row 61 */ 00920 { 1,}, /* row 62 */ 00921 { 1,}, /* row 63 */ 00922 { 1,}, /* row 64 */ 00923 { 1,}, /* row 65 */ 00924 { 1,}, /* row 66 */ 00925 { 1,}, /* row 67 */ 00926 { 1,}, /* row 68 */ 00927 { 1,}, /* row 69 */ 00928 { 1,}, /* row 70 */ 00929 { 1,}, /* row 71 */ 00930 { 1,}, /* row 72 */ 00931 }; 00932 static short burm_eruleMap[] = { 00933 0, 421, 0, 322, 21, 0, 56, 55, 0, 72, /* 0-9 */ 00934 71, 66, 65, 64, 63, 62, 61, 58, 57, 155, /* 10-19 */ 00935 52, 51, 540, 539, 538, 237, 236, 335, 235, 234, /* 20-29 */ 00936 233, 321, 440, 340, 439, 339, 438, 338, 37, 36, /* 30-39 */ 00937 135, 35, 34, 33, 20, 19, 133, 132, 131, 130, /* 40-49 */ 00938 129, 128, 127, 126, 125, 124, 123, 242, 241, 222, /* 50-59 */ 00939 221, 240, 140, 40, 239, 139, 39, 238, 138, 38, /* 60-69 */ 00940 10, 0, 42, 0, 41, 0, 111, 9, 208, 8, /* 70-79 */ 00941 206, 6, 5, 4, 3, 2, 1, 0, 22, 0, /* 80-89 */ 00942 32, 0, 232, 0, 31, 0, 28, 0, 30, 0, /* 90-99 */ 00943 24, 0, 26, 0, 23, 0, 27, 0, 29, 0, /* 100-109 */ 00944 25 00945 }; 00946 #define burm_stmt_rule(state) burm_eruleMap[burm_plank_0[state].f27 +75] 00947 #define burm_reg_rule(state) burm_eruleMap[burm_plank_0[state].f26 +8] 00948 #define burm_not_rule(state) burm_eruleMap[burm_plank_0[state].f25 +2] 00949 #define burm_tobool_rule(state) burm_eruleMap[burm_plank_0[state].f24 +87] 00950 #define burm_toubyte_rule(state) burm_eruleMap[burm_plank_0[state].f23 +103] 00951 #define burm_tosbyte_rule(state) burm_eruleMap[burm_plank_0[state].f22 +99] 00952 #define burm_toushort_rule(state) burm_eruleMap[burm_plank_0[state].f21 +109] 00953 #define burm_toshort_rule(state) burm_eruleMap[burm_plank_0[state].f20 +101] 00954 #define burm_touint_rule(state) burm_eruleMap[burm_plank_0[state].f19 +105] 00955 #define burm_toint_rule(state) burm_eruleMap[burm_plank_0[state].f18 +95] 00956 #define burm_toulong_rule(state) burm_eruleMap[burm_plank_0[state].f17 +107] 00957 #define burm_tolong_rule(state) burm_eruleMap[burm_plank_0[state].f16 +97] 00958 #define burm_tofloat_rule(state) burm_eruleMap[burm_plank_0[state].f15 +93] 00959 #define burm_todouble_rule(state) burm_eruleMap[burm_plank_1[state].f14 +89] 00960 #define burm_todoubleConst_rule(state) burm_eruleMap[burm_plank_1[state].f13 +91] 00961 #define burm_setCCconst_rule(state) burm_eruleMap[burm_plank_1[state].f12 +73] 00962 #define burm_setCC_rule(state) burm_eruleMap[burm_plank_1[state].f11 +71] 00963 #define burm_bnot_rule(state) burm_eruleMap[burm_plank_1[state].f10 +0] 00964 #define burm_ptrreg_rule(state) burm_eruleMap[burm_plank_1[state].f9 +5] 00965 00966 #ifdef __STDC__ 00967 int burm_rule(int state, int goalnt) { 00968 #else 00969 int burm_rule(state, goalnt) int state; int goalnt; { 00970 #endif 00971 burm_assert(state >= 0 && state < 73, burm_PANIC("Bad state %d passed to burm_rule\n", state)); 00972 switch(goalnt) { 00973 case 1: 00974 return burm_stmt_rule(state); 00975 case 2: 00976 return burm_reg_rule(state); 00977 case 3: 00978 return burm_not_rule(state); 00979 case 4: 00980 return burm_tobool_rule(state); 00981 case 5: 00982 return burm_toubyte_rule(state); 00983 case 6: 00984 return burm_tosbyte_rule(state); 00985 case 7: 00986 return burm_toushort_rule(state); 00987 case 8: 00988 return burm_toshort_rule(state); 00989 case 9: 00990 return burm_touint_rule(state); 00991 case 10: 00992 return burm_toint_rule(state); 00993 case 11: 00994 return burm_toulong_rule(state); 00995 case 12: 00996 return burm_tolong_rule(state); 00997 case 13: 00998 return burm_tofloat_rule(state); 00999 case 14: 01000 return burm_todouble_rule(state); 01001 case 15: 01002 return burm_todoubleConst_rule(state); 01003 case 16: 01004 return burm_setCCconst_rule(state); 01005 case 17: 01006 return burm_setCC_rule(state); 01007 case 18: 01008 return burm_bnot_rule(state); 01009 case 19: 01010 return burm_ptrreg_rule(state); 01011 default: 01012 burm_PANIC("Unknown nonterminal %d in burm_rule;\n", goalnt); 01013 abort(); 01014 return 0; 01015 } 01016 } 01017 01018 int burm_TEMP; 01019 #define burm_Ret_state 42 01020 #define burm_RetValue_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 42 : 0 ) 01021 #define burm_BrUncond_state 22 01022 #define burm_BrCond_state(l) ( (burm_TEMP = burm_plank_2[l].f1) ? burm_TEMP + 17 : 0 ) 01023 #define burm_Switch_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 50 : 0 ) 01024 #define burm_Add_state(l,r) ( (burm_TEMP = burm_Add_transition[burm_plank_1[l].f0][burm_plank_1[r].f2]) ? burm_TEMP + 0 : 0 ) 01025 #define burm_Sub_state(l,r) ( (burm_TEMP = burm_Sub_transition[burm_plank_1[l].f0][burm_plank_1[r].f2]) ? burm_TEMP + 48 : 0 ) 01026 #define burm_Mul_state(l,r) ( (burm_TEMP = burm_Mul_transition[burm_plank_1[l].f3][burm_plank_1[r].f4]) ? burm_TEMP + 30 : 0 ) 01027 #define burm_Div_state(l,r) ( (burm_TEMP = burm_Div_transition[burm_plank_1[l].f0][burm_plank_1[r].f2]) ? burm_TEMP + 24 : 0 ) 01028 #define burm_Rem_state(l,r) ( (burm_TEMP = burm_Rem_transition[burm_plank_1[l].f0][burm_plank_1[r].f2]) ? burm_TEMP + 39 : 0 ) 01029 #define burm_And_state(l,r) ( (burm_TEMP = burm_And_transition[burm_plank_1[l].f0][burm_plank_1[r].f5]) ? burm_TEMP + 4 : 0 ) 01030 #define burm_Or_state(l,r) ( (burm_TEMP = burm_Or_transition[burm_plank_1[l].f0][burm_plank_1[r].f5]) ? burm_TEMP + 35 : 0 ) 01031 #define burm_Xor_state(l,r) ( (burm_TEMP = burm_Xor_transition[burm_plank_1[l].f0][burm_plank_1[r].f5]) ? burm_TEMP + 69 : 0 ) 01032 #define burm_BAnd_state(l,r) ( (burm_TEMP = burm_BAnd_transition[burm_plank_1[l].f0][burm_plank_1[r].f6]) ? burm_TEMP + 7 : 0 ) 01033 #define burm_BOr_state(l,r) ( (burm_TEMP = burm_BOr_transition[burm_plank_1[l].f0][burm_plank_1[r].f6]) ? burm_TEMP + 11 : 0 ) 01034 #define burm_BXor_state(l,r) ( (burm_TEMP = burm_BXor_transition[burm_plank_1[l].f0][burm_plank_1[r].f6]) ? burm_TEMP + 14 : 0 ) 01035 #define burm_BNot_state(l,r) ( (burm_TEMP = burm_BNot_transition[burm_plank_1[l].f0][burm_plank_1[r].f0]) ? burm_TEMP + 10 : 0 ) 01036 #define burm_Not_state(l,r) ( (burm_TEMP = burm_Not_transition[burm_plank_1[l].f7][burm_plank_1[r].f0]) ? burm_TEMP + 34 : 0 ) 01037 #define burm_SetCC_state(l,r) ( (burm_TEMP = burm_SetCC_transition[burm_plank_1[l].f0][burm_plank_1[r].f2]) ? burm_TEMP + 43 : 0 ) 01038 #define burm_Malloc_state 0 01039 #define burm_Free_state 0 01040 #define burm_Alloca_state 3 01041 #define burm_AllocaN_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 3 : 0 ) 01042 #define burm_Load_state(l) ( (burm_TEMP = burm_plank_1[l].f8) ? burm_TEMP + 28 : 0 ) 01043 #define burm_Store_state(l,r) ( (burm_TEMP = burm_Store_transition[burm_plank_1[l].f0][burm_plank_1[r].f8]) ? burm_TEMP + 47 : 0 ) 01044 #define burm_GetElemPtr_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 26 : 0 ) 01045 #define burm_GetElemPtrIdx_state(l,r) ( (burm_TEMP = burm_GetElemPtrIdx_transition[burm_plank_1[l].f0][burm_plank_1[r].f0]) ? burm_TEMP + 27 : 0 ) 01046 #define burm_Phi_state(l,r) ( (burm_TEMP = burm_Phi_transition[burm_plank_1[l].f0][burm_plank_1[r].f0]) ? burm_TEMP + 38 : 0 ) 01047 #define burm_Cast_state 0 01048 #define burm_ToBoolTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 52 : 0 ) 01049 #define burm_ToUByteTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 61 : 0 ) 01050 #define burm_ToSByteTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 59 : 0 ) 01051 #define burm_ToUShortTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 64 : 0 ) 01052 #define burm_ToShortTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 60 : 0 ) 01053 #define burm_ToUIntTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 62 : 0 ) 01054 #define burm_ToIntTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 56 : 0 ) 01055 #define burm_ToULongTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 63 : 0 ) 01056 #define burm_ToLongTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 57 : 0 ) 01057 #define burm_ToFloatTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 55 : 0 ) 01058 #define burm_ToDoubleTy_state(l) ( (burm_TEMP = burm_plank_1[l].f2) ? burm_TEMP + 53 : 0 ) 01059 #define burm_ToArrayTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 51 : 0 ) 01060 #define burm_ToPointerTy_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 58 : 0 ) 01061 #define burm_Call_state 23 01062 #define burm_Shl_state(l,r) ( (burm_TEMP = burm_Shl_transition[burm_plank_1[l].f0][burm_plank_1[r].f0]) ? burm_TEMP + 45 : 0 ) 01063 #define burm_Shr_state(l,r) ( (burm_TEMP = burm_Shr_transition[burm_plank_1[l].f0][burm_plank_1[r].f0]) ? burm_TEMP + 46 : 0 ) 01064 #define burm_VANext_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 66 : 0 ) 01065 #define burm_VAArg_state(l) ( (burm_TEMP = burm_plank_1[l].f0) ? burm_TEMP + 65 : 0 ) 01066 #define burm_VRegList_state(l,r) ( (burm_TEMP = burm_VRegList_transition[burm_plank_1[l].f0][burm_plank_1[r].f0]) ? burm_TEMP + 68 : 0 ) 01067 #define burm_VReg_state 68 01068 #define burm_Constant_state 24 01069 #define burm_Label_state 0 01070 01071 #ifdef __STDC__ 01072 int burm_state(int op, int l, int r) { 01073 #else 01074 int burm_state(op, l, r) int op; int l; int r; { 01075 #endif 01076 register int burm_TEMP; 01077 #ifndef NDEBUG 01078 switch (op) { 01079 case 7: 01080 case 8: 01081 case 9: 01082 case 10: 01083 case 11: 01084 case 12: 01085 case 13: 01086 case 14: 01087 case 112: 01088 case 113: 01089 case 114: 01090 case 214: 01091 case 314: 01092 case 115: 01093 case 25: 01094 case 126: 01095 case 27: 01096 case 30: 01097 case 31: 01098 case 97: 01099 burm_assert(r >= 0 && r < 73, burm_PANIC("Bad state %d passed to burm_state\n", r)); 01100 /*FALLTHROUGH*/ 01101 case 101: 01102 case 102: 01103 case 3: 01104 case 123: 01105 case 24: 01106 case 26: 01107 case 128: 01108 case 129: 01109 case 130: 01110 case 131: 01111 case 132: 01112 case 133: 01113 case 134: 01114 case 135: 01115 case 136: 01116 case 137: 01117 case 138: 01118 case 139: 01119 case 140: 01120 case 32: 01121 case 33: 01122 burm_assert(l >= 0 && l < 73, burm_PANIC("Bad state %d passed to burm_state\n", l)); 01123 /*FALLTHROUGH*/ 01124 case 1: 01125 case 2: 01126 case 23: 01127 case 29: 01128 case 98: 01129 case 99: 01130 break; 01131 } 01132 #endif 01133 switch (op) { 01134 default: burm_PANIC("Unknown op %d in burm_state\n", op); abort(); return 0; 01135 case 1: 01136 return burm_Ret_state; 01137 case 101: 01138 return burm_RetValue_state(l); 01139 case 2: 01140 return burm_BrUncond_state; 01141 case 102: 01142 return burm_BrCond_state(l); 01143 case 3: 01144 return burm_Switch_state(l); 01145 case 7: 01146 return burm_Add_state(l,r); 01147 case 8: 01148 return burm_Sub_state(l,r); 01149 case 9: 01150 return burm_Mul_state(l,r); 01151 case 10: 01152 return burm_Div_state(l,r); 01153 case 11: 01154 return burm_Rem_state(l,r); 01155 case 12: 01156 return burm_And_state(l,r); 01157 case 13: 01158 return burm_Or_state(l,r); 01159 case 14: 01160 return burm_Xor_state(l,r); 01161 case 112: 01162 return burm_BAnd_state(l,r); 01163 case 113: 01164 return burm_BOr_state(l,r); 01165 case 114: 01166 return burm_BXor_state(l,r); 01167 case 214: 01168 return burm_BNot_state(l,r); 01169 case 314: 01170 return burm_Not_state(l,r); 01171 case 115: 01172 return burm_SetCC_state(l,r); 01173 case 21: 01174 return 0; 01175 case 22: 01176 return 0; 01177 case 23: 01178 return burm_Alloca_state; 01179 case 123: 01180 return burm_AllocaN_state(l); 01181 case 24: 01182 return burm_Load_state(l); 01183 case 25: 01184 return burm_Store_state(l,r); 01185 case 26: 01186 return burm_GetElemPtr_state(l); 01187 case 126: 01188 return burm_GetElemPtrIdx_state(l,r); 01189 case 27: 01190 return burm_Phi_state(l,r); 01191 case 28: 01192 return 0; 01193 case 128: 01194 return burm_ToBoolTy_state(l); 01195 case 129: 01196 return burm_ToUByteTy_state(l); 01197 case 130: 01198 return burm_ToSByteTy_state(l); 01199 case 131: 01200 return burm_ToUShortTy_state(l); 01201 case 132: 01202 return burm_ToShortTy_state(l); 01203 case 133: 01204 return burm_ToUIntTy_state(l); 01205 case 134: 01206 return burm_ToIntTy_state(l); 01207 case 135: 01208 return burm_ToULongTy_state(l); 01209 case 136: 01210 return burm_ToLongTy_state(l); 01211 case 137: 01212 return burm_ToFloatTy_state(l); 01213 case 138: 01214 return burm_ToDoubleTy_state(l); 01215 case 139: 01216 return burm_ToArrayTy_state(l); 01217 case 140: 01218 return burm_ToPointerTy_state(l); 01219 case 29: 01220 return burm_Call_state; 01221 case 30: 01222 return burm_Shl_state(l,r); 01223 case 31: 01224 return burm_Shr_state(l,r); 01225 case 32: 01226 return burm_VANext_state(l); 01227 case 33: 01228 return burm_VAArg_state(l); 01229 case 97: 01230 return burm_VRegList_state(l,r); 01231 case 98: 01232 return burm_VReg_state; 01233 case 99: 01234 return burm_Constant_state; 01235 case 100: 01236 return 0; 01237 } 01238 } 01239 #ifdef burm_STATE_LABEL 01240 #define burm_INCLUDE_EXTRA 01241 #else 01242 #ifdef STATE_LABEL 01243 #define burm_INCLUDE_EXTRA 01244 #define burm_STATE_LABEL STATE_LABEL 01245 #define burm_NODEPTR_TYPE NODEPTR_TYPE 01246 #define burm_LEFT_CHILD LEFT_CHILD 01247 #define burm_OP_LABEL OP_LABEL 01248 #define burm_RIGHT_CHILD RIGHT_CHILD 01249 #endif /* STATE_LABEL */ 01250 #endif /* burm_STATE_LABEL */ 01251 01252 #ifdef burm_INCLUDE_EXTRA 01253 01254 #ifdef __STDC__ 01255 int burm_label(burm_NODEPTR_TYPE n) { 01256 #else 01257 int burm_label(n) burm_NODEPTR_TYPE n; { 01258 #endif 01259 burm_assert(n, burm_PANIC("NULL pointer passed to burm_label\n")); 01260 switch (burm_OP_LABEL(n)) { 01261 default: burm_PANIC("Bad op %d in burm_label\n", burm_OP_LABEL(n)); abort(); return 0; 01262 case 1: 01263 case 2: 01264 case 23: 01265 case 29: 01266 case 98: 01267 case 99: 01268 return burm_STATE_LABEL(n) = burm_state(burm_OP_LABEL(n), 0, 0); 01269 case 101: 01270 case 102: 01271 case 3: 01272 case 123: 01273 case 24: 01274 case 26: 01275 case 128: 01276 case 129: 01277 case 130: 01278 case 131: 01279 case 132: 01280 case 133: 01281 case 134: 01282 case 135: 01283 case 136: 01284 case 137: 01285 case 138: 01286 case 139: 01287 case 140: 01288 case 32: 01289 case 33: 01290 return burm_STATE_LABEL(n) = burm_state(burm_OP_LABEL(n), burm_label(burm_LEFT_CHILD(n)), 0); 01291 case 7: 01292 case 8: 01293 case 9: 01294 case 10: 01295 case 11: 01296 case 12: 01297 case 13: 01298 case 14: 01299 case 112: 01300 case 113: 01301 case 114: 01302 case 214: 01303 case 314: 01304 case 115: 01305 case 25: 01306 case 126: 01307 case 27: 01308 case 30: 01309 case 31: 01310 case 97: 01311 return burm_STATE_LABEL(n) = burm_state(burm_OP_LABEL(n), burm_label(burm_LEFT_CHILD(n)), burm_label(burm_RIGHT_CHILD(n))); 01312 } 01313 } 01314 #ifdef __STDC__ 01315 burm_NODEPTR_TYPE * burm_kids(burm_NODEPTR_TYPE p, int rulenumber, burm_NODEPTR_TYPE *kids) { 01316 #else 01317 burm_NODEPTR_TYPE * burm_kids(p, rulenumber, kids) burm_NODEPTR_TYPE p; int rulenumber; burm_NODEPTR_TYPE *kids; { 01318 #endif 01319 burm_assert(p, burm_PANIC("NULL node pointer passed to burm_kids\n")); 01320 burm_assert(kids, burm_PANIC("NULL kids pointer passed to burm_kids\n")); 01321 switch (rulenumber) { 01322 default: 01323 burm_PANIC("Unknown Rule %d in burm_kids;\n", rulenumber); 01324 abort(); 01325 /* NOTREACHED */ 01326 case 111: 01327 case 221: 01328 case 222: 01329 case 241: 01330 case 242: 01331 case 123: 01332 case 124: 01333 case 125: 01334 case 126: 01335 case 127: 01336 case 128: 01337 case 129: 01338 case 130: 01339 case 131: 01340 case 132: 01341 case 133: 01342 case 321: 01343 case 155: 01344 kids[0] = p; 01345 break; 01346 case 3: 01347 case 4: 01348 case 10: 01349 case 21: 01350 case 322: 01351 case 38: 01352 case 138: 01353 case 39: 01354 case 139: 01355 case 40: 01356 case 140: 01357 case 42: 01358 case 33: 01359 case 34: 01360 case 35: 01361 case 135: 01362 case 36: 01363 case 37: 01364 case 338: 01365 case 438: 01366 case 339: 01367 case 439: 01368 case 340: 01369 case 440: 01370 case 421: 01371 case 335: 01372 case 56: 01373 case 62: 01374 case 63: 01375 case 64: 01376 kids[0] = burm_LEFT_CHILD(p); 01377 kids[1] = burm_RIGHT_CHILD(p); 01378 break; 01379 case 2: 01380 case 6: 01381 case 206: 01382 case 8: 01383 case 9: 01384 case 22: 01385 case 23: 01386 case 24: 01387 case 25: 01388 case 26: 01389 case 27: 01390 case 28: 01391 case 29: 01392 case 30: 01393 case 31: 01394 case 32: 01395 case 238: 01396 case 239: 01397 case 240: 01398 case 41: 01399 case 19: 01400 case 20: 01401 case 233: 01402 case 234: 01403 case 235: 01404 case 236: 01405 case 237: 01406 case 538: 01407 case 539: 01408 case 540: 01409 case 51: 01410 case 52: 01411 case 55: 01412 case 58: 01413 case 65: 01414 case 66: 01415 kids[0] = burm_LEFT_CHILD(p); 01416 break; 01417 case 1: 01418 case 5: 01419 case 208: 01420 case 232: 01421 case 57: 01422 case 61: 01423 case 71: 01424 case 72: 01425 break; 01426 } 01427 return kids; 01428 } 01429 #ifdef __STDC__ 01430 burm_NODEPTR_TYPE burm_child(burm_NODEPTR_TYPE p, int index) { 01431 #else 01432 burm_NODEPTR_TYPE burm_child(p, index) burm_NODEPTR_TYPE p; int index; { 01433 #endif 01434 burm_assert(p, burm_PANIC("NULL pointer passed to burm_child\n")); 01435 switch (index) { 01436 case 0: 01437 return burm_LEFT_CHILD(p); 01438 case 1: 01439 return burm_RIGHT_CHILD(p); 01440 } 01441 burm_PANIC("Bad index %d in burm_child;\n", index); 01442 abort(); 01443 return 0; 01444 } 01445 #ifdef __STDC__ 01446 int burm_op_label(burm_NODEPTR_TYPE p) { 01447 #else 01448 int burm_op_label(p) burm_NODEPTR_TYPE p; { 01449 #endif 01450 burm_assert(p, burm_PANIC("NULL pointer passed to burm_op_label\n")); 01451 return burm_OP_LABEL(p); 01452 } 01453 #ifdef __STDC__ 01454 int burm_state_label(burm_NODEPTR_TYPE p) { 01455 #else 01456 int burm_state_label(p) burm_NODEPTR_TYPE p; { 01457 #endif 01458 burm_assert(p, burm_PANIC("NULL pointer passed to burm_state_label\n")); 01459 return burm_STATE_LABEL(p); 01460 } 01461 #endif /* burm_INCLUDE_EXTRA */ 01462 #define burm_ptrreg_NT 19 01463 #define burm_bnot_NT 18 01464 #define burm_setCC_NT 17 01465 #define burm_setCCconst_NT 16 01466 #define burm_todoubleConst_NT 15 01467 #define burm_todouble_NT 14 01468 #define burm_tofloat_NT 13 01469 #define burm_tolong_NT 12 01470 #define burm_toulong_NT 11 01471 #define burm_toint_NT 10 01472 #define burm_touint_NT 9 01473 #define burm_toshort_NT 8 01474 #define burm_toushort_NT 7 01475 #define burm_tosbyte_NT 6 01476 #define burm_toubyte_NT 5 01477 #define burm_tobool_NT 4 01478 #define burm_not_NT 3 01479 #define burm_reg_NT 2 01480 #define burm_stmt_NT 1 01481 #define burm_NT 19 01482 const char * burm_opname[] = { 01483 0, /* 0 */ 01484 "Ret", /* 1 */ 01485 "BrUncond", /* 2 */ 01486 "Switch", /* 3 */ 01487 0, /* 4 */ 01488 0, /* 5 */ 01489 0, /* 6 */ 01490 "Add", /* 7 */ 01491 "Sub", /* 8 */ 01492 "Mul", /* 9 */ 01493 "Div", /* 10 */ 01494 "Rem", /* 11 */ 01495 "And", /* 12 */ 01496 "Or", /* 13 */ 01497 "Xor", /* 14 */ 01498 0, /* 15 */ 01499 0, /* 16 */ 01500 0, /* 17 */ 01501 0, /* 18 */ 01502 0, /* 19 */ 01503 0, /* 20 */ 01504 "Malloc", /* 21 */ 01505 "Free", /* 22 */ 01506 "Alloca", /* 23 */ 01507 "Load", /* 24 */ 01508 "Store", /* 25 */ 01509 "GetElemPtr", /* 26 */ 01510 "Phi", /* 27 */ 01511 "Cast", /* 28 */ 01512 "Call", /* 29 */ 01513 "Shl", /* 30 */ 01514 "Shr", /* 31 */ 01515 "VANext", /* 32 */ 01516 "VAArg", /* 33 */ 01517 0, /* 34 */ 01518 0, /* 35 */ 01519 0, /* 36 */ 01520 0, /* 37 */ 01521 0, /* 38 */ 01522 0, /* 39 */ 01523 0, /* 40 */ 01524 0, /* 41 */ 01525 0, /* 42 */ 01526 0, /* 43 */ 01527 0, /* 44 */ 01528 0, /* 45 */ 01529 0, /* 46 */ 01530 0, /* 47 */ 01531 0, /* 48 */ 01532 0, /* 49 */ 01533 0, /* 50 */ 01534 0, /* 51 */ 01535 0, /* 52 */ 01536 0, /* 53 */ 01537 0, /* 54 */ 01538 0, /* 55 */ 01539 0, /* 56 */ 01540 0, /* 57 */ 01541 0, /* 58 */ 01542 0, /* 59 */ 01543 0, /* 60 */ 01544 0, /* 61 */ 01545 0, /* 62 */ 01546 0, /* 63 */ 01547 0, /* 64 */ 01548 0, /* 65 */ 01549 0, /* 66 */ 01550 0, /* 67 */ 01551 0, /* 68 */ 01552 0, /* 69 */ 01553 0, /* 70 */ 01554 0, /* 71 */ 01555 0, /* 72 */ 01556 0, /* 73 */ 01557 0, /* 74 */ 01558 0, /* 75 */ 01559 0, /* 76 */ 01560 0, /* 77 */ 01561 0, /* 78 */ 01562 0, /* 79 */ 01563 0, /* 80 */ 01564 0, /* 81 */ 01565 0, /* 82 */ 01566 0, /* 83 */ 01567 0, /* 84 */ 01568 0, /* 85 */ 01569 0, /* 86 */ 01570 0, /* 87 */ 01571 0, /* 88 */ 01572 0, /* 89 */ 01573 0, /* 90 */ 01574 0, /* 91 */ 01575 0, /* 92 */ 01576 0, /* 93 */ 01577 0, /* 94 */ 01578 0, /* 95 */ 01579 0, /* 96 */ 01580 "VRegList", /* 97 */ 01581 "VReg", /* 98 */ 01582 "Constant", /* 99 */ 01583 "Label", /* 100 */ 01584 "RetValue", /* 101 */ 01585 "BrCond", /* 102 */ 01586 0, /* 103 */ 01587 0, /* 104 */ 01588 0, /* 105 */ 01589 0, /* 106 */ 01590 0, /* 107 */ 01591 0, /* 108 */ 01592 0, /* 109 */ 01593 0, /* 110 */ 01594 0, /* 111 */ 01595 "BAnd", /* 112 */ 01596 "BOr", /* 113 */ 01597 "BXor", /* 114 */ 01598 "SetCC", /* 115 */ 01599 0, /* 116 */ 01600 0, /* 117 */ 01601 0, /* 118 */ 01602 0, /* 119 */ 01603 0, /* 120 */ 01604 0, /* 121 */ 01605 0, /* 122 */ 01606 "AllocaN", /* 123 */ 01607 0, /* 124 */ 01608 0, /* 125 */ 01609 "GetElemPtrIdx", /* 126 */ 01610 0, /* 127 */ 01611 "ToBoolTy", /* 128 */ 01612 "ToUByteTy", /* 129 */ 01613 "ToSByteTy", /* 130 */ 01614 "ToUShortTy", /* 131 */ 01615 "ToShortTy", /* 132 */ 01616 "ToUIntTy", /* 133 */ 01617 "ToIntTy", /* 134 */ 01618 "ToULongTy", /* 135 */ 01619 "ToLongTy", /* 136 */ 01620 "ToFloatTy", /* 137 */ 01621 "ToDoubleTy", /* 138 */ 01622 "ToArrayTy", /* 139 */ 01623 "ToPointerTy", /* 140 */ 01624 0, /* 141 */ 01625 0, /* 142 */ 01626 0, /* 143 */ 01627 0, /* 144 */ 01628 0, /* 145 */ 01629 0, /* 146 */ 01630 0, /* 147 */ 01631 0, /* 148 */ 01632 0, /* 149 */ 01633 0, /* 150 */ 01634 0, /* 151 */ 01635 0, /* 152 */ 01636 0, /* 153 */ 01637 0, /* 154 */ 01638 0, /* 155 */ 01639 0, /* 156 */ 01640 0, /* 157 */ 01641 0, /* 158 */ 01642 0, /* 159 */ 01643 0, /* 160 */ 01644 0, /* 161 */ 01645 0, /* 162 */ 01646 0, /* 163 */ 01647 0, /* 164 */ 01648 0, /* 165 */ 01649 0, /* 166 */ 01650 0, /* 167 */ 01651 0, /* 168 */ 01652 0, /* 169 */ 01653 0, /* 170 */ 01654 0, /* 171 */ 01655 0, /* 172 */ 01656 0, /* 173 */ 01657 0, /* 174 */ 01658 0, /* 175 */ 01659 0, /* 176 */ 01660 0, /* 177 */ 01661 0, /* 178 */ 01662 0, /* 179 */ 01663 0, /* 180 */ 01664 0, /* 181 */ 01665 0, /* 182 */ 01666 0, /* 183 */ 01667 0, /* 184 */ 01668 0, /* 185 */ 01669 0, /* 186 */ 01670 0, /* 187 */ 01671 0, /* 188 */ 01672 0, /* 189 */ 01673 0, /* 190 */ 01674 0, /* 191 */ 01675 0, /* 192 */ 01676 0, /* 193 */ 01677 0, /* 194 */ 01678 0, /* 195 */ 01679 0, /* 196 */ 01680 0, /* 197 */ 01681 0, /* 198 */ 01682 0, /* 199 */ 01683 0, /* 200 */ 01684 0, /* 201 */ 01685 0, /* 202 */ 01686 0, /* 203 */ 01687 0, /* 204 */ 01688 0, /* 205 */ 01689 0, /* 206 */ 01690 0, /* 207 */ 01691 0, /* 208 */ 01692 0, /* 209 */ 01693 0, /* 210 */ 01694 0, /* 211 */ 01695 0, /* 212 */ 01696 0, /* 213 */ 01697 "BNot", /* 214 */ 01698 0, /* 215 */ 01699 0, /* 216 */ 01700 0, /* 217 */ 01701 0, /* 218 */ 01702 0, /* 219 */ 01703 0, /* 220 */ 01704 0, /* 221 */ 01705 0, /* 222 */ 01706 0, /* 223 */ 01707 0, /* 224 */ 01708 0, /* 225 */ 01709 0, /* 226 */ 01710 0, /* 227 */ 01711 0, /* 228 */ 01712 0, /* 229 */ 01713 0, /* 230 */ 01714 0, /* 231 */ 01715 0, /* 232 */ 01716 0, /* 233 */ 01717 0, /* 234 */ 01718 0, /* 235 */ 01719 0, /* 236 */ 01720 0, /* 237 */ 01721 0, /* 238 */ 01722 0, /* 239 */ 01723 0, /* 240 */ 01724 0, /* 241 */ 01725 0, /* 242 */ 01726 0, /* 243 */ 01727 0, /* 244 */ 01728 0, /* 245 */ 01729 0, /* 246 */ 01730 0, /* 247 */ 01731 0, /* 248 */ 01732 0, /* 249 */ 01733 0, /* 250 */ 01734 0, /* 251 */ 01735 0, /* 252 */ 01736 0, /* 253 */ 01737 0, /* 254 */ 01738 0, /* 255 */ 01739 0, /* 256 */ 01740 0, /* 257 */ 01741 0, /* 258 */ 01742 0, /* 259 */ 01743 0, /* 260 */ 01744 0, /* 261 */ 01745 0, /* 262 */ 01746 0, /* 263 */ 01747 0, /* 264 */ 01748 0, /* 265 */ 01749 0, /* 266 */ 01750 0, /* 267 */ 01751 0, /* 268 */ 01752 0, /* 269 */ 01753 0, /* 270 */ 01754 0, /* 271 */ 01755 0, /* 272 */ 01756 0, /* 273 */ 01757 0, /* 274 */ 01758 0, /* 275 */ 01759 0, /* 276 */ 01760 0, /* 277 */ 01761 0, /* 278 */ 01762 0, /* 279 */ 01763 0, /* 280 */ 01764 0, /* 281 */ 01765 0, /* 282 */ 01766 0, /* 283 */ 01767 0, /* 284 */ 01768 0, /* 285 */ 01769 0, /* 286 */ 01770 0, /* 287 */ 01771 0, /* 288 */ 01772 0, /* 289 */ 01773 0, /* 290 */ 01774 0, /* 291 */ 01775 0, /* 292 */ 01776 0, /* 293 */ 01777 0, /* 294 */ 01778 0, /* 295 */ 01779 0, /* 296 */ 01780 0, /* 297 */ 01781 0, /* 298 */ 01782 0, /* 299 */ 01783 0, /* 300 */ 01784 0, /* 301 */ 01785 0, /* 302 */ 01786 0, /* 303 */ 01787 0, /* 304 */ 01788 0, /* 305 */ 01789 0, /* 306 */ 01790 0, /* 307 */ 01791 0, /* 308 */ 01792 0, /* 309 */ 01793 0, /* 310 */ 01794 0, /* 311 */ 01795 0, /* 312 */ 01796 0, /* 313 */ 01797 "Not" 01798 }; 01799 char burm_arity[] = { 01800 -1, /* 0 */ 01801 0, /* 1 */ 01802 0, /* 2 */ 01803 1, /* 3 */ 01804 -1, /* 4 */ 01805 -1, /* 5 */ 01806 -1, /* 6 */ 01807 2, /* 7 */ 01808 2, /* 8 */ 01809 2, /* 9 */ 01810 2, /* 10 */ 01811 2, /* 11 */ 01812 2, /* 12 */ 01813 2, /* 13 */ 01814 2, /* 14 */ 01815 -1, /* 15 */ 01816 -1, /* 16 */ 01817 -1, /* 17 */ 01818 -1, /* 18 */ 01819 -1, /* 19 */ 01820 -1, /* 20 */ 01821 -1, /* 21 */ 01822 -1, /* 22 */ 01823 0, /* 23 */ 01824 1, /* 24 */ 01825 2, /* 25 */ 01826 1, /* 26 */ 01827 2, /* 27 */ 01828 -1, /* 28 */ 01829 0, /* 29 */ 01830 2, /* 30 */ 01831 2, /* 31 */ 01832 1, /* 32 */ 01833 1, /* 33 */ 01834 -1, /* 34 */ 01835 -1, /* 35 */ 01836 -1, /* 36 */ 01837 -1, /* 37 */ 01838 -1, /* 38 */ 01839 -1, /* 39 */ 01840 -1, /* 40 */ 01841 -1, /* 41 */ 01842 -1, /* 42 */ 01843 -1, /* 43 */ 01844 -1, /* 44 */ 01845 -1, /* 45 */ 01846 -1, /* 46 */ 01847 -1, /* 47 */ 01848 -1, /* 48 */ 01849 -1, /* 49 */ 01850 -1, /* 50 */ 01851 -1, /* 51 */ 01852 -1, /* 52 */ 01853 -1, /* 53 */ 01854 -1, /* 54 */ 01855 -1, /* 55 */ 01856 -1, /* 56 */ 01857 -1, /* 57 */ 01858 -1, /* 58 */ 01859 -1, /* 59 */ 01860 -1, /* 60 */ 01861 -1, /* 61 */ 01862 -1, /* 62 */ 01863 -1, /* 63 */ 01864 -1, /* 64 */ 01865 -1, /* 65 */ 01866 -1, /* 66 */ 01867 -1, /* 67 */ 01868 -1, /* 68 */ 01869 -1, /* 69 */ 01870 -1, /* 70 */ 01871 -1, /* 71 */ 01872 -1, /* 72 */ 01873 -1, /* 73 */ 01874 -1, /* 74 */ 01875 -1, /* 75 */ 01876 -1, /* 76 */ 01877 -1, /* 77 */ 01878 -1, /* 78 */ 01879 -1, /* 79 */ 01880 -1, /* 80 */ 01881 -1, /* 81 */ 01882 -1, /* 82 */ 01883 -1, /* 83 */ 01884 -1, /* 84 */ 01885 -1, /* 85 */ 01886 -1, /* 86 */ 01887 -1, /* 87 */ 01888 -1, /* 88 */ 01889 -1, /* 89 */ 01890 -1, /* 90 */ 01891 -1, /* 91 */ 01892 -1, /* 92 */ 01893 -1, /* 93 */ 01894 -1, /* 94 */ 01895 -1, /* 95 */ 01896 -1, /* 96 */ 01897 2, /* 97 */ 01898 0, /* 98 */ 01899 0, /* 99 */ 01900 -1, /* 100 */ 01901 1, /* 101 */ 01902 1, /* 102 */ 01903 -1, /* 103 */ 01904 -1, /* 104 */ 01905 -1, /* 105 */ 01906 -1, /* 106 */ 01907 -1, /* 107 */ 01908 -1, /* 108 */ 01909 -1, /* 109 */ 01910 -1, /* 110 */ 01911 -1, /* 111 */ 01912 2, /* 112 */ 01913 2, /* 113 */ 01914 2, /* 114 */ 01915 2, /* 115 */ 01916 -1, /* 116 */ 01917 -1, /* 117 */ 01918 -1, /* 118 */ 01919 -1, /* 119 */ 01920 -1, /* 120 */ 01921 -1, /* 121 */ 01922 -1, /* 122 */ 01923 1, /* 123 */ 01924 -1, /* 124 */ 01925 -1, /* 125 */ 01926 2, /* 126 */ 01927 -1, /* 127 */ 01928 1, /* 128 */ 01929 1, /* 129 */ 01930 1, /* 130 */ 01931 1, /* 131 */ 01932 1, /* 132 */ 01933 1, /* 133 */ 01934 1, /* 134 */ 01935 1, /* 135 */ 01936 1, /* 136 */ 01937 1, /* 137 */ 01938 1, /* 138 */ 01939 1, /* 139 */ 01940 1, /* 140 */ 01941 -1, /* 141 */ 01942 -1, /* 142 */ 01943 -1, /* 143 */ 01944 -1, /* 144 */ 01945 -1, /* 145 */ 01946 -1, /* 146 */ 01947 -1, /* 147 */ 01948 -1, /* 148 */ 01949 -1, /* 149 */ 01950 -1, /* 150 */ 01951 -1, /* 151 */ 01952 -1, /* 152 */ 01953 -1, /* 153 */ 01954 -1, /* 154 */ 01955 -1, /* 155 */ 01956 -1, /* 156 */ 01957 -1, /* 157 */ 01958 -1, /* 158 */ 01959 -1, /* 159 */ 01960 -1, /* 160 */ 01961 -1, /* 161 */ 01962 -1, /* 162 */ 01963 -1, /* 163 */ 01964 -1, /* 164 */ 01965 -1, /* 165 */ 01966 -1, /* 166 */ 01967 -1, /* 167 */ 01968 -1, /* 168 */ 01969 -1, /* 169 */ 01970 -1, /* 170 */ 01971 -1, /* 171 */ 01972 -1, /* 172 */ 01973 -1, /* 173 */ 01974 -1, /* 174 */ 01975 -1, /* 175 */ 01976 -1, /* 176 */ 01977 -1, /* 177 */ 01978 -1, /* 178 */ 01979 -1, /* 179 */ 01980 -1, /* 180 */ 01981 -1, /* 181 */ 01982 -1, /* 182 */ 01983 -1, /* 183 */ 01984 -1, /* 184 */ 01985 -1, /* 185 */ 01986 -1, /* 186 */ 01987 -1, /* 187 */ 01988 -1, /* 188 */ 01989 -1, /* 189 */ 01990 -1, /* 190 */ 01991 -1, /* 191 */ 01992 -1, /* 192 */ 01993 -1, /* 193 */ 01994 -1, /* 194 */ 01995 -1, /* 195 */ 01996 -1, /* 196 */ 01997 -1, /* 197 */ 01998 -1, /* 198 */ 01999 -1, /* 199 */ 02000 -1, /* 200 */ 02001 -1, /* 201 */ 02002 -1, /* 202 */ 02003 -1, /* 203 */ 02004 -1, /* 204 */ 02005 -1, /* 205 */ 02006 -1, /* 206 */ 02007 -1, /* 207 */ 02008 -1, /* 208 */ 02009 -1, /* 209 */ 02010 -1, /* 210 */ 02011 -1, /* 211 */ 02012 -1, /* 212 */ 02013 -1, /* 213 */ 02014 2, /* 214 */ 02015 -1, /* 215 */ 02016 -1, /* 216 */ 02017 -1, /* 217 */ 02018 -1, /* 218 */ 02019 -1, /* 219 */ 02020 -1, /* 220 */ 02021 -1, /* 221 */ 02022 -1, /* 222 */ 02023 -1, /* 223 */ 02024 -1, /* 224 */ 02025 -1, /* 225 */ 02026 -1, /* 226 */ 02027 -1, /* 227 */ 02028 -1, /* 228 */ 02029 -1, /* 229 */ 02030 -1, /* 230 */ 02031 -1, /* 231 */ 02032 -1, /* 232 */ 02033 -1, /* 233 */ 02034 -1, /* 234 */ 02035 -1, /* 235 */ 02036 -1, /* 236 */ 02037 -1, /* 237 */ 02038 -1, /* 238 */ 02039 -1, /* 239 */ 02040 -1, /* 240 */ 02041 -1, /* 241 */ 02042 -1, /* 242 */ 02043 -1, /* 243 */ 02044 -1, /* 244 */ 02045 -1, /* 245 */ 02046 -1, /* 246 */ 02047 -1, /* 247 */ 02048 -1, /* 248 */ 02049 -1, /* 249 */ 02050 -1, /* 250 */ 02051 -1, /* 251 */ 02052 -1, /* 252 */ 02053 -1, /* 253 */ 02054 -1, /* 254 */ 02055 -1, /* 255 */ 02056 -1, /* 256 */ 02057 -1, /* 257 */ 02058 -1, /* 258 */ 02059 -1, /* 259 */ 02060 -1, /* 260 */ 02061 -1, /* 261 */ 02062 -1, /* 262 */ 02063 -1, /* 263 */ 02064 -1, /* 264 */ 02065 -1, /* 265 */ 02066 -1, /* 266 */ 02067 -1, /* 267 */ 02068 -1, /* 268 */ 02069 -1, /* 269 */ 02070 -1, /* 270 */ 02071 -1, /* 271 */ 02072 -1, /* 272 */ 02073 -1, /* 273 */ 02074 -1, /* 274 */ 02075 -1, /* 275 */ 02076 -1, /* 276 */ 02077 -1, /* 277 */ 02078 -1, /* 278 */ 02079 -1, /* 279 */ 02080 -1, /* 280 */ 02081 -1, /* 281 */ 02082 -1, /* 282 */ 02083 -1, /* 283 */ 02084 -1, /* 284 */ 02085 -1, /* 285 */ 02086 -1, /* 286 */ 02087 -1, /* 287 */ 02088 -1, /* 288 */ 02089 -1, /* 289 */ 02090 -1, /* 290 */ 02091 -1, /* 291 */ 02092 -1, /* 292 */ 02093 -1, /* 293 */ 02094 -1, /* 294 */ 02095 -1, /* 295 */ 02096 -1, /* 296 */ 02097 -1, /* 297 */ 02098 -1, /* 298 */ 02099 -1, /* 299 */ 02100 -1, /* 300 */ 02101 -1, /* 301 */ 02102 -1, /* 302 */ 02103 -1, /* 303 */ 02104 -1, /* 304 */ 02105 -1, /* 305 */ 02106 -1, /* 306 */ 02107 -1, /* 307 */ 02108 -1, /* 308 */ 02109 -1, /* 309 */ 02110 -1, /* 310 */ 02111 -1, /* 311 */ 02112 -1, /* 312 */ 02113 -1, /* 313 */ 02114 2 02115 }; 02116 int burm_max_op = 314; 02117 int burm_max_state = 72; 02118 #define burm_Max_state 72 02119 const char *burm_string[] = { 02120 0, 02121 "stmt: Ret", 02122 "stmt: RetValue(reg)", 02123 "stmt: Store(reg, reg)", 02124 "stmt: Store(reg, ptrreg)", 02125 "stmt: BrUncond", 02126 "stmt: BrCond(setCC)", 02127 0, 02128 "stmt: BrCond(reg)", 02129 "stmt: Switch(reg)", 02130 "reg: VRegList(reg, reg)", 02131 0, 02132 0, 02133 0, 02134 0, 02135 0, 02136 0, 02137 0, 02138 0, 02139 "reg: ToArrayTy(reg)", 02140 "reg: ToPointerTy(reg)", 02141 "not: Not(reg, reg)", 02142 "tobool: ToBoolTy(reg)", 02143 "toubyte: ToUByteTy(reg)", 02144 "tosbyte: ToSByteTy(reg)", 02145 "toushort: ToUShortTy(reg)", 02146 "toshort: ToShortTy(reg)", 02147 "touint: ToUIntTy(reg)", 02148 "toint: ToIntTy(reg)", 02149 "toulong: ToULongTy(reg)", 02150 "tolong: ToLongTy(reg)", 02151 "tofloat: ToFloatTy(reg)", 02152 "todouble: ToDoubleTy(reg)", 02153 "reg: Add(reg, reg)", 02154 "reg: Sub(reg, reg)", 02155 "reg: Mul(reg, reg)", 02156 "reg: Div(reg, reg)", 02157 "reg: Rem(reg, reg)", 02158 "reg: And(reg, reg)", 02159 "reg: Or(reg, reg)", 02160 "reg: Xor(reg, reg)", 02161 "setCCconst: SetCC(reg, Constant)", 02162 "setCC: SetCC(reg, reg)", 02163 0, 02164 0, 02165 0, 02166 0, 02167 0, 02168 0, 02169 0, 02170 0, 02171 "reg: Load(reg)", 02172 "reg: Load(ptrreg)", 02173 0, 02174 0, 02175 "ptrreg: GetElemPtr(reg)", 02176 "ptrreg: GetElemPtrIdx(reg, reg)", 02177 "reg: Alloca", 02178 "reg: AllocaN(reg)", 02179 0, 02180 0, 02181 "reg: Call", 02182 "reg: Shl(reg, reg)", 02183 "reg: Shr(reg, reg)", 02184 "reg: Phi(reg, reg)", 02185 "reg: VANext(reg)", 02186 "reg: VAArg(reg)", 02187 0, 02188 0, 02189 0, 02190 0, 02191 "reg: VReg", 02192 "reg: Constant", 02193 0, 02194 0, 02195 0, 02196 0, 02197 0, 02198 0, 02199 0, 02200 0, 02201 0, 02202 0, 02203 0, 02204 0, 02205 0, 02206 0, 02207 0, 02208 0, 02209 0, 02210 0, 02211 0, 02212 0, 02213 0, 02214 0, 02215 0, 02216 0, 02217 0, 02218 0, 02219 0, 02220 0, 02221 0, 02222 0, 02223 0, 02224 0, 02225 0, 02226 0, 02227 0, 02228 0, 02229 0, 02230 0, 02231 "stmt: reg", 02232 0, 02233 0, 02234 0, 02235 0, 02236 0, 02237 0, 02238 0, 02239 0, 02240 0, 02241 0, 02242 0, 02243 "reg: toubyte", 02244 "reg: tosbyte", 02245 "reg: toushort", 02246 "reg: toshort", 02247 "reg: touint", 02248 "reg: toint", 02249 "reg: toulong", 02250 "reg: tolong", 02251 "reg: tofloat", 02252 "reg: todouble", 02253 "reg: todoubleConst", 02254 0, 02255 "reg: Mul(todouble, todouble)", 02256 0, 02257 0, 02258 "reg: And(reg, not)", 02259 "reg: Or(reg, not)", 02260 "reg: Xor(reg, not)", 02261 0, 02262 0, 02263 0, 02264 0, 02265 0, 02266 0, 02267 0, 02268 0, 02269 0, 02270 0, 02271 0, 02272 0, 02273 0, 02274 0, 02275 "reg: ptrreg", 02276 0, 02277 0, 02278 0, 02279 0, 02280 0, 02281 0, 02282 0, 02283 0, 02284 0, 02285 0, 02286 0, 02287 0, 02288 0, 02289 0, 02290 0, 02291 0, 02292 0, 02293 0, 02294 0, 02295 0, 02296 0, 02297 0, 02298 0, 02299 0, 02300 0, 02301 0, 02302 0, 02303 0, 02304 0, 02305 0, 02306 0, 02307 0, 02308 0, 02309 0, 02310 0, 02311 0, 02312 0, 02313 0, 02314 0, 02315 0, 02316 0, 02317 0, 02318 0, 02319 0, 02320 0, 02321 0, 02322 0, 02323 0, 02324 0, 02325 0, 02326 "stmt: BrCond(setCCconst)", 02327 0, 02328 "stmt: BrCond(Constant)", 02329 0, 02330 0, 02331 0, 02332 0, 02333 0, 02334 0, 02335 0, 02336 0, 02337 0, 02338 0, 02339 0, 02340 0, 02341 "reg: not", 02342 "reg: tobool", 02343 0, 02344 0, 02345 0, 02346 0, 02347 0, 02348 0, 02349 0, 02350 0, 02351 0, 02352 "todoubleConst: ToDoubleTy(Constant)", 02353 "reg: Add(reg, Constant)", 02354 "reg: Sub(reg, Constant)", 02355 "reg: Mul(reg, Constant)", 02356 "reg: Div(reg, Constant)", 02357 "reg: Rem(reg, Constant)", 02358 "reg: And(reg, Constant)", 02359 "reg: Or(reg, Constant)", 02360 "reg: Xor(reg, Constant)", 02361 "reg: setCCconst", 02362 "reg: setCC", 02363 0, 02364 0, 02365 0, 02366 0, 02367 0, 02368 0, 02369 0, 02370 0, 02371 0, 02372 0, 02373 0, 02374 0, 02375 0, 02376 0, 02377 0, 02378 0, 02379 0, 02380 0, 02381 0, 02382 0, 02383 0, 02384 0, 02385 0, 02386 0, 02387 0, 02388 0, 02389 0, 02390 0, 02391 0, 02392 0, 02393 0, 02394 0, 02395 0, 02396 0, 02397 0, 02398 0, 02399 0, 02400 0, 02401 0, 02402 0, 02403 0, 02404 0, 02405 0, 02406 0, 02407 0, 02408 0, 02409 0, 02410 0, 02411 0, 02412 0, 02413 0, 02414 0, 02415 0, 02416 0, 02417 0, 02418 0, 02419 0, 02420 0, 02421 0, 02422 0, 02423 0, 02424 0, 02425 0, 02426 0, 02427 0, 02428 0, 02429 0, 02430 0, 02431 0, 02432 0, 02433 0, 02434 0, 02435 0, 02436 0, 02437 0, 02438 0, 02439 0, 02440 0, 02441 "reg: bnot", 02442 "not: Not(tobool, reg)", 02443 0, 02444 0, 02445 0, 02446 0, 02447 0, 02448 0, 02449 0, 02450 0, 02451 0, 02452 0, 02453 0, 02454 0, 02455 "reg: Mul(todouble, todoubleConst)", 02456 0, 02457 0, 02458 "reg: BAnd(reg, reg)", 02459 "reg: BOr(reg, reg)", 02460 "reg: BXor(reg, reg)", 02461 0, 02462 0, 02463 0, 02464 0, 02465 0, 02466 0, 02467 0, 02468 0, 02469 0, 02470 0, 02471 0, 02472 0, 02473 0, 02474 0, 02475 0, 02476 0, 02477 0, 02478 0, 02479 0, 02480 0, 02481 0, 02482 0, 02483 0, 02484 0, 02485 0, 02486 0, 02487 0, 02488 0, 02489 0, 02490 0, 02491 0, 02492 0, 02493 0, 02494 0, 02495 0, 02496 0, 02497 0, 02498 0, 02499 0, 02500 0, 02501 0, 02502 0, 02503 0, 02504 0, 02505 0, 02506 0, 02507 0, 02508 0, 02509 0, 02510 0, 02511 0, 02512 0, 02513 0, 02514 0, 02515 0, 02516 0, 02517 0, 02518 0, 02519 0, 02520 0, 02521 0, 02522 0, 02523 0, 02524 0, 02525 0, 02526 0, 02527 0, 02528 0, 02529 0, 02530 0, 02531 0, 02532 0, 02533 0, 02534 0, 02535 0, 02536 0, 02537 0, 02538 0, 02539 0, 02540 0, 02541 "bnot: BNot(reg, reg)", 02542 0, 02543 0, 02544 0, 02545 0, 02546 0, 02547 0, 02548 0, 02549 0, 02550 0, 02551 0, 02552 0, 02553 0, 02554 0, 02555 0, 02556 0, 02557 0, 02558 "reg: BAnd(reg, bnot)", 02559 "reg: BOr(reg, bnot)", 02560 "reg: BXor(reg, bnot)", 02561 0, 02562 0, 02563 0, 02564 0, 02565 0, 02566 0, 02567 0, 02568 0, 02569 0, 02570 0, 02571 0, 02572 0, 02573 0, 02574 0, 02575 0, 02576 0, 02577 0, 02578 0, 02579 0, 02580 0, 02581 0, 02582 0, 02583 0, 02584 0, 02585 0, 02586 0, 02587 0, 02588 0, 02589 0, 02590 0, 02591 0, 02592 0, 02593 0, 02594 0, 02595 0, 02596 0, 02597 0, 02598 0, 02599 0, 02600 0, 02601 0, 02602 0, 02603 0, 02604 0, 02605 0, 02606 0, 02607 0, 02608 0, 02609 0, 02610 0, 02611 0, 02612 0, 02613 0, 02614 0, 02615 0, 02616 0, 02617 0, 02618 0, 02619 0, 02620 0, 02621 0, 02622 0, 02623 0, 02624 0, 02625 0, 02626 0, 02627 0, 02628 0, 02629 0, 02630 0, 02631 0, 02632 0, 02633 0, 02634 0, 02635 0, 02636 0, 02637 0, 02638 0, 02639 0, 02640 0, 02641 0, 02642 0, 02643 0, 02644 0, 02645 0, 02646 0, 02647 0, 02648 0, 02649 0, 02650 0, 02651 0, 02652 0, 02653 0, 02654 0, 02655 0, 02656 0, 02657 0, 02658 "reg: BAnd(reg, Constant)", 02659 "reg: BOr(reg, Constant)", 02660 "reg: BXor(reg, Constant)", 02661 }; 02662 int burm_max_rule = 540; 02663 #define burm_Max_rule 540 02664 short burm_rule_descriptor_0[] = { 0, 0 }; 02665 short burm_rule_descriptor_1[] = { -1, 1, }; 02666 short burm_rule_descriptor_2[] = { -1, 101, -2, }; 02667 short burm_rule_descriptor_3[] = { -1, 25, -2, -2, }; 02668 short burm_rule_descriptor_4[] = { -1, 25, -2, -19, }; 02669 short burm_rule_descriptor_5[] = { -1, 2, }; 02670 short burm_rule_descriptor_6[] = { -1, 102, -17, }; 02671 short burm_rule_descriptor_8[] = { -1, 102, -2, }; 02672 short burm_rule_descriptor_9[] = { -1, 3, -2, }; 02673 short burm_rule_descriptor_10[] = { -2, 97, -2, -2, }; 02674 short burm_rule_descriptor_19[] = { -2, 139, -2, }; 02675 short burm_rule_descriptor_20[] = { -2, 140, -2, }; 02676 short burm_rule_descriptor_21[] = { -3, 314, -2, -2, }; 02677 short burm_rule_descriptor_22[] = { -4, 128, -2, }; 02678 short burm_rule_descriptor_23[] = { -5, 129, -2, }; 02679 short burm_rule_descriptor_24[] = { -6, 130, -2, }; 02680 short burm_rule_descriptor_25[] = { -7, 131, -2, }; 02681 short burm_rule_descriptor_26[] = { -8, 132, -2, }; 02682 short burm_rule_descriptor_27[] = { -9, 133, -2, }; 02683 short burm_rule_descriptor_28[] = { -10, 134, -2, }; 02684 short burm_rule_descriptor_29[] = { -11, 135, -2, }; 02685 short burm_rule_descriptor_30[] = { -12, 136, -2, }; 02686 short burm_rule_descriptor_31[] = { -13, 137, -2, }; 02687 short burm_rule_descriptor_32[] = { -14, 138, -2, }; 02688 short burm_rule_descriptor_33[] = { -2, 7, -2, -2, }; 02689 short burm_rule_descriptor_34[] = { -2, 8, -2, -2, }; 02690 short burm_rule_descriptor_35[] = { -2, 9, -2, -2, }; 02691 short burm_rule_descriptor_36[] = { -2, 10, -2, -2, }; 02692 short burm_rule_descriptor_37[] = { -2, 11, -2, -2, }; 02693 short burm_rule_descriptor_38[] = { -2, 12, -2, -2, }; 02694 short burm_rule_descriptor_39[] = { -2, 13, -2, -2, }; 02695 short burm_rule_descriptor_40[] = { -2, 14, -2, -2, }; 02696 short burm_rule_descriptor_41[] = { -16, 115, -2, 99, }; 02697 short burm_rule_descriptor_42[] = { -17, 115, -2, -2, }; 02698 short burm_rule_descriptor_51[] = { -2, 24, -2, }; 02699 short burm_rule_descriptor_52[] = { -2, 24, -19, }; 02700 short burm_rule_descriptor_55[] = { -19, 26, -2, }; 02701 short burm_rule_descriptor_56[] = { -19, 126, -2, -2, }; 02702 short burm_rule_descriptor_57[] = { -2, 23, }; 02703 short burm_rule_descriptor_58[] = { -2, 123, -2, }; 02704 short burm_rule_descriptor_61[] = { -2, 29, }; 02705 short burm_rule_descriptor_62[] = { -2, 30, -2, -2, }; 02706 short burm_rule_descriptor_63[] = { -2, 31, -2, -2, }; 02707 short burm_rule_descriptor_64[] = { -2, 27, -2, -2, }; 02708 short burm_rule_descriptor_65[] = { -2, 32, -2, }; 02709 short burm_rule_descriptor_66[] = { -2, 33, -2, }; 02710 short burm_rule_descriptor_71[] = { -2, 98, }; 02711 short burm_rule_descriptor_72[] = { -2, 99, }; 02712 short burm_rule_descriptor_111[] = { -1, -2, }; 02713 short burm_rule_descriptor_123[] = { -2, -5, }; 02714 short burm_rule_descriptor_124[] = { -2, -6, }; 02715 short burm_rule_descriptor_125[] = { -2, -7, }; 02716 short burm_rule_descriptor_126[] = { -2, -8, }; 02717 short burm_rule_descriptor_127[] = { -2, -9, }; 02718 short burm_rule_descriptor_128[] = { -2, -10, }; 02719 short burm_rule_descriptor_129[] = { -2, -11, }; 02720 short burm_rule_descriptor_130[] = { -2, -12, }; 02721 short burm_rule_descriptor_131[] = { -2, -13, }; 02722 short burm_rule_descriptor_132[] = { -2, -14, }; 02723 short burm_rule_descriptor_133[] = { -2, -15, }; 02724 short burm_rule_descriptor_135[] = { -2, 9, -14, -14, }; 02725 short burm_rule_descriptor_138[] = { -2, 12, -2, -3, }; 02726 short burm_rule_descriptor_139[] = { -2, 13, -2, -3, }; 02727 short burm_rule_descriptor_140[] = { -2, 14, -2, -3, }; 02728 short burm_rule_descriptor_155[] = { -2, -19, }; 02729 short burm_rule_descriptor_206[] = { -1, 102, -16, }; 02730 short burm_rule_descriptor_208[] = { -1, 102, 99, }; 02731 short burm_rule_descriptor_221[] = { -2, -3, }; 02732 short burm_rule_descriptor_222[] = { -2, -4, }; 02733 short burm_rule_descriptor_232[] = { -15, 138, 99, }; 02734 short burm_rule_descriptor_233[] = { -2, 7, -2, 99, }; 02735 short burm_rule_descriptor_234[] = { -2, 8, -2, 99, }; 02736 short burm_rule_descriptor_235[] = { -2, 9, -2, 99, }; 02737 short burm_rule_descriptor_236[] = { -2, 10, -2, 99, }; 02738 short burm_rule_descriptor_237[] = { -2, 11, -2, 99, }; 02739 short burm_rule_descriptor_238[] = { -2, 12, -2, 99, }; 02740 short burm_rule_descriptor_239[] = { -2, 13, -2, 99, }; 02741 short burm_rule_descriptor_240[] = { -2, 14, -2, 99, }; 02742 short burm_rule_descriptor_241[] = { -2, -16, }; 02743 short burm_rule_descriptor_242[] = { -2, -17, }; 02744 short burm_rule_descriptor_321[] = { -2, -18, }; 02745 short burm_rule_descriptor_322[] = { -3, 314, -4, -2, }; 02746 short burm_rule_descriptor_335[] = { -2, 9, -14, -15, }; 02747 short burm_rule_descriptor_338[] = { -2, 112, -2, -2, }; 02748 short burm_rule_descriptor_339[] = { -2, 113, -2, -2, }; 02749 short burm_rule_descriptor_340[] = { -2, 114, -2, -2, }; 02750 short burm_rule_descriptor_421[] = { -18, 214, -2, -2, }; 02751 short burm_rule_descriptor_438[] = { -2, 112, -2, -18, }; 02752 short burm_rule_descriptor_439[] = { -2, 113, -2, -18, }; 02753 short burm_rule_descriptor_440[] = { -2, 114, -2, -18, }; 02754 short burm_rule_descriptor_538[] = { -2, 112, -2, 99, }; 02755 short burm_rule_descriptor_539[] = { -2, 113, -2, 99, }; 02756 short burm_rule_descriptor_540[] = { -2, 114, -2, 99, }; 02757 /* burm_rule_descriptors[0][1] = 1 iff grammar is normal form. */ 02758 short * burm_rule_descriptors[] = { 02759 burm_rule_descriptor_0, 02760 burm_rule_descriptor_1, 02761 burm_rule_descriptor_2, 02762 burm_rule_descriptor_3, 02763 burm_rule_descriptor_4, 02764 burm_rule_descriptor_5, 02765 burm_rule_descriptor_6, 02766 burm_rule_descriptor_0, 02767 burm_rule_descriptor_8, 02768 burm_rule_descriptor_9, 02769 burm_rule_descriptor_10, 02770 burm_rule_descriptor_0, 02771 burm_rule_descriptor_0, 02772 burm_rule_descriptor_0, 02773 burm_rule_descriptor_0, 02774 burm_rule_descriptor_0, 02775 burm_rule_descriptor_0, 02776 burm_rule_descriptor_0, 02777 burm_rule_descriptor_0, 02778 burm_rule_descriptor_19, 02779 burm_rule_descriptor_20, 02780 burm_rule_descriptor_21, 02781 burm_rule_descriptor_22, 02782 burm_rule_descriptor_23, 02783 burm_rule_descriptor_24, 02784 burm_rule_descriptor_25, 02785 burm_rule_descriptor_26, 02786 burm_rule_descriptor_27, 02787 burm_rule_descriptor_28, 02788 burm_rule_descriptor_29, 02789 burm_rule_descriptor_30, 02790 burm_rule_descriptor_31, 02791 burm_rule_descriptor_32, 02792 burm_rule_descriptor_33, 02793 burm_rule_descriptor_34, 02794 burm_rule_descriptor_35, 02795 burm_rule_descriptor_36, 02796 burm_rule_descriptor_37, 02797 burm_rule_descriptor_38, 02798 burm_rule_descriptor_39, 02799 burm_rule_descriptor_40, 02800 burm_rule_descriptor_41, 02801 burm_rule_descriptor_42, 02802 burm_rule_descriptor_0, 02803 burm_rule_descriptor_0, 02804 burm_rule_descriptor_0, 02805 burm_rule_descriptor_0, 02806 burm_rule_descriptor_0, 02807 burm_rule_descriptor_0, 02808 burm_rule_descriptor_0, 02809 burm_rule_descriptor_0, 02810 burm_rule_descriptor_51, 02811 burm_rule_descriptor_52, 02812 burm_rule_descriptor_0, 02813 burm_rule_descriptor_0, 02814 burm_rule_descriptor_55, 02815 burm_rule_descriptor_56, 02816 burm_rule_descriptor_57, 02817 burm_rule_descriptor_58, 02818 burm_rule_descriptor_0, 02819 burm_rule_descriptor_0, 02820 burm_rule_descriptor_61, 02821 burm_rule_descriptor_62, 02822 burm_rule_descriptor_63, 02823 burm_rule_descriptor_64, 02824 burm_rule_descriptor_65, 02825 burm_rule_descriptor_66, 02826 burm_rule_descriptor_0, 02827 burm_rule_descriptor_0, 02828 burm_rule_descriptor_0, 02829 burm_rule_descriptor_0, 02830 burm_rule_descriptor_71, 02831 burm_rule_descriptor_72, 02832 burm_rule_descriptor_0, 02833 burm_rule_descriptor_0, 02834 burm_rule_descriptor_0, 02835 burm_rule_descriptor_0, 02836 burm_rule_descriptor_0, 02837 burm_rule_descriptor_0, 02838 burm_rule_descriptor_0, 02839 burm_rule_descriptor_0, 02840 burm_rule_descriptor_0, 02841 burm_rule_descriptor_0, 02842 burm_rule_descriptor_0, 02843 burm_rule_descriptor_0, 02844 burm_rule_descriptor_0, 02845 burm_rule_descriptor_0, 02846 burm_rule_descriptor_0, 02847 burm_rule_descriptor_0, 02848 burm_rule_descriptor_0, 02849 burm_rule_descriptor_0, 02850 burm_rule_descriptor_0, 02851 burm_rule_descriptor_0, 02852 burm_rule_descriptor_0, 02853 burm_rule_descriptor_0, 02854 burm_rule_descriptor_0, 02855 burm_rule_descriptor_0, 02856 burm_rule_descriptor_0, 02857 burm_rule_descriptor_0, 02858 burm_rule_descriptor_0, 02859 burm_rule_descriptor_0, 02860 burm_rule_descriptor_0, 02861 burm_rule_descriptor_0, 02862 burm_rule_descriptor_0, 02863 burm_rule_descriptor_0, 02864 burm_rule_descriptor_0, 02865 burm_rule_descriptor_0, 02866 burm_rule_descriptor_0, 02867 burm_rule_descriptor_0, 02868 burm_rule_descriptor_0, 02869 burm_rule_descriptor_0, 02870 burm_rule_descriptor_111, 02871 burm_rule_descriptor_0, 02872 burm_rule_descriptor_0, 02873 burm_rule_descriptor_0, 02874 burm_rule_descriptor_0, 02875 burm_rule_descriptor_0, 02876 burm_rule_descriptor_0, 02877 burm_rule_descriptor_0, 02878 burm_rule_descriptor_0, 02879 burm_rule_descriptor_0, 02880 burm_rule_descriptor_0, 02881 burm_rule_descriptor_0, 02882 burm_rule_descriptor_123, 02883 burm_rule_descriptor_124, 02884 burm_rule_descriptor_125, 02885 burm_rule_descriptor_126, 02886 burm_rule_descriptor_127, 02887 burm_rule_descriptor_128, 02888 burm_rule_descriptor_129, 02889 burm_rule_descriptor_130, 02890 burm_rule_descriptor_131, 02891 burm_rule_descriptor_132, 02892 burm_rule_descriptor_133, 02893 burm_rule_descriptor_0, 02894 burm_rule_descriptor_135, 02895 burm_rule_descriptor_0, 02896 burm_rule_descriptor_0, 02897 burm_rule_descriptor_138, 02898 burm_rule_descriptor_139, 02899 burm_rule_descriptor_140, 02900 burm_rule_descriptor_0, 02901 burm_rule_descriptor_0, 02902 burm_rule_descriptor_0, 02903 burm_rule_descriptor_0, 02904 burm_rule_descriptor_0, 02905 burm_rule_descriptor_0, 02906 burm_rule_descriptor_0, 02907 burm_rule_descriptor_0, 02908 burm_rule_descriptor_0, 02909 burm_rule_descriptor_0, 02910 burm_rule_descriptor_0, 02911 burm_rule_descriptor_0, 02912 burm_rule_descriptor_0, 02913 burm_rule_descriptor_0, 02914 burm_rule_descriptor_155, 02915 burm_rule_descriptor_0, 02916 burm_rule_descriptor_0, 02917 burm_rule_descriptor_0, 02918 burm_rule_descriptor_0, 02919 burm_rule_descriptor_0, 02920 burm_rule_descriptor_0, 02921 burm_rule_descriptor_0, 02922 burm_rule_descriptor_0, 02923 burm_rule_descriptor_0, 02924 burm_rule_descriptor_0, 02925 burm_rule_descriptor_0, 02926 burm_rule_descriptor_0, 02927 burm_rule_descriptor_0, 02928 burm_rule_descriptor_0, 02929 burm_rule_descriptor_0, 02930 burm_rule_descriptor_0, 02931 burm_rule_descriptor_0, 02932 burm_rule_descriptor_0, 02933 burm_rule_descriptor_0, 02934 burm_rule_descriptor_0, 02935 burm_rule_descriptor_0, 02936 burm_rule_descriptor_0, 02937 burm_rule_descriptor_0, 02938 burm_rule_descriptor_0, 02939 burm_rule_descriptor_0, 02940 burm_rule_descriptor_0, 02941 burm_rule_descriptor_0, 02942 burm_rule_descriptor_0, 02943 burm_rule_descriptor_0, 02944 burm_rule_descriptor_0, 02945 burm_rule_descriptor_0, 02946 burm_rule_descriptor_0, 02947 burm_rule_descriptor_0, 02948 burm_rule_descriptor_0, 02949 burm_rule_descriptor_0, 02950 burm_rule_descriptor_0, 02951 burm_rule_descriptor_0, 02952 burm_rule_descriptor_0, 02953 burm_rule_descriptor_0, 02954 burm_rule_descriptor_0, 02955 burm_rule_descriptor_0, 02956 burm_rule_descriptor_0, 02957 burm_rule_descriptor_0, 02958 burm_rule_descriptor_0, 02959 burm_rule_descriptor_0, 02960 burm_rule_descriptor_0, 02961 burm_rule_descriptor_0, 02962 burm_rule_descriptor_0, 02963 burm_rule_descriptor_0, 02964 burm_rule_descriptor_0, 02965 burm_rule_descriptor_206, 02966 burm_rule_descriptor_0, 02967 burm_rule_descriptor_208, 02968 burm_rule_descriptor_0, 02969 burm_rule_descriptor_0, 02970 burm_rule_descriptor_0, 02971 burm_rule_descriptor_0, 02972 burm_rule_descriptor_0, 02973 burm_rule_descriptor_0, 02974 burm_rule_descriptor_0, 02975 burm_rule_descriptor_0, 02976 burm_rule_descriptor_0, 02977 burm_rule_descriptor_0, 02978 burm_rule_descriptor_0, 02979 burm_rule_descriptor_0, 02980 burm_rule_descriptor_221, 02981 burm_rule_descriptor_222, 02982 burm_rule_descriptor_0, 02983 burm_rule_descriptor_0, 02984 burm_rule_descriptor_0, 02985 burm_rule_descriptor_0, 02986 burm_rule_descriptor_0, 02987 burm_rule_descriptor_0, 02988 burm_rule_descriptor_0, 02989 burm_rule_descriptor_0, 02990 burm_rule_descriptor_0, 02991 burm_rule_descriptor_232, 02992 burm_rule_descriptor_233, 02993 burm_rule_descriptor_234, 02994 burm_rule_descriptor_235, 02995 burm_rule_descriptor_236, 02996 burm_rule_descriptor_237, 02997 burm_rule_descriptor_238, 02998 burm_rule_descriptor_239, 02999 burm_rule_descriptor_240, 03000 burm_rule_descriptor_241, 03001 burm_rule_descriptor_242, 03002 burm_rule_descriptor_0, 03003 burm_rule_descriptor_0, 03004 burm_rule_descriptor_0, 03005 burm_rule_descriptor_0, 03006 burm_rule_descriptor_0, 03007 burm_rule_descriptor_0, 03008 burm_rule_descriptor_0, 03009 burm_rule_descriptor_0, 03010 burm_rule_descriptor_0, 03011 burm_rule_descriptor_0, 03012 burm_rule_descriptor_0, 03013 burm_rule_descriptor_0, 03014 burm_rule_descriptor_0, 03015 burm_rule_descriptor_0, 03016 burm_rule_descriptor_0, 03017 burm_rule_descriptor_0, 03018 burm_rule_descriptor_0, 03019 burm_rule_descriptor_0, 03020 burm_rule_descriptor_0, 03021 burm_rule_descriptor_0, 03022 burm_rule_descriptor_0, 03023 burm_rule_descriptor_0, 03024 burm_rule_descriptor_0, 03025 burm_rule_descriptor_0, 03026 burm_rule_descriptor_0, 03027 burm_rule_descriptor_0, 03028 burm_rule_descriptor_0, 03029 burm_rule_descriptor_0, 03030 burm_rule_descriptor_0, 03031 burm_rule_descriptor_0, 03032 burm_rule_descriptor_0, 03033 burm_rule_descriptor_0, 03034 burm_rule_descriptor_0, 03035 burm_rule_descriptor_0, 03036 burm_rule_descriptor_0, 03037 burm_rule_descriptor_0, 03038 burm_rule_descriptor_0, 03039 burm_rule_descriptor_0, 03040 burm_rule_descriptor_0, 03041 burm_rule_descriptor_0, 03042 burm_rule_descriptor_0, 03043 burm_rule_descriptor_0, 03044 burm_rule_descriptor_0, 03045 burm_rule_descriptor_0, 03046 burm_rule_descriptor_0, 03047 burm_rule_descriptor_0, 03048 burm_rule_descriptor_0, 03049 burm_rule_descriptor_0, 03050 burm_rule_descriptor_0, 03051 burm_rule_descriptor_0, 03052 burm_rule_descriptor_0, 03053 burm_rule_descriptor_0, 03054 burm_rule_descriptor_0, 03055 burm_rule_descriptor_0, 03056 burm_rule_descriptor_0, 03057 burm_rule_descriptor_0, 03058 burm_rule_descriptor_0, 03059 burm_rule_descriptor_0, 03060 burm_rule_descriptor_0, 03061 burm_rule_descriptor_0, 03062 burm_rule_descriptor_0, 03063 burm_rule_descriptor_0, 03064 burm_rule_descriptor_0, 03065 burm_rule_descriptor_0, 03066 burm_rule_descriptor_0, 03067 burm_rule_descriptor_0, 03068 burm_rule_descriptor_0, 03069 burm_rule_descriptor_0, 03070 burm_rule_descriptor_0, 03071 burm_rule_descriptor_0, 03072 burm_rule_descriptor_0, 03073 burm_rule_descriptor_0, 03074 burm_rule_descriptor_0, 03075 burm_rule_descriptor_0, 03076 burm_rule_descriptor_0, 03077 burm_rule_descriptor_0, 03078 burm_rule_descriptor_0, 03079 burm_rule_descriptor_0, 03080 burm_rule_descriptor_321, 03081 burm_rule_descriptor_322, 03082 burm_rule_descriptor_0, 03083 burm_rule_descriptor_0, 03084 burm_rule_descriptor_0, 03085 burm_rule_descriptor_0, 03086 burm_rule_descriptor_0, 03087 burm_rule_descriptor_0, 03088 burm_rule_descriptor_0, 03089 burm_rule_descriptor_0, 03090 burm_rule_descriptor_0, 03091 burm_rule_descriptor_0, 03092 burm_rule_descriptor_0, 03093 burm_rule_descriptor_0, 03094 burm_rule_descriptor_335, 03095 burm_rule_descriptor_0, 03096 burm_rule_descriptor_0, 03097 burm_rule_descriptor_338, 03098 burm_rule_descriptor_339, 03099 burm_rule_descriptor_340, 03100 burm_rule_descriptor_0, 03101 burm_rule_descriptor_0, 03102 burm_rule_descriptor_0, 03103 burm_rule_descriptor_0, 03104 burm_rule_descriptor_0, 03105 burm_rule_descriptor_0, 03106 burm_rule_descriptor_0, 03107 burm_rule_descriptor_0, 03108 burm_rule_descriptor_0, 03109 burm_rule_descriptor_0, 03110 burm_rule_descriptor_0, 03111 burm_rule_descriptor_0, 03112 burm_rule_descriptor_0, 03113 burm_rule_descriptor_0, 03114 burm_rule_descriptor_0, 03115 burm_rule_descriptor_0, 03116 burm_rule_descriptor_0, 03117 burm_rule_descriptor_0, 03118 burm_rule_descriptor_0, 03119 burm_rule_descriptor_0, 03120 burm_rule_descriptor_0, 03121 burm_rule_descriptor_0, 03122 burm_rule_descriptor_0, 03123 burm_rule_descriptor_0, 03124 burm_rule_descriptor_0, 03125 burm_rule_descriptor_0, 03126 burm_rule_descriptor_0, 03127 burm_rule_descriptor_0, 03128 burm_rule_descriptor_0, 03129 burm_rule_descriptor_0, 03130 burm_rule_descriptor_0, 03131 burm_rule_descriptor_0, 03132 burm_rule_descriptor_0, 03133 burm_rule_descriptor_0, 03134 burm_rule_descriptor_0, 03135 burm_rule_descriptor_0, 03136 burm_rule_descriptor_0, 03137 burm_rule_descriptor_0, 03138 burm_rule_descriptor_0, 03139 burm_rule_descriptor_0, 03140 burm_rule_descriptor_0, 03141 burm_rule_descriptor_0, 03142 burm_rule_descriptor_0, 03143 burm_rule_descriptor_0, 03144 burm_rule_descriptor_0, 03145 burm_rule_descriptor_0, 03146 burm_rule_descriptor_0, 03147 burm_rule_descriptor_0, 03148 burm_rule_descriptor_0, 03149 burm_rule_descriptor_0, 03150 burm_rule_descriptor_0, 03151 burm_rule_descriptor_0, 03152 burm_rule_descriptor_0, 03153 burm_rule_descriptor_0, 03154 burm_rule_descriptor_0, 03155 burm_rule_descriptor_0, 03156 burm_rule_descriptor_0, 03157 burm_rule_descriptor_0, 03158 burm_rule_descriptor_0, 03159 burm_rule_descriptor_0, 03160 burm_rule_descriptor_0, 03161 burm_rule_descriptor_0, 03162 burm_rule_descriptor_0, 03163 burm_rule_descriptor_0, 03164 burm_rule_descriptor_0, 03165 burm_rule_descriptor_0, 03166 burm_rule_descriptor_0, 03167 burm_rule_descriptor_0, 03168 burm_rule_descriptor_0, 03169 burm_rule_descriptor_0, 03170 burm_rule_descriptor_0, 03171 burm_rule_descriptor_0, 03172 burm_rule_descriptor_0, 03173 burm_rule_descriptor_0, 03174 burm_rule_descriptor_0, 03175 burm_rule_descriptor_0, 03176 burm_rule_descriptor_0, 03177 burm_rule_descriptor_0, 03178 burm_rule_descriptor_0, 03179 burm_rule_descriptor_0, 03180 burm_rule_descriptor_421, 03181 burm_rule_descriptor_0, 03182 burm_rule_descriptor_0, 03183 burm_rule_descriptor_0, 03184 burm_rule_descriptor_0, 03185 burm_rule_descriptor_0, 03186 burm_rule_descriptor_0, 03187 burm_rule_descriptor_0, 03188 burm_rule_descriptor_0, 03189 burm_rule_descriptor_0, 03190 burm_rule_descriptor_0, 03191 burm_rule_descriptor_0, 03192 burm_rule_descriptor_0, 03193 burm_rule_descriptor_0, 03194 burm_rule_descriptor_0, 03195 burm_rule_descriptor_0, 03196 burm_rule_descriptor_0, 03197 burm_rule_descriptor_438, 03198 burm_rule_descriptor_439, 03199 burm_rule_descriptor_440, 03200 burm_rule_descriptor_0, 03201 burm_rule_descriptor_0, 03202 burm_rule_descriptor_0, 03203 burm_rule_descriptor_0, 03204 burm_rule_descriptor_0, 03205 burm_rule_descriptor_0, 03206 burm_rule_descriptor_0, 03207 burm_rule_descriptor_0, 03208 burm_rule_descriptor_0, 03209 burm_rule_descriptor_0, 03210 burm_rule_descriptor_0, 03211 burm_rule_descriptor_0, 03212 burm_rule_descriptor_0, 03213 burm_rule_descriptor_0, 03214 burm_rule_descriptor_0, 03215 burm_rule_descriptor_0, 03216 burm_rule_descriptor_0, 03217 burm_rule_descriptor_0, 03218 burm_rule_descriptor_0, 03219 burm_rule_descriptor_0, 03220 burm_rule_descriptor_0, 03221 burm_rule_descriptor_0, 03222 burm_rule_descriptor_0, 03223 burm_rule_descriptor_0, 03224 burm_rule_descriptor_0, 03225 burm_rule_descriptor_0, 03226 burm_rule_descriptor_0, 03227 burm_rule_descriptor_0, 03228 burm_rule_descriptor_0, 03229 burm_rule_descriptor_0, 03230 burm_rule_descriptor_0, 03231 burm_rule_descriptor_0, 03232 burm_rule_descriptor_0, 03233 burm_rule_descriptor_0, 03234 burm_rule_descriptor_0, 03235 burm_rule_descriptor_0, 03236 burm_rule_descriptor_0, 03237 burm_rule_descriptor_0, 03238 burm_rule_descriptor_0, 03239 burm_rule_descriptor_0, 03240 burm_rule_descriptor_0, 03241 burm_rule_descriptor_0, 03242 burm_rule_descriptor_0, 03243 burm_rule_descriptor_0, 03244 burm_rule_descriptor_0, 03245 burm_rule_descriptor_0, 03246 burm_rule_descriptor_0, 03247 burm_rule_descriptor_0, 03248 burm_rule_descriptor_0, 03249 burm_rule_descriptor_0, 03250 burm_rule_descriptor_0, 03251 burm_rule_descriptor_0, 03252 burm_rule_descriptor_0, 03253 burm_rule_descriptor_0, 03254 burm_rule_descriptor_0, 03255 burm_rule_descriptor_0, 03256 burm_rule_descriptor_0, 03257 burm_rule_descriptor_0, 03258 burm_rule_descriptor_0, 03259 burm_rule_descriptor_0, 03260 burm_rule_descriptor_0, 03261 burm_rule_descriptor_0, 03262 burm_rule_descriptor_0, 03263 burm_rule_descriptor_0, 03264 burm_rule_descriptor_0, 03265 burm_rule_descriptor_0, 03266 burm_rule_descriptor_0, 03267 burm_rule_descriptor_0, 03268 burm_rule_descriptor_0, 03269 burm_rule_descriptor_0, 03270 burm_rule_descriptor_0, 03271 burm_rule_descriptor_0, 03272 burm_rule_descriptor_0, 03273 burm_rule_descriptor_0, 03274 burm_rule_descriptor_0, 03275 burm_rule_descriptor_0, 03276 burm_rule_descriptor_0, 03277 burm_rule_descriptor_0, 03278 burm_rule_descriptor_0, 03279 burm_rule_descriptor_0, 03280 burm_rule_descriptor_0, 03281 burm_rule_descriptor_0, 03282 burm_rule_descriptor_0, 03283 burm_rule_descriptor_0, 03284 burm_rule_descriptor_0, 03285 burm_rule_descriptor_0, 03286 burm_rule_descriptor_0, 03287 burm_rule_descriptor_0, 03288 burm_rule_descriptor_0, 03289 burm_rule_descriptor_0, 03290 burm_rule_descriptor_0, 03291 burm_rule_descriptor_0, 03292 burm_rule_descriptor_0, 03293 burm_rule_descriptor_0, 03294 burm_rule_descriptor_0, 03295 burm_rule_descriptor_0, 03296 burm_rule_descriptor_0, 03297 burm_rule_descriptor_538, 03298 burm_rule_descriptor_539, 03299 burm_rule_descriptor_540, 03300 }; 03301 short burm_cost[][4] = { 03302 { 0, 0, 0, 0}, /* (none) = 0 */ 03303 { 30, 0, 0, 0}, /* stmt: Ret = 1 */ 03304 { 30, 0, 0, 0}, /* stmt: RetValue(reg) = 2 */ 03305 { 10, 0, 0, 0}, /* stmt: Store(reg, reg) = 3 */ 03306 { 10, 0, 0, 0}, /* stmt: Store(reg, ptrreg) = 4 */ 03307 { 20, 0, 0, 0}, /* stmt: BrUncond = 5 */ 03308 { 20, 0, 0, 0}, /* stmt: BrCond(setCC) = 6 */ 03309 { 0, 0, 0, 0}, /* (none) = 7 */ 03310 { 20, 0, 0, 0}, /* stmt: BrCond(reg) = 8 */ 03311 { 30, 0, 0, 0}, /* stmt: Switch(reg) = 9 */ 03312 { 0, 0, 0, 0}, /* reg: VRegList(reg, reg) = 10 */ 03313 { 0, 0, 0, 0}, /* (none) = 11 */ 03314 { 0, 0, 0, 0}, /* (none) = 12 */ 03315 { 0, 0, 0, 0}, /* (none) = 13 */ 03316 { 0, 0, 0, 0}, /* (none) = 14 */ 03317 { 0, 0, 0, 0}, /* (none) = 15 */ 03318 { 0, 0, 0, 0}, /* (none) = 16 */ 03319 { 0, 0, 0, 0}, /* (none) = 17 */ 03320 { 0, 0, 0, 0}, /* (none) = 18 */ 03321 { 10, 0, 0, 0}, /* reg: ToArrayTy(reg) = 19 */ 03322 { 10, 0, 0, 0}, /* reg: ToPointerTy(reg) = 20 */ 03323 { 10, 0, 0, 0}, /* not: Not(reg, reg) = 21 */ 03324 { 10, 0, 0, 0}, /* tobool: ToBoolTy(reg) = 22 */ 03325 { 10, 0, 0, 0}, /* toubyte: ToUByteTy(reg) = 23 */ 03326 { 10, 0, 0, 0}, /* tosbyte: ToSByteTy(reg) = 24 */ 03327 { 10, 0, 0, 0}, /* toushort: ToUShortTy(reg) = 25 */ 03328 { 10, 0, 0, 0}, /* toshort: ToShortTy(reg) = 26 */ 03329 { 10, 0, 0, 0}, /* touint: ToUIntTy(reg) = 27 */ 03330 { 10, 0, 0, 0}, /* toint: ToIntTy(reg) = 28 */ 03331 { 10, 0, 0, 0}, /* toulong: ToULongTy(reg) = 29 */ 03332 { 10, 0, 0, 0}, /* tolong: ToLongTy(reg) = 30 */ 03333 { 10, 0, 0, 0}, /* tofloat: ToFloatTy(reg) = 31 */ 03334 { 10, 0, 0, 0}, /* todouble: ToDoubleTy(reg) = 32 */ 03335 { 10, 0, 0, 0}, /* reg: Add(reg, reg) = 33 */ 03336 { 10, 0, 0, 0}, /* reg: Sub(reg, reg) = 34 */ 03337 { 30, 0, 0, 0}, /* reg: Mul(reg, reg) = 35 */ 03338 { 60, 0, 0, 0}, /* reg: Div(reg, reg) = 36 */ 03339 { 60, 0, 0, 0}, /* reg: Rem(reg, reg) = 37 */ 03340 { 10, 0, 0, 0}, /* reg: And(reg, reg) = 38 */ 03341 { 10, 0, 0, 0}, /* reg: Or(reg, reg) = 39 */ 03342 { 10, 0, 0, 0}, /* reg: Xor(reg, reg) = 40 */ 03343 { 5, 0, 0, 0}, /* setCCconst: SetCC(reg, Constant) = 41 */ 03344 { 10, 0, 0, 0}, /* setCC: SetCC(reg, reg) = 42 */ 03345 { 0, 0, 0, 0}, /* (none) = 43 */ 03346 { 0, 0, 0, 0}, /* (none) = 44 */ 03347 { 0, 0, 0, 0}, /* (none) = 45 */ 03348 { 0, 0, 0, 0}, /* (none) = 46 */ 03349 { 0, 0, 0, 0}, /* (none) = 47 */ 03350 { 0, 0, 0, 0}, /* (none) = 48 */ 03351 { 0, 0, 0, 0}, /* (none) = 49 */ 03352 { 0, 0, 0, 0}, /* (none) = 50 */ 03353 { 30, 0, 0, 0}, /* reg: Load(reg) = 51 */ 03354 { 20, 0, 0, 0}, /* reg: Load(ptrreg) = 52 */ 03355 { 0, 0, 0, 0}, /* (none) = 53 */ 03356 { 0, 0, 0, 0}, /* (none) = 54 */ 03357 { 10, 0, 0, 0}, /* ptrreg: GetElemPtr(reg) = 55 */ 03358 { 10, 0, 0, 0}, /* ptrreg: GetElemPtrIdx(reg, reg) = 56 */ 03359 { 10, 0, 0, 0}, /* reg: Alloca = 57 */ 03360 { 10, 0, 0, 0}, /* reg: AllocaN(reg) = 58 */ 03361 { 0, 0, 0, 0}, /* (none) = 59 */ 03362 { 0, 0, 0, 0}, /* (none) = 60 */ 03363 { 20, 0, 0, 0}, /* reg: Call = 61 */ 03364 { 20, 0, 0, 0}, /* reg: Shl(reg, reg) = 62 */ 03365 { 20, 0, 0, 0}, /* reg: Shr(reg, reg) = 63 */ 03366 { 0, 0, 0, 0}, /* reg: Phi(reg, reg) = 64 */ 03367 { 40, 0, 0, 0}, /* reg: VANext(reg) = 65 */ 03368 { 40, 0, 0, 0}, /* reg: VAArg(reg) = 66 */ 03369 { 0, 0, 0, 0}, /* (none) = 67 */ 03370 { 0, 0, 0, 0}, /* (none) = 68 */ 03371 { 0, 0, 0, 0}, /* (none) = 69 */ 03372 { 0, 0, 0, 0}, /* (none) = 70 */ 03373 { 0, 0, 0, 0}, /* reg: VReg = 71 */ 03374 { 3, 0, 0, 0}, /* reg: Constant = 72 */ 03375 { 0, 0, 0, 0}, /* (none) = 73 */ 03376 { 0, 0, 0, 0}, /* (none) = 74 */ 03377 { 0, 0, 0, 0}, /* (none) = 75 */ 03378 { 0, 0, 0, 0}, /* (none) = 76 */ 03379 { 0, 0, 0, 0}, /* (none) = 77 */ 03380 { 0, 0, 0, 0}, /* (none) = 78 */ 03381 { 0, 0, 0, 0}, /* (none) = 79 */ 03382 { 0, 0, 0, 0}, /* (none) = 80 */ 03383 { 0, 0, 0, 0}, /* (none) = 81 */ 03384 { 0, 0, 0, 0}, /* (none) = 82 */ 03385 { 0, 0, 0, 0}, /* (none) = 83 */ 03386 { 0, 0, 0, 0}, /* (none) = 84 */ 03387 { 0, 0, 0, 0}, /* (none) = 85 */ 03388 { 0, 0, 0, 0}, /* (none) = 86 */ 03389 { 0, 0, 0, 0}, /* (none) = 87 */ 03390 { 0, 0, 0, 0}, /* (none) = 88 */ 03391 { 0, 0, 0, 0}, /* (none) = 89 */ 03392 { 0, 0, 0, 0}, /* (none) = 90 */ 03393 { 0, 0, 0, 0}, /* (none) = 91 */ 03394 { 0, 0, 0, 0}, /* (none) = 92 */ 03395 { 0, 0, 0, 0}, /* (none) = 93 */ 03396 { 0, 0, 0, 0}, /* (none) = 94 */ 03397 { 0, 0, 0, 0}, /* (none) = 95 */ 03398 { 0, 0, 0, 0}, /* (none) = 96 */ 03399 { 0, 0, 0, 0}, /* (none) = 97 */ 03400 { 0, 0, 0, 0}, /* (none) = 98 */ 03401 { 0, 0, 0, 0}, /* (none) = 99 */ 03402 { 0, 0, 0, 0}, /* (none) = 100 */ 03403 { 0, 0, 0, 0}, /* (none) = 101 */ 03404 { 0, 0, 0, 0}, /* (none) = 102 */ 03405 { 0, 0, 0, 0}, /* (none) = 103 */ 03406 { 0, 0, 0, 0}, /* (none) = 104 */ 03407 { 0, 0, 0, 0}, /* (none) = 105 */ 03408 { 0, 0, 0, 0}, /* (none) = 106 */ 03409 { 0, 0, 0, 0}, /* (none) = 107 */ 03410 { 0, 0, 0, 0}, /* (none) = 108 */ 03411 { 0, 0, 0, 0}, /* (none) = 109 */ 03412 { 0, 0, 0, 0}, /* (none) = 110 */ 03413 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 03414 { 0, 0, 0, 0}, /* (none) = 112 */ 03415 { 0, 0, 0, 0}, /* (none) = 113 */ 03416 { 0, 0, 0, 0}, /* (none) = 114 */ 03417 { 0, 0, 0, 0}, /* (none) = 115 */ 03418 { 0, 0, 0, 0}, /* (none) = 116 */ 03419 { 0, 0, 0, 0}, /* (none) = 117 */ 03420 { 0, 0, 0, 0}, /* (none) = 118 */ 03421 { 0, 0, 0, 0}, /* (none) = 119 */ 03422 { 0, 0, 0, 0}, /* (none) = 120 */ 03423 { 0, 0, 0, 0}, /* (none) = 121 */ 03424 { 0, 0, 0, 0}, /* (none) = 122 */ 03425 { 0, 0, 0, 0}, /* reg: toubyte = 123 */ 03426 { 0, 0, 0, 0}, /* reg: tosbyte = 124 */ 03427 { 0, 0, 0, 0}, /* reg: toushort = 125 */ 03428 { 0, 0, 0, 0}, /* reg: toshort = 126 */ 03429 { 0, 0, 0, 0}, /* reg: touint = 127 */ 03430 { 0, 0, 0, 0}, /* reg: toint = 128 */ 03431 { 0, 0, 0, 0}, /* reg: toulong = 129 */ 03432 { 0, 0, 0, 0}, /* reg: tolong = 130 */ 03433 { 0, 0, 0, 0}, /* reg: tofloat = 131 */ 03434 { 0, 0, 0, 0}, /* reg: todouble = 132 */ 03435 { 0, 0, 0, 0}, /* reg: todoubleConst = 133 */ 03436 { 0, 0, 0, 0}, /* (none) = 134 */ 03437 { 20, 0, 0, 0}, /* reg: Mul(todouble, todouble) = 135 */ 03438 { 0, 0, 0, 0}, /* (none) = 136 */ 03439 { 0, 0, 0, 0}, /* (none) = 137 */ 03440 { 0, 0, 0, 0}, /* reg: And(reg, not) = 138 */ 03441 { 0, 0, 0, 0}, /* reg: Or(reg, not) = 139 */ 03442 { 0, 0, 0, 0}, /* reg: Xor(reg, not) = 140 */ 03443 { 0, 0, 0, 0}, /* (none) = 141 */ 03444 { 0, 0, 0, 0}, /* (none) = 142 */ 03445 { 0, 0, 0, 0}, /* (none) = 143 */ 03446 { 0, 0, 0, 0}, /* (none) = 144 */ 03447 { 0, 0, 0, 0}, /* (none) = 145 */ 03448 { 0, 0, 0, 0}, /* (none) = 146 */ 03449 { 0, 0, 0, 0}, /* (none) = 147 */ 03450 { 0, 0, 0, 0}, /* (none) = 148 */ 03451 { 0, 0, 0, 0}, /* (none) = 149 */ 03452 { 0, 0, 0, 0}, /* (none) = 150 */ 03453 { 0, 0, 0, 0}, /* (none) = 151 */ 03454 { 0, 0, 0, 0}, /* (none) = 152 */ 03455 { 0, 0, 0, 0}, /* (none) = 153 */ 03456 { 0, 0, 0, 0}, /* (none) = 154 */ 03457 { 0, 0, 0, 0}, /* reg: ptrreg = 155 */ 03458 { 0, 0, 0, 0}, /* (none) = 156 */ 03459 { 0, 0, 0, 0}, /* (none) = 157 */ 03460 { 0, 0, 0, 0}, /* (none) = 158 */ 03461 { 0, 0, 0, 0}, /* (none) = 159 */ 03462 { 0, 0, 0, 0}, /* (none) = 160 */ 03463 { 0, 0, 0, 0}, /* (none) = 161 */ 03464 { 0, 0, 0, 0}, /* (none) = 162 */ 03465 { 0, 0, 0, 0}, /* (none) = 163 */ 03466 { 0, 0, 0, 0}, /* (none) = 164 */ 03467 { 0, 0, 0, 0}, /* (none) = 165 */ 03468 { 0, 0, 0, 0}, /* (none) = 166 */ 03469 { 0, 0, 0, 0}, /* (none) = 167 */ 03470 { 0, 0, 0, 0}, /* (none) = 168 */ 03471 { 0, 0, 0, 0}, /* (none) = 169 */ 03472 { 0, 0, 0, 0}, /* (none) = 170 */ 03473 { 0, 0, 0, 0}, /* (none) = 171 */ 03474 { 0, 0, 0, 0}, /* (none) = 172 */ 03475 { 0, 0, 0, 0}, /* (none) = 173 */ 03476 { 0, 0, 0, 0}, /* (none) = 174 */ 03477 { 0, 0, 0, 0}, /* (none) = 175 */ 03478 { 0, 0, 0, 0}, /* (none) = 176 */ 03479 { 0, 0, 0, 0}, /* (none) = 177 */ 03480 { 0, 0, 0, 0}, /* (none) = 178 */ 03481 { 0, 0, 0, 0}, /* (none) = 179 */ 03482 { 0, 0, 0, 0}, /* (none) = 180 */ 03483 { 0, 0, 0, 0}, /* (none) = 181 */ 03484 { 0, 0, 0, 0}, /* (none) = 182 */ 03485 { 0, 0, 0, 0}, /* (none) = 183 */ 03486 { 0, 0, 0, 0}, /* (none) = 184 */ 03487 { 0, 0, 0, 0}, /* (none) = 185 */ 03488 { 0, 0, 0, 0}, /* (none) = 186 */ 03489 { 0, 0, 0, 0}, /* (none) = 187 */ 03490 { 0, 0, 0, 0}, /* (none) = 188 */ 03491 { 0, 0, 0, 0}, /* (none) = 189 */ 03492 { 0, 0, 0, 0}, /* (none) = 190 */ 03493 { 0, 0, 0, 0}, /* (none) = 191 */ 03494 { 0, 0, 0, 0}, /* (none) = 192 */ 03495 { 0, 0, 0, 0}, /* (none) = 193 */ 03496 { 0, 0, 0, 0}, /* (none) = 194 */ 03497 { 0, 0, 0, 0}, /* (none) = 195 */ 03498 { 0, 0, 0, 0}, /* (none) = 196 */ 03499 { 0, 0, 0, 0}, /* (none) = 197 */ 03500 { 0, 0, 0, 0}, /* (none) = 198 */ 03501 { 0, 0, 0, 0}, /* (none) = 199 */ 03502 { 0, 0, 0, 0}, /* (none) = 200 */ 03503 { 0, 0, 0, 0}, /* (none) = 201 */ 03504 { 0, 0, 0, 0}, /* (none) = 202 */ 03505 { 0, 0, 0, 0}, /* (none) = 203 */ 03506 { 0, 0, 0, 0}, /* (none) = 204 */ 03507 { 0, 0, 0, 0}, /* (none) = 205 */ 03508 { 10, 0, 0, 0}, /* stmt: BrCond(setCCconst) = 206 */ 03509 { 0, 0, 0, 0}, /* (none) = 207 */ 03510 { 20, 0, 0, 0}, /* stmt: BrCond(Constant) = 208 */ 03511 { 0, 0, 0, 0}, /* (none) = 209 */ 03512 { 0, 0, 0, 0}, /* (none) = 210 */ 03513 { 0, 0, 0, 0}, /* (none) = 211 */ 03514 { 0, 0, 0, 0}, /* (none) = 212 */ 03515 { 0, 0, 0, 0}, /* (none) = 213 */ 03516 { 0, 0, 0, 0}, /* (none) = 214 */ 03517 { 0, 0, 0, 0}, /* (none) = 215 */ 03518 { 0, 0, 0, 0}, /* (none) = 216 */ 03519 { 0, 0, 0, 0}, /* (none) = 217 */ 03520 { 0, 0, 0, 0}, /* (none) = 218 */ 03521 { 0, 0, 0, 0}, /* (none) = 219 */ 03522 { 0, 0, 0, 0}, /* (none) = 220 */ 03523 { 0, 0, 0, 0}, /* reg: not = 221 */ 03524 { 0, 0, 0, 0}, /* reg: tobool = 222 */ 03525 { 0, 0, 0, 0}, /* (none) = 223 */ 03526 { 0, 0, 0, 0}, /* (none) = 224 */ 03527 { 0, 0, 0, 0}, /* (none) = 225 */ 03528 { 0, 0, 0, 0}, /* (none) = 226 */ 03529 { 0, 0, 0, 0}, /* (none) = 227 */ 03530 { 0, 0, 0, 0}, /* (none) = 228 */ 03531 { 0, 0, 0, 0}, /* (none) = 229 */ 03532 { 0, 0, 0, 0}, /* (none) = 230 */ 03533 { 0, 0, 0, 0}, /* (none) = 231 */ 03534 { 10, 0, 0, 0}, /* todoubleConst: ToDoubleTy(Constant) = 232 */ 03535 { 10, 0, 0, 0}, /* reg: Add(reg, Constant) = 233 */ 03536 { 10, 0, 0, 0}, /* reg: Sub(reg, Constant) = 234 */ 03537 { 30, 0, 0, 0}, /* reg: Mul(reg, Constant) = 235 */ 03538 { 60, 0, 0, 0}, /* reg: Div(reg, Constant) = 236 */ 03539 { 60, 0, 0, 0}, /* reg: Rem(reg, Constant) = 237 */ 03540 { 10, 0, 0, 0}, /* reg: And(reg, Constant) = 238 */ 03541 { 10, 0, 0, 0}, /* reg: Or(reg, Constant) = 239 */ 03542 { 10, 0, 0, 0}, /* reg: Xor(reg, Constant) = 240 */ 03543 { 0, 0, 0, 0}, /* reg: setCCconst = 241 */ 03544 { 0, 0, 0, 0}, /* reg: setCC = 242 */ 03545 { 0, 0, 0, 0}, /* (none) = 243 */ 03546 { 0, 0, 0, 0}, /* (none) = 244 */ 03547 { 0, 0, 0, 0}, /* (none) = 245 */ 03548 { 0, 0, 0, 0}, /* (none) = 246 */ 03549 { 0, 0, 0, 0}, /* (none) = 247 */ 03550 { 0, 0, 0, 0}, /* (none) = 248 */ 03551 { 0, 0, 0, 0}, /* (none) = 249 */ 03552 { 0, 0, 0, 0}, /* (none) = 250 */ 03553 { 0, 0, 0, 0}, /* (none) = 251 */ 03554 { 0, 0, 0, 0}, /* (none) = 252 */ 03555 { 0, 0, 0, 0}, /* (none) = 253 */ 03556 { 0, 0, 0, 0}, /* (none) = 254 */ 03557 { 0, 0, 0, 0}, /* (none) = 255 */ 03558 { 0, 0, 0, 0}, /* (none) = 256 */ 03559 { 0, 0, 0, 0}, /* (none) = 257 */ 03560 { 0, 0, 0, 0}, /* (none) = 258 */ 03561 { 0, 0, 0, 0}, /* (none) = 259 */ 03562 { 0, 0, 0, 0}, /* (none) = 260 */ 03563 { 0, 0, 0, 0}, /* (none) = 261 */ 03564 { 0, 0, 0, 0}, /* (none) = 262 */ 03565 { 0, 0, 0, 0}, /* (none) = 263 */ 03566 { 0, 0, 0, 0}, /* (none) = 264 */ 03567 { 0, 0, 0, 0}, /* (none) = 265 */ 03568 { 0, 0, 0, 0}, /* (none) = 266 */ 03569 { 0, 0, 0, 0}, /* (none) = 267 */ 03570 { 0, 0, 0, 0}, /* (none) = 268 */ 03571 { 0, 0, 0, 0}, /* (none) = 269 */ 03572 { 0, 0, 0, 0}, /* (none) = 270 */ 03573 { 0, 0, 0, 0}, /* (none) = 271 */ 03574 { 0, 0, 0, 0}, /* (none) = 272 */ 03575 { 0, 0, 0, 0}, /* (none) = 273 */ 03576 { 0, 0, 0, 0}, /* (none) = 274 */ 03577 { 0, 0, 0, 0}, /* (none) = 275 */ 03578 { 0, 0, 0, 0}, /* (none) = 276 */ 03579 { 0, 0, 0, 0}, /* (none) = 277 */ 03580 { 0, 0, 0, 0}, /* (none) = 278 */ 03581 { 0, 0, 0, 0}, /* (none) = 279 */ 03582 { 0, 0, 0, 0}, /* (none) = 280 */ 03583 { 0, 0, 0, 0}, /* (none) = 281 */ 03584 { 0, 0, 0, 0}, /* (none) = 282 */ 03585 { 0, 0, 0, 0}, /* (none) = 283 */ 03586 { 0, 0, 0, 0}, /* (none) = 284 */ 03587 { 0, 0, 0, 0}, /* (none) = 285 */ 03588 { 0, 0, 0, 0}, /* (none) = 286 */ 03589 { 0, 0, 0, 0}, /* (none) = 287 */ 03590 { 0, 0, 0, 0}, /* (none) = 288 */ 03591 { 0, 0, 0, 0}, /* (none) = 289 */ 03592 { 0, 0, 0, 0}, /* (none) = 290 */ 03593 { 0, 0, 0, 0}, /* (none) = 291 */ 03594 { 0, 0, 0, 0}, /* (none) = 292 */ 03595 { 0, 0, 0, 0}, /* (none) = 293 */ 03596 { 0, 0, 0, 0}, /* (none) = 294 */ 03597 { 0, 0, 0, 0}, /* (none) = 295 */ 03598 { 0, 0, 0, 0}, /* (none) = 296 */ 03599 { 0, 0, 0, 0}, /* (none) = 297 */ 03600 { 0, 0, 0, 0}, /* (none) = 298 */ 03601 { 0, 0, 0, 0}, /* (none) = 299 */ 03602 { 0, 0, 0, 0}, /* (none) = 300 */ 03603 { 0, 0, 0, 0}, /* (none) = 301 */ 03604 { 0, 0, 0, 0}, /* (none) = 302 */ 03605 { 0, 0, 0, 0}, /* (none) = 303 */ 03606 { 0, 0, 0, 0}, /* (none) = 304 */ 03607 { 0, 0, 0, 0}, /* (none) = 305 */ 03608 { 0, 0, 0, 0}, /* (none) = 306 */ 03609 { 0, 0, 0, 0}, /* (none) = 307 */ 03610 { 0, 0, 0, 0}, /* (none) = 308 */ 03611 { 0, 0, 0, 0}, /* (none) = 309 */ 03612 { 0, 0, 0, 0}, /* (none) = 310 */ 03613 { 0, 0, 0, 0}, /* (none) = 311 */ 03614 { 0, 0, 0, 0}, /* (none) = 312 */ 03615 { 0, 0, 0, 0}, /* (none) = 313 */ 03616 { 0, 0, 0, 0}, /* (none) = 314 */ 03617 { 0, 0, 0, 0}, /* (none) = 315 */ 03618 { 0, 0, 0, 0}, /* (none) = 316 */ 03619 { 0, 0, 0, 0}, /* (none) = 317 */ 03620 { 0, 0, 0, 0}, /* (none) = 318 */ 03621 { 0, 0, 0, 0}, /* (none) = 319 */ 03622 { 0, 0, 0, 0}, /* (none) = 320 */ 03623 { 0, 0, 0, 0}, /* reg: bnot = 321 */ 03624 { 10, 0, 0, 0}, /* not: Not(tobool, reg) = 322 */ 03625 { 0, 0, 0, 0}, /* (none) = 323 */ 03626 { 0, 0, 0, 0}, /* (none) = 324 */ 03627 { 0, 0, 0, 0}, /* (none) = 325 */ 03628 { 0, 0, 0, 0}, /* (none) = 326 */ 03629 { 0, 0, 0, 0}, /* (none) = 327 */ 03630 { 0, 0, 0, 0}, /* (none) = 328 */ 03631 { 0, 0, 0, 0}, /* (none) = 329 */ 03632 { 0, 0, 0, 0}, /* (none) = 330 */ 03633 { 0, 0, 0, 0}, /* (none) = 331 */ 03634 { 0, 0, 0, 0}, /* (none) = 332 */ 03635 { 0, 0, 0, 0}, /* (none) = 333 */ 03636 { 0, 0, 0, 0}, /* (none) = 334 */ 03637 { 20, 0, 0, 0}, /* reg: Mul(todouble, todoubleConst) = 335 */ 03638 { 0, 0, 0, 0}, /* (none) = 336 */ 03639 { 0, 0, 0, 0}, /* (none) = 337 */ 03640 { 10, 0, 0, 0}, /* reg: BAnd(reg, reg) = 338 */ 03641 { 10, 0, 0, 0}, /* reg: BOr(reg, reg) = 339 */ 03642 { 10, 0, 0, 0}, /* reg: BXor(reg, reg) = 340 */ 03643 { 0, 0, 0, 0}, /* (none) = 341 */ 03644 { 0, 0, 0, 0}, /* (none) = 342 */ 03645 { 0, 0, 0, 0}, /* (none) = 343 */ 03646 { 0, 0, 0, 0}, /* (none) = 344 */ 03647 { 0, 0, 0, 0}, /* (none) = 345 */ 03648 { 0, 0, 0, 0}, /* (none) = 346 */ 03649 { 0, 0, 0, 0}, /* (none) = 347 */ 03650 { 0, 0, 0, 0}, /* (none) = 348 */ 03651 { 0, 0, 0, 0}, /* (none) = 349 */ 03652 { 0, 0, 0, 0}, /* (none) = 350 */ 03653 { 0, 0, 0, 0}, /* (none) = 351 */ 03654 { 0, 0, 0, 0}, /* (none) = 352 */ 03655 { 0, 0, 0, 0}, /* (none) = 353 */ 03656 { 0, 0, 0, 0}, /* (none) = 354 */ 03657 { 0, 0, 0, 0}, /* (none) = 355 */ 03658 { 0, 0, 0, 0}, /* (none) = 356 */ 03659 { 0, 0, 0, 0}, /* (none) = 357 */ 03660 { 0, 0, 0, 0}, /* (none) = 358 */ 03661 { 0, 0, 0, 0}, /* (none) = 359 */ 03662 { 0, 0, 0, 0}, /* (none) = 360 */ 03663 { 0, 0, 0, 0}, /* (none) = 361 */ 03664 { 0, 0, 0, 0}, /* (none) = 362 */ 03665 { 0, 0, 0, 0}, /* (none) = 363 */ 03666 { 0, 0, 0, 0}, /* (none) = 364 */ 03667 { 0, 0, 0, 0}, /* (none) = 365 */ 03668 { 0, 0, 0, 0}, /* (none) = 366 */ 03669 { 0, 0, 0, 0}, /* (none) = 367 */ 03670 { 0, 0, 0, 0}, /* (none) = 368 */ 03671 { 0, 0, 0, 0}, /* (none) = 369 */ 03672 { 0, 0, 0, 0}, /* (none) = 370 */ 03673 { 0, 0, 0, 0}, /* (none) = 371 */ 03674 { 0, 0, 0, 0}, /* (none) = 372 */ 03675 { 0, 0, 0, 0}, /* (none) = 373 */ 03676 { 0, 0, 0, 0}, /* (none) = 374 */ 03677 { 0, 0, 0, 0}, /* (none) = 375 */ 03678 { 0, 0, 0, 0}, /* (none) = 376 */ 03679 { 0, 0, 0, 0}, /* (none) = 377 */ 03680 { 0, 0, 0, 0}, /* (none) = 378 */ 03681 { 0, 0, 0, 0}, /* (none) = 379 */ 03682 { 0, 0, 0, 0}, /* (none) = 380 */ 03683 { 0, 0, 0, 0}, /* (none) = 381 */ 03684 { 0, 0, 0, 0}, /* (none) = 382 */ 03685 { 0, 0, 0, 0}, /* (none) = 383 */ 03686 { 0, 0, 0, 0}, /* (none) = 384 */ 03687 { 0, 0, 0, 0}, /* (none) = 385 */ 03688 { 0, 0, 0, 0}, /* (none) = 386 */ 03689 { 0, 0, 0, 0}, /* (none) = 387 */ 03690 { 0, 0, 0, 0}, /* (none) = 388 */ 03691 { 0, 0, 0, 0}, /* (none) = 389 */ 03692 { 0, 0, 0, 0}, /* (none) = 390 */ 03693 { 0, 0, 0, 0}, /* (none) = 391 */ 03694 { 0, 0, 0, 0}, /* (none) = 392 */ 03695 { 0, 0, 0, 0}, /* (none) = 393 */ 03696 { 0, 0, 0, 0}, /* (none) = 394 */ 03697 { 0, 0, 0, 0}, /* (none) = 395 */ 03698 { 0, 0, 0, 0}, /* (none) = 396 */ 03699 { 0, 0, 0, 0}, /* (none) = 397 */ 03700 { 0, 0, 0, 0}, /* (none) = 398 */ 03701 { 0, 0, 0, 0}, /* (none) = 399 */ 03702 { 0, 0, 0, 0}, /* (none) = 400 */ 03703 { 0, 0, 0, 0}, /* (none) = 401 */ 03704 { 0, 0, 0, 0}, /* (none) = 402 */ 03705 { 0, 0, 0, 0}, /* (none) = 403 */ 03706 { 0, 0, 0, 0}, /* (none) = 404 */ 03707 { 0, 0, 0, 0}, /* (none) = 405 */ 03708 { 0, 0, 0, 0}, /* (none) = 406 */ 03709 { 0, 0, 0, 0}, /* (none) = 407 */ 03710 { 0, 0, 0, 0}, /* (none) = 408 */ 03711 { 0, 0, 0, 0}, /* (none) = 409 */ 03712 { 0, 0, 0, 0}, /* (none) = 410 */ 03713 { 0, 0, 0, 0}, /* (none) = 411 */ 03714 { 0, 0, 0, 0}, /* (none) = 412 */ 03715 { 0, 0, 0, 0}, /* (none) = 413 */ 03716 { 0, 0, 0, 0}, /* (none) = 414 */ 03717 { 0, 0, 0, 0}, /* (none) = 415 */ 03718 { 0, 0, 0, 0}, /* (none) = 416 */ 03719 { 0, 0, 0, 0}, /* (none) = 417 */ 03720 { 0, 0, 0, 0}, /* (none) = 418 */ 03721 { 0, 0, 0, 0}, /* (none) = 419 */ 03722 { 0, 0, 0, 0}, /* (none) = 420 */ 03723 { 10, 0, 0, 0}, /* bnot: BNot(reg, reg) = 421 */ 03724 { 0, 0, 0, 0}, /* (none) = 422 */ 03725 { 0, 0, 0, 0}, /* (none) = 423 */ 03726 { 0, 0, 0, 0}, /* (none) = 424 */ 03727 { 0, 0, 0, 0}, /* (none) = 425 */ 03728 { 0, 0, 0, 0}, /* (none) = 426 */ 03729 { 0, 0, 0, 0}, /* (none) = 427 */ 03730 { 0, 0, 0, 0}, /* (none) = 428 */ 03731 { 0, 0, 0, 0}, /* (none) = 429 */ 03732 { 0, 0, 0, 0}, /* (none) = 430 */ 03733 { 0, 0, 0, 0}, /* (none) = 431 */ 03734 { 0, 0, 0, 0}, /* (none) = 432 */ 03735 { 0, 0, 0, 0}, /* (none) = 433 */ 03736 { 0, 0, 0, 0}, /* (none) = 434 */ 03737 { 0, 0, 0, 0}, /* (none) = 435 */ 03738 { 0, 0, 0, 0}, /* (none) = 436 */ 03739 { 0, 0, 0, 0}, /* (none) = 437 */ 03740 { 0, 0, 0, 0}, /* reg: BAnd(reg, bnot) = 438 */ 03741 { 0, 0, 0, 0}, /* reg: BOr(reg, bnot) = 439 */ 03742 { 0, 0, 0, 0}, /* reg: BXor(reg, bnot) = 440 */ 03743 { 0, 0, 0, 0}, /* (none) = 441 */ 03744 { 0, 0, 0, 0}, /* (none) = 442 */ 03745 { 0, 0, 0, 0}, /* (none) = 443 */ 03746 { 0, 0, 0, 0}, /* (none) = 444 */ 03747 { 0, 0, 0, 0}, /* (none) = 445 */ 03748 { 0, 0, 0, 0}, /* (none) = 446 */ 03749 { 0, 0, 0, 0}, /* (none) = 447 */ 03750 { 0, 0, 0, 0}, /* (none) = 448 */ 03751 { 0, 0, 0, 0}, /* (none) = 449 */ 03752 { 0, 0, 0, 0}, /* (none) = 450 */ 03753 { 0, 0, 0, 0}, /* (none) = 451 */ 03754 { 0, 0, 0, 0}, /* (none) = 452 */ 03755 { 0, 0, 0, 0}, /* (none) = 453 */ 03756 { 0, 0, 0, 0}, /* (none) = 454 */ 03757 { 0, 0, 0, 0}, /* (none) = 455 */ 03758 { 0, 0, 0, 0}, /* (none) = 456 */ 03759 { 0, 0, 0, 0}, /* (none) = 457 */ 03760 { 0, 0, 0, 0}, /* (none) = 458 */ 03761 { 0, 0, 0, 0}, /* (none) = 459 */ 03762 { 0, 0, 0, 0}, /* (none) = 460 */ 03763 { 0, 0, 0, 0}, /* (none) = 461 */ 03764 { 0, 0, 0, 0}, /* (none) = 462 */ 03765 { 0, 0, 0, 0}, /* (none) = 463 */ 03766 { 0, 0, 0, 0}, /* (none) = 464 */ 03767 { 0, 0, 0, 0}, /* (none) = 465 */ 03768 { 0, 0, 0, 0}, /* (none) = 466 */ 03769 { 0, 0, 0, 0}, /* (none) = 467 */ 03770 { 0, 0, 0, 0}, /* (none) = 468 */ 03771 { 0, 0, 0, 0}, /* (none) = 469 */ 03772 { 0, 0, 0, 0}, /* (none) = 470 */ 03773 { 0, 0, 0, 0}, /* (none) = 471 */ 03774 { 0, 0, 0, 0}, /* (none) = 472 */ 03775 { 0, 0, 0, 0}, /* (none) = 473 */ 03776 { 0, 0, 0, 0}, /* (none) = 474 */ 03777 { 0, 0, 0, 0}, /* (none) = 475 */ 03778 { 0, 0, 0, 0}, /* (none) = 476 */ 03779 { 0, 0, 0, 0}, /* (none) = 477 */ 03780 { 0, 0, 0, 0}, /* (none) = 478 */ 03781 { 0, 0, 0, 0}, /* (none) = 479 */ 03782 { 0, 0, 0, 0}, /* (none) = 480 */ 03783 { 0, 0, 0, 0}, /* (none) = 481 */ 03784 { 0, 0, 0, 0}, /* (none) = 482 */ 03785 { 0, 0, 0, 0}, /* (none) = 483 */ 03786 { 0, 0, 0, 0}, /* (none) = 484 */ 03787 { 0, 0, 0, 0}, /* (none) = 485 */ 03788 { 0, 0, 0, 0}, /* (none) = 486 */ 03789 { 0, 0, 0, 0}, /* (none) = 487 */ 03790 { 0, 0, 0, 0}, /* (none) = 488 */ 03791 { 0, 0, 0, 0}, /* (none) = 489 */ 03792 { 0, 0, 0, 0}, /* (none) = 490 */ 03793 { 0, 0, 0, 0}, /* (none) = 491 */ 03794 { 0, 0, 0, 0}, /* (none) = 492 */ 03795 { 0, 0, 0, 0}, /* (none) = 493 */ 03796 { 0, 0, 0, 0}, /* (none) = 494 */ 03797 { 0, 0, 0, 0}, /* (none) = 495 */ 03798 { 0, 0, 0, 0}, /* (none) = 496 */ 03799 { 0, 0, 0, 0}, /* (none) = 497 */ 03800 { 0, 0, 0, 0}, /* (none) = 498 */ 03801 { 0, 0, 0, 0}, /* (none) = 499 */ 03802 { 0, 0, 0, 0}, /* (none) = 500 */ 03803 { 0, 0, 0, 0}, /* (none) = 501 */ 03804 { 0, 0, 0, 0}, /* (none) = 502 */ 03805 { 0, 0, 0, 0}, /* (none) = 503 */ 03806 { 0, 0, 0, 0}, /* (none) = 504 */ 03807 { 0, 0, 0, 0}, /* (none) = 505 */ 03808 { 0, 0, 0, 0}, /* (none) = 506 */ 03809 { 0, 0, 0, 0}, /* (none) = 507 */ 03810 { 0, 0, 0, 0}, /* (none) = 508 */ 03811 { 0, 0, 0, 0}, /* (none) = 509 */ 03812 { 0, 0, 0, 0}, /* (none) = 510 */ 03813 { 0, 0, 0, 0}, /* (none) = 511 */ 03814 { 0, 0, 0, 0}, /* (none) = 512 */ 03815 { 0, 0, 0, 0}, /* (none) = 513 */ 03816 { 0, 0, 0, 0}, /* (none) = 514 */ 03817 { 0, 0, 0, 0}, /* (none) = 515 */ 03818 { 0, 0, 0, 0}, /* (none) = 516 */ 03819 { 0, 0, 0, 0}, /* (none) = 517 */ 03820 { 0, 0, 0, 0}, /* (none) = 518 */ 03821 { 0, 0, 0, 0}, /* (none) = 519 */ 03822 { 0, 0, 0, 0}, /* (none) = 520 */ 03823 { 0, 0, 0, 0}, /* (none) = 521 */ 03824 { 0, 0, 0, 0}, /* (none) = 522 */ 03825 { 0, 0, 0, 0}, /* (none) = 523 */ 03826 { 0, 0, 0, 0}, /* (none) = 524 */ 03827 { 0, 0, 0, 0}, /* (none) = 525 */ 03828 { 0, 0, 0, 0}, /* (none) = 526 */ 03829 { 0, 0, 0, 0}, /* (none) = 527 */ 03830 { 0, 0, 0, 0}, /* (none) = 528 */ 03831 { 0, 0, 0, 0}, /* (none) = 529 */ 03832 { 0, 0, 0, 0}, /* (none) = 530 */ 03833 { 0, 0, 0, 0}, /* (none) = 531 */ 03834 { 0, 0, 0, 0}, /* (none) = 532 */ 03835 { 0, 0, 0, 0}, /* (none) = 533 */ 03836 { 0, 0, 0, 0}, /* (none) = 534 */ 03837 { 0, 0, 0, 0}, /* (none) = 535 */ 03838 { 0, 0, 0, 0}, /* (none) = 536 */ 03839 { 0, 0, 0, 0}, /* (none) = 537 */ 03840 { 0, 0, 0, 0}, /* reg: BAnd(reg, Constant) = 538 */ 03841 { 0, 0, 0, 0}, /* reg: BOr(reg, Constant) = 539 */ 03842 { 0, 0, 0, 0}, /* reg: BXor(reg, Constant) = 540 */ 03843 }; 03844 03845 short burm_delta_cost[73][20][4] = { 03846 {{0}}, /* state 0 */ 03847 { /* state #1: Add(VReg, VReg) */ 03848 {0}, 03849 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 03850 { 0, 0, 0, 0}, /* reg: Add(reg, reg) = 33 */ 03851 { 0, 0, 0, 0}, /* (none) */ 03852 { 0, 0, 0, 0}, /* (none) */ 03853 { 0, 0, 0, 0}, /* (none) */ 03854 { 0, 0, 0, 0}, /* (none) */ 03855 { 0, 0, 0, 0}, /* (none) */ 03856 { 0, 0, 0, 0}, /* (none) */ 03857 { 0, 0, 0, 0}, /* (none) */ 03858 { 0, 0, 0, 0}, /* (none) */ 03859 { 0, 0, 0, 0}, /* (none) */ 03860 { 0, 0, 0, 0}, /* (none) */ 03861 { 0, 0, 0, 0}, /* (none) */ 03862 { 0, 0, 0, 0}, /* (none) */ 03863 { 0, 0, 0, 0}, /* (none) */ 03864 { 0, 0, 0, 0}, /* (none) */ 03865 { 0, 0, 0, 0}, /* (none) */ 03866 { 0, 0, 0, 0}, /* (none) */ 03867 { 0, 0, 0, 0}, /* (none) */ 03868 }, 03869 { /* state #2: Add(VReg, Constant) */ 03870 {0}, 03871 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 03872 { 0, 0, 0, 0}, /* reg: Add(reg, Constant) = 233 */ 03873 { 0, 0, 0, 0}, /* (none) */ 03874 { 0, 0, 0, 0}, /* (none) */ 03875 { 0, 0, 0, 0}, /* (none) */ 03876 { 0, 0, 0, 0}, /* (none) */ 03877 { 0, 0, 0, 0}, /* (none) */ 03878 { 0, 0, 0, 0}, /* (none) */ 03879 { 0, 0, 0, 0}, /* (none) */ 03880 { 0, 0, 0, 0}, /* (none) */ 03881 { 0, 0, 0, 0}, /* (none) */ 03882 { 0, 0, 0, 0}, /* (none) */ 03883 { 0, 0, 0, 0}, /* (none) */ 03884 { 0, 0, 0, 0}, /* (none) */ 03885 { 0, 0, 0, 0}, /* (none) */ 03886 { 0, 0, 0, 0}, /* (none) */ 03887 { 0, 0, 0, 0}, /* (none) */ 03888 { 0, 0, 0, 0}, /* (none) */ 03889 { 0, 0, 0, 0}, /* (none) */ 03890 }, 03891 { /* state #3: Alloca */ 03892 {0}, 03893 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 03894 { 0, 0, 0, 0}, /* reg: Alloca = 57 */ 03895 { 0, 0, 0, 0}, /* (none) */ 03896 { 0, 0, 0, 0}, /* (none) */ 03897 { 0, 0, 0, 0}, /* (none) */ 03898 { 0, 0, 0, 0}, /* (none) */ 03899 { 0, 0, 0, 0}, /* (none) */ 03900 { 0, 0, 0, 0}, /* (none) */ 03901 { 0, 0, 0, 0}, /* (none) */ 03902 { 0, 0, 0, 0}, /* (none) */ 03903 { 0, 0, 0, 0}, /* (none) */ 03904 { 0, 0, 0, 0}, /* (none) */ 03905 { 0, 0, 0, 0}, /* (none) */ 03906 { 0, 0, 0, 0}, /* (none) */ 03907 { 0, 0, 0, 0}, /* (none) */ 03908 { 0, 0, 0, 0}, /* (none) */ 03909 { 0, 0, 0, 0}, /* (none) */ 03910 { 0, 0, 0, 0}, /* (none) */ 03911 { 0, 0, 0, 0}, /* (none) */ 03912 }, 03913 { /* state #4: AllocaN(VReg) */ 03914 {0}, 03915 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 03916 { 0, 0, 0, 0}, /* reg: AllocaN(reg) = 58 */ 03917 { 0, 0, 0, 0}, /* (none) */ 03918 { 0, 0, 0, 0}, /* (none) */ 03919 { 0, 0, 0, 0}, /* (none) */ 03920 { 0, 0, 0, 0}, /* (none) */ 03921 { 0, 0, 0, 0}, /* (none) */ 03922 { 0, 0, 0, 0}, /* (none) */ 03923 { 0, 0, 0, 0}, /* (none) */ 03924 { 0, 0, 0, 0}, /* (none) */ 03925 { 0, 0, 0, 0}, /* (none) */ 03926 { 0, 0, 0, 0}, /* (none) */ 03927 { 0, 0, 0, 0}, /* (none) */ 03928 { 0, 0, 0, 0}, /* (none) */ 03929 { 0, 0, 0, 0}, /* (none) */ 03930 { 0, 0, 0, 0}, /* (none) */ 03931 { 0, 0, 0, 0}, /* (none) */ 03932 { 0, 0, 0, 0}, /* (none) */ 03933 { 0, 0, 0, 0}, /* (none) */ 03934 }, 03935 { /* state #5: And(VReg, VReg) */ 03936 {0}, 03937 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 03938 { 0, 0, 0, 0}, /* reg: And(reg, reg) = 38 */ 03939 { 0, 0, 0, 0}, /* (none) */ 03940 { 0, 0, 0, 0}, /* (none) */ 03941 { 0, 0, 0, 0}, /* (none) */ 03942 { 0, 0, 0, 0}, /* (none) */ 03943 { 0, 0, 0, 0}, /* (none) */ 03944 { 0, 0, 0, 0}, /* (none) */ 03945 { 0, 0, 0, 0}, /* (none) */ 03946 { 0, 0, 0, 0}, /* (none) */ 03947 { 0, 0, 0, 0}, /* (none) */ 03948 { 0, 0, 0, 0}, /* (none) */ 03949 { 0, 0, 0, 0}, /* (none) */ 03950 { 0, 0, 0, 0}, /* (none) */ 03951 { 0, 0, 0, 0}, /* (none) */ 03952 { 0, 0, 0, 0}, /* (none) */ 03953 { 0, 0, 0, 0}, /* (none) */ 03954 { 0, 0, 0, 0}, /* (none) */ 03955 { 0, 0, 0, 0}, /* (none) */ 03956 }, 03957 { /* state #6: And(VReg, Constant) */ 03958 {0}, 03959 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 03960 { 0, 0, 0, 0}, /* reg: And(reg, Constant) = 238 */ 03961 { 0, 0, 0, 0}, /* (none) */ 03962 { 0, 0, 0, 0}, /* (none) */ 03963 { 0, 0, 0, 0}, /* (none) */ 03964 { 0, 0, 0, 0}, /* (none) */ 03965 { 0, 0, 0, 0}, /* (none) */ 03966 { 0, 0, 0, 0}, /* (none) */ 03967 { 0, 0, 0, 0}, /* (none) */ 03968 { 0, 0, 0, 0}, /* (none) */ 03969 { 0, 0, 0, 0}, /* (none) */ 03970 { 0, 0, 0, 0}, /* (none) */ 03971 { 0, 0, 0, 0}, /* (none) */ 03972 { 0, 0, 0, 0}, /* (none) */ 03973 { 0, 0, 0, 0}, /* (none) */ 03974 { 0, 0, 0, 0}, /* (none) */ 03975 { 0, 0, 0, 0}, /* (none) */ 03976 { 0, 0, 0, 0}, /* (none) */ 03977 { 0, 0, 0, 0}, /* (none) */ 03978 }, 03979 { /* state #7: And(VReg, Not(VReg, VReg)) */ 03980 {0}, 03981 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 03982 { 0, 0, 0, 0}, /* reg: And(reg, not) = 138 */ 03983 { 0, 0, 0, 0}, /* (none) */ 03984 { 0, 0, 0, 0}, /* (none) */ 03985 { 0, 0, 0, 0}, /* (none) */ 03986 { 0, 0, 0, 0}, /* (none) */ 03987 { 0, 0, 0, 0}, /* (none) */ 03988 { 0, 0, 0, 0}, /* (none) */ 03989 { 0, 0, 0, 0}, /* (none) */ 03990 { 0, 0, 0, 0}, /* (none) */ 03991 { 0, 0, 0, 0}, /* (none) */ 03992 { 0, 0, 0, 0}, /* (none) */ 03993 { 0, 0, 0, 0}, /* (none) */ 03994 { 0, 0, 0, 0}, /* (none) */ 03995 { 0, 0, 0, 0}, /* (none) */ 03996 { 0, 0, 0, 0}, /* (none) */ 03997 { 0, 0, 0, 0}, /* (none) */ 03998 { 0, 0, 0, 0}, /* (none) */ 03999 { 0, 0, 0, 0}, /* (none) */ 04000 }, 04001 { /* state #8: BAnd(VReg, VReg) */ 04002 {0}, 04003 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04004 { 0, 0, 0, 0}, /* reg: BAnd(reg, reg) = 338 */ 04005 { 0, 0, 0, 0}, /* (none) */ 04006 { 0, 0, 0, 0}, /* (none) */ 04007 { 0, 0, 0, 0}, /* (none) */ 04008 { 0, 0, 0, 0}, /* (none) */ 04009 { 0, 0, 0, 0}, /* (none) */ 04010 { 0, 0, 0, 0}, /* (none) */ 04011 { 0, 0, 0, 0}, /* (none) */ 04012 { 0, 0, 0, 0}, /* (none) */ 04013 { 0, 0, 0, 0}, /* (none) */ 04014 { 0, 0, 0, 0}, /* (none) */ 04015 { 0, 0, 0, 0}, /* (none) */ 04016 { 0, 0, 0, 0}, /* (none) */ 04017 { 0, 0, 0, 0}, /* (none) */ 04018 { 0, 0, 0, 0}, /* (none) */ 04019 { 0, 0, 0, 0}, /* (none) */ 04020 { 0, 0, 0, 0}, /* (none) */ 04021 { 0, 0, 0, 0}, /* (none) */ 04022 }, 04023 { /* state #9: BAnd(VReg, Constant) */ 04024 {0}, 04025 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04026 { 0, 0, 0, 0}, /* reg: BAnd(reg, Constant) = 538 */ 04027 { 0, 0, 0, 0}, /* (none) */ 04028 { 0, 0, 0, 0}, /* (none) */ 04029 { 0, 0, 0, 0}, /* (none) */ 04030 { 0, 0, 0, 0}, /* (none) */ 04031 { 0, 0, 0, 0}, /* (none) */ 04032 { 0, 0, 0, 0}, /* (none) */ 04033 { 0, 0, 0, 0}, /* (none) */ 04034 { 0, 0, 0, 0}, /* (none) */ 04035 { 0, 0, 0, 0}, /* (none) */ 04036 { 0, 0, 0, 0}, /* (none) */ 04037 { 0, 0, 0, 0}, /* (none) */ 04038 { 0, 0, 0, 0}, /* (none) */ 04039 { 0, 0, 0, 0}, /* (none) */ 04040 { 0, 0, 0, 0}, /* (none) */ 04041 { 0, 0, 0, 0}, /* (none) */ 04042 { 0, 0, 0, 0}, /* (none) */ 04043 { 0, 0, 0, 0}, /* (none) */ 04044 }, 04045 { /* state #10: BAnd(VReg, BNot(VReg, VReg)) */ 04046 {0}, 04047 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04048 { 0, 0, 0, 0}, /* reg: BAnd(reg, bnot) = 438 */ 04049 { 0, 0, 0, 0}, /* (none) */ 04050 { 0, 0, 0, 0}, /* (none) */ 04051 { 0, 0, 0, 0}, /* (none) */ 04052 { 0, 0, 0, 0}, /* (none) */ 04053 { 0, 0, 0, 0}, /* (none) */ 04054 { 0, 0, 0, 0}, /* (none) */ 04055 { 0, 0, 0, 0}, /* (none) */ 04056 { 0, 0, 0, 0}, /* (none) */ 04057 { 0, 0, 0, 0}, /* (none) */ 04058 { 0, 0, 0, 0}, /* (none) */ 04059 { 0, 0, 0, 0}, /* (none) */ 04060 { 0, 0, 0, 0}, /* (none) */ 04061 { 0, 0, 0, 0}, /* (none) */ 04062 { 0, 0, 0, 0}, /* (none) */ 04063 { 0, 0, 0, 0}, /* (none) */ 04064 { 0, 0, 0, 0}, /* (none) */ 04065 { 0, 0, 0, 0}, /* (none) */ 04066 }, 04067 { /* state #11: BNot(VReg, VReg) */ 04068 {0}, 04069 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04070 { 0, 0, 0, 0}, /* reg: bnot = 321 */ 04071 { 0, 0, 0, 0}, /* (none) */ 04072 { 0, 0, 0, 0}, /* (none) */ 04073 { 0, 0, 0, 0}, /* (none) */ 04074 { 0, 0, 0, 0}, /* (none) */ 04075 { 0, 0, 0, 0}, /* (none) */ 04076 { 0, 0, 0, 0}, /* (none) */ 04077 { 0, 0, 0, 0}, /* (none) */ 04078 { 0, 0, 0, 0}, /* (none) */ 04079 { 0, 0, 0, 0}, /* (none) */ 04080 { 0, 0, 0, 0}, /* (none) */ 04081 { 0, 0, 0, 0}, /* (none) */ 04082 { 0, 0, 0, 0}, /* (none) */ 04083 { 0, 0, 0, 0}, /* (none) */ 04084 { 0, 0, 0, 0}, /* (none) */ 04085 { 0, 0, 0, 0}, /* (none) */ 04086 { 0, 0, 0, 0}, /* bnot: BNot(reg, reg) = 421 */ 04087 { 0, 0, 0, 0}, /* (none) */ 04088 }, 04089 { /* state #12: BOr(VReg, VReg) */ 04090 {0}, 04091 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04092 { 0, 0, 0, 0}, /* reg: BOr(reg, reg) = 339 */ 04093 { 0, 0, 0, 0}, /* (none) */ 04094 { 0, 0, 0, 0}, /* (none) */ 04095 { 0, 0, 0, 0}, /* (none) */ 04096 { 0, 0, 0, 0}, /* (none) */ 04097 { 0, 0, 0, 0}, /* (none) */ 04098 { 0, 0, 0, 0}, /* (none) */ 04099 { 0, 0, 0, 0}, /* (none) */ 04100 { 0, 0, 0, 0}, /* (none) */ 04101 { 0, 0, 0, 0}, /* (none) */ 04102 { 0, 0, 0, 0}, /* (none) */ 04103 { 0, 0, 0, 0}, /* (none) */ 04104 { 0, 0, 0, 0}, /* (none) */ 04105 { 0, 0, 0, 0}, /* (none) */ 04106 { 0, 0, 0, 0}, /* (none) */ 04107 { 0, 0, 0, 0}, /* (none) */ 04108 { 0, 0, 0, 0}, /* (none) */ 04109 { 0, 0, 0, 0}, /* (none) */ 04110 }, 04111 { /* state #13: BOr(VReg, Constant) */ 04112 {0}, 04113 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04114 { 0, 0, 0, 0}, /* reg: BOr(reg, Constant) = 539 */ 04115 { 0, 0, 0, 0}, /* (none) */ 04116 { 0, 0, 0, 0}, /* (none) */ 04117 { 0, 0, 0, 0}, /* (none) */ 04118 { 0, 0, 0, 0}, /* (none) */ 04119 { 0, 0, 0, 0}, /* (none) */ 04120 { 0, 0, 0, 0}, /* (none) */ 04121 { 0, 0, 0, 0}, /* (none) */ 04122 { 0, 0, 0, 0}, /* (none) */ 04123 { 0, 0, 0, 0}, /* (none) */ 04124 { 0, 0, 0, 0}, /* (none) */ 04125 { 0, 0, 0, 0}, /* (none) */ 04126 { 0, 0, 0, 0}, /* (none) */ 04127 { 0, 0, 0, 0}, /* (none) */ 04128 { 0, 0, 0, 0}, /* (none) */ 04129 { 0, 0, 0, 0}, /* (none) */ 04130 { 0, 0, 0, 0}, /* (none) */ 04131 { 0, 0, 0, 0}, /* (none) */ 04132 }, 04133 { /* state #14: BOr(VReg, BNot(VReg, VReg)) */ 04134 {0}, 04135 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04136 { 0, 0, 0, 0}, /* reg: BOr(reg, bnot) = 439 */ 04137 { 0, 0, 0, 0}, /* (none) */ 04138 { 0, 0, 0, 0}, /* (none) */ 04139 { 0, 0, 0, 0}, /* (none) */ 04140 { 0, 0, 0, 0}, /* (none) */ 04141 { 0, 0, 0, 0}, /* (none) */ 04142 { 0, 0, 0, 0}, /* (none) */ 04143 { 0, 0, 0, 0}, /* (none) */ 04144 { 0, 0, 0, 0}, /* (none) */ 04145 { 0, 0, 0, 0}, /* (none) */ 04146 { 0, 0, 0, 0}, /* (none) */ 04147 { 0, 0, 0, 0}, /* (none) */ 04148 { 0, 0, 0, 0}, /* (none) */ 04149 { 0, 0, 0, 0}, /* (none) */ 04150 { 0, 0, 0, 0}, /* (none) */ 04151 { 0, 0, 0, 0}, /* (none) */ 04152 { 0, 0, 0, 0}, /* (none) */ 04153 { 0, 0, 0, 0}, /* (none) */ 04154 }, 04155 { /* state #15: BXor(VReg, VReg) */ 04156 {0}, 04157 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04158 { 0, 0, 0, 0}, /* reg: BXor(reg, reg) = 340 */ 04159 { 0, 0, 0, 0}, /* (none) */ 04160 { 0, 0, 0, 0}, /* (none) */ 04161 { 0, 0, 0, 0}, /* (none) */ 04162 { 0, 0, 0, 0}, /* (none) */ 04163 { 0, 0, 0, 0}, /* (none) */ 04164 { 0, 0, 0, 0}, /* (none) */ 04165 { 0, 0, 0, 0}, /* (none) */ 04166 { 0, 0, 0, 0}, /* (none) */ 04167 { 0, 0, 0, 0}, /* (none) */ 04168 { 0, 0, 0, 0}, /* (none) */ 04169 { 0, 0, 0, 0}, /* (none) */ 04170 { 0, 0, 0, 0}, /* (none) */ 04171 { 0, 0, 0, 0}, /* (none) */ 04172 { 0, 0, 0, 0}, /* (none) */ 04173 { 0, 0, 0, 0}, /* (none) */ 04174 { 0, 0, 0, 0}, /* (none) */ 04175 { 0, 0, 0, 0}, /* (none) */ 04176 }, 04177 { /* state #16: BXor(VReg, Constant) */ 04178 {0}, 04179 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04180 { 0, 0, 0, 0}, /* reg: BXor(reg, Constant) = 540 */ 04181 { 0, 0, 0, 0}, /* (none) */ 04182 { 0, 0, 0, 0}, /* (none) */ 04183 { 0, 0, 0, 0}, /* (none) */ 04184 { 0, 0, 0, 0}, /* (none) */ 04185 { 0, 0, 0, 0}, /* (none) */ 04186 { 0, 0, 0, 0}, /* (none) */ 04187 { 0, 0, 0, 0}, /* (none) */ 04188 { 0, 0, 0, 0}, /* (none) */ 04189 { 0, 0, 0, 0}, /* (none) */ 04190 { 0, 0, 0, 0}, /* (none) */ 04191 { 0, 0, 0, 0}, /* (none) */ 04192 { 0, 0, 0, 0}, /* (none) */ 04193 { 0, 0, 0, 0}, /* (none) */ 04194 { 0, 0, 0, 0}, /* (none) */ 04195 { 0, 0, 0, 0}, /* (none) */ 04196 { 0, 0, 0, 0}, /* (none) */ 04197 { 0, 0, 0, 0}, /* (none) */ 04198 }, 04199 { /* state #17: BXor(VReg, BNot(VReg, VReg)) */ 04200 {0}, 04201 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04202 { 0, 0, 0, 0}, /* reg: BXor(reg, bnot) = 440 */ 04203 { 0, 0, 0, 0}, /* (none) */ 04204 { 0, 0, 0, 0}, /* (none) */ 04205 { 0, 0, 0, 0}, /* (none) */ 04206 { 0, 0, 0, 0}, /* (none) */ 04207 { 0, 0, 0, 0}, /* (none) */ 04208 { 0, 0, 0, 0}, /* (none) */ 04209 { 0, 0, 0, 0}, /* (none) */ 04210 { 0, 0, 0, 0}, /* (none) */ 04211 { 0, 0, 0, 0}, /* (none) */ 04212 { 0, 0, 0, 0}, /* (none) */ 04213 { 0, 0, 0, 0}, /* (none) */ 04214 { 0, 0, 0, 0}, /* (none) */ 04215 { 0, 0, 0, 0}, /* (none) */ 04216 { 0, 0, 0, 0}, /* (none) */ 04217 { 0, 0, 0, 0}, /* (none) */ 04218 { 0, 0, 0, 0}, /* (none) */ 04219 { 0, 0, 0, 0}, /* (none) */ 04220 }, 04221 { /* state #18: BrCond(VReg) */ 04222 {0}, 04223 { 0, 0, 0, 0}, /* stmt: BrCond(reg) = 8 */ 04224 { 0, 0, 0, 0}, /* (none) */ 04225 { 0, 0, 0, 0}, /* (none) */ 04226 { 0, 0, 0, 0}, /* (none) */ 04227 { 0, 0, 0, 0}, /* (none) */ 04228 { 0, 0, 0, 0}, /* (none) */ 04229 { 0, 0, 0, 0}, /* (none) */ 04230 { 0, 0, 0, 0}, /* (none) */ 04231 { 0, 0, 0, 0}, /* (none) */ 04232 { 0, 0, 0, 0}, /* (none) */ 04233 { 0, 0, 0, 0}, /* (none) */ 04234 { 0, 0, 0, 0}, /* (none) */ 04235 { 0, 0, 0, 0}, /* (none) */ 04236 { 0, 0, 0, 0}, /* (none) */ 04237 { 0, 0, 0, 0}, /* (none) */ 04238 { 0, 0, 0, 0}, /* (none) */ 04239 { 0, 0, 0, 0}, /* (none) */ 04240 { 0, 0, 0, 0}, /* (none) */ 04241 { 0, 0, 0, 0}, /* (none) */ 04242 }, 04243 { /* state #19: BrCond(Constant) */ 04244 {0}, 04245 { 0, 0, 0, 0}, /* stmt: BrCond(Constant) = 208 */ 04246 { 0, 0, 0, 0}, /* (none) */ 04247 { 0, 0, 0, 0}, /* (none) */ 04248 { 0, 0, 0, 0}, /* (none) */ 04249 { 0, 0, 0, 0}, /* (none) */ 04250 { 0, 0, 0, 0}, /* (none) */ 04251 { 0, 0, 0, 0}, /* (none) */ 04252 { 0, 0, 0, 0}, /* (none) */ 04253 { 0, 0, 0, 0}, /* (none) */ 04254 { 0, 0, 0, 0}, /* (none) */ 04255 { 0, 0, 0, 0}, /* (none) */ 04256 { 0, 0, 0, 0}, /* (none) */ 04257 { 0, 0, 0, 0}, /* (none) */ 04258 { 0, 0, 0, 0}, /* (none) */ 04259 { 0, 0, 0, 0}, /* (none) */ 04260 { 0, 0, 0, 0}, /* (none) */ 04261 { 0, 0, 0, 0}, /* (none) */ 04262 { 0, 0, 0, 0}, /* (none) */ 04263 { 0, 0, 0, 0}, /* (none) */ 04264 }, 04265 { /* state #20: BrCond(SetCC(VReg, VReg)) */ 04266 {0}, 04267 { 0, 0, 0, 0}, /* stmt: BrCond(setCC) = 6 */ 04268 { 0, 0, 0, 0}, /* (none) */ 04269 { 0, 0, 0, 0}, /* (none) */ 04270 { 0, 0, 0, 0}, /* (none) */ 04271 { 0, 0, 0, 0}, /* (none) */ 04272 { 0, 0, 0, 0}, /* (none) */ 04273 { 0, 0, 0, 0}, /* (none) */ 04274 { 0, 0, 0, 0}, /* (none) */ 04275 { 0, 0, 0, 0}, /* (none) */ 04276 { 0, 0, 0, 0}, /* (none) */ 04277 { 0, 0, 0, 0}, /* (none) */ 04278 { 0, 0, 0, 0}, /* (none) */ 04279 { 0, 0, 0, 0}, /* (none) */ 04280 { 0, 0, 0, 0}, /* (none) */ 04281 { 0, 0, 0, 0}, /* (none) */ 04282 { 0, 0, 0, 0}, /* (none) */ 04283 { 0, 0, 0, 0}, /* (none) */ 04284 { 0, 0, 0, 0}, /* (none) */ 04285 { 0, 0, 0, 0}, /* (none) */ 04286 }, 04287 { /* state #21: BrCond(SetCC(VReg, Constant)) */ 04288 {0}, 04289 { 0, 0, 0, 0}, /* stmt: BrCond(setCCconst) = 206 */ 04290 { 0, 0, 0, 0}, /* (none) */ 04291 { 0, 0, 0, 0}, /* (none) */ 04292 { 0, 0, 0, 0}, /* (none) */ 04293 { 0, 0, 0, 0}, /* (none) */ 04294 { 0, 0, 0, 0}, /* (none) */ 04295 { 0, 0, 0, 0}, /* (none) */ 04296 { 0, 0, 0, 0}, /* (none) */ 04297 { 0, 0, 0, 0}, /* (none) */ 04298 { 0, 0, 0, 0}, /* (none) */ 04299 { 0, 0, 0, 0}, /* (none) */ 04300 { 0, 0, 0, 0}, /* (none) */ 04301 { 0, 0, 0, 0}, /* (none) */ 04302 { 0, 0, 0, 0}, /* (none) */ 04303 { 0, 0, 0, 0}, /* (none) */ 04304 { 0, 0, 0, 0}, /* (none) */ 04305 { 0, 0, 0, 0}, /* (none) */ 04306 { 0, 0, 0, 0}, /* (none) */ 04307 { 0, 0, 0, 0}, /* (none) */ 04308 }, 04309 { /* state #22: BrUncond */ 04310 {0}, 04311 { 0, 0, 0, 0}, /* stmt: BrUncond = 5 */ 04312 { 0, 0, 0, 0}, /* (none) */ 04313 { 0, 0, 0, 0}, /* (none) */ 04314 { 0, 0, 0, 0}, /* (none) */ 04315 { 0, 0, 0, 0}, /* (none) */ 04316 { 0, 0, 0, 0}, /* (none) */ 04317 { 0, 0, 0, 0}, /* (none) */ 04318 { 0, 0, 0, 0}, /* (none) */ 04319 { 0, 0, 0, 0}, /* (none) */ 04320 { 0, 0, 0, 0}, /* (none) */ 04321 { 0, 0, 0, 0}, /* (none) */ 04322 { 0, 0, 0, 0}, /* (none) */ 04323 { 0, 0, 0, 0}, /* (none) */ 04324 { 0, 0, 0, 0}, /* (none) */ 04325 { 0, 0, 0, 0}, /* (none) */ 04326 { 0, 0, 0, 0}, /* (none) */ 04327 { 0, 0, 0, 0}, /* (none) */ 04328 { 0, 0, 0, 0}, /* (none) */ 04329 { 0, 0, 0, 0}, /* (none) */ 04330 }, 04331 { /* state #23: Call */ 04332 {0}, 04333 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04334 { 0, 0, 0, 0}, /* reg: Call = 61 */ 04335 { 0, 0, 0, 0}, /* (none) */ 04336 { 0, 0, 0, 0}, /* (none) */ 04337 { 0, 0, 0, 0}, /* (none) */ 04338 { 0, 0, 0, 0}, /* (none) */ 04339 { 0, 0, 0, 0}, /* (none) */ 04340 { 0, 0, 0, 0}, /* (none) */ 04341 { 0, 0, 0, 0}, /* (none) */ 04342 { 0, 0, 0, 0}, /* (none) */ 04343 { 0, 0, 0, 0}, /* (none) */ 04344 { 0, 0, 0, 0}, /* (none) */ 04345 { 0, 0, 0, 0}, /* (none) */ 04346 { 0, 0, 0, 0}, /* (none) */ 04347 { 0, 0, 0, 0}, /* (none) */ 04348 { 0, 0, 0, 0}, /* (none) */ 04349 { 0, 0, 0, 0}, /* (none) */ 04350 { 0, 0, 0, 0}, /* (none) */ 04351 { 0, 0, 0, 0}, /* (none) */ 04352 }, 04353 { /* state #24: Constant */ 04354 {0}, 04355 { 3, 0, 0, 0}, /* stmt: reg = 111 */ 04356 { 3, 0, 0, 0}, /* reg: Constant = 72 */ 04357 { 0, 0, 0, 0}, /* (none) */ 04358 { 0, 0, 0, 0}, /* (none) */ 04359 { 0, 0, 0, 0}, /* (none) */ 04360 { 0, 0, 0, 0}, /* (none) */ 04361 { 0, 0, 0, 0}, /* (none) */ 04362 { 0, 0, 0, 0}, /* (none) */ 04363 { 0, 0, 0, 0}, /* (none) */ 04364 { 0, 0, 0, 0}, /* (none) */ 04365 { 0, 0, 0, 0}, /* (none) */ 04366 { 0, 0, 0, 0}, /* (none) */ 04367 { 0, 0, 0, 0}, /* (none) */ 04368 { 0, 0, 0, 0}, /* (none) */ 04369 { 0, 0, 0, 0}, /* (none) */ 04370 { 0, 0, 0, 0}, /* (none) */ 04371 { 0, 0, 0, 0}, /* (none) */ 04372 { 0, 0, 0, 0}, /* (none) */ 04373 { 0, 0, 0, 0}, /* (none) */ 04374 }, 04375 { /* state #25: Div(VReg, VReg) */ 04376 {0}, 04377 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04378 { 0, 0, 0, 0}, /* reg: Div(reg, reg) = 36 */ 04379 { 0, 0, 0, 0}, /* (none) */ 04380 { 0, 0, 0, 0}, /* (none) */ 04381 { 0, 0, 0, 0}, /* (none) */ 04382 { 0, 0, 0, 0}, /* (none) */ 04383 { 0, 0, 0, 0}, /* (none) */ 04384 { 0, 0, 0, 0}, /* (none) */ 04385 { 0, 0, 0, 0}, /* (none) */ 04386 { 0, 0, 0, 0}, /* (none) */ 04387 { 0, 0, 0, 0}, /* (none) */ 04388 { 0, 0, 0, 0}, /* (none) */ 04389 { 0, 0, 0, 0}, /* (none) */ 04390 { 0, 0, 0, 0}, /* (none) */ 04391 { 0, 0, 0, 0}, /* (none) */ 04392 { 0, 0, 0, 0}, /* (none) */ 04393 { 0, 0, 0, 0}, /* (none) */ 04394 { 0, 0, 0, 0}, /* (none) */ 04395 { 0, 0, 0, 0}, /* (none) */ 04396 }, 04397 { /* state #26: Div(VReg, Constant) */ 04398 {0}, 04399 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04400 { 0, 0, 0, 0}, /* reg: Div(reg, Constant) = 236 */ 04401 { 0, 0, 0, 0}, /* (none) */ 04402 { 0, 0, 0, 0}, /* (none) */ 04403 { 0, 0, 0, 0}, /* (none) */ 04404 { 0, 0, 0, 0}, /* (none) */ 04405 { 0, 0, 0, 0}, /* (none) */ 04406 { 0, 0, 0, 0}, /* (none) */ 04407 { 0, 0, 0, 0}, /* (none) */ 04408 { 0, 0, 0, 0}, /* (none) */ 04409 { 0, 0, 0, 0}, /* (none) */ 04410 { 0, 0, 0, 0}, /* (none) */ 04411 { 0, 0, 0, 0}, /* (none) */ 04412 { 0, 0, 0, 0}, /* (none) */ 04413 { 0, 0, 0, 0}, /* (none) */ 04414 { 0, 0, 0, 0}, /* (none) */ 04415 { 0, 0, 0, 0}, /* (none) */ 04416 { 0, 0, 0, 0}, /* (none) */ 04417 { 0, 0, 0, 0}, /* (none) */ 04418 }, 04419 { /* state #27: GetElemPtr(VReg) */ 04420 {0}, 04421 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04422 { 0, 0, 0, 0}, /* reg: ptrreg = 155 */ 04423 { 0, 0, 0, 0}, /* (none) */ 04424 { 0, 0, 0, 0}, /* (none) */ 04425 { 0, 0, 0, 0}, /* (none) */ 04426 { 0, 0, 0, 0}, /* (none) */ 04427 { 0, 0, 0, 0}, /* (none) */ 04428 { 0, 0, 0, 0}, /* (none) */ 04429 { 0, 0, 0, 0}, /* (none) */ 04430 { 0, 0, 0, 0}, /* (none) */ 04431 { 0, 0, 0, 0}, /* (none) */ 04432 { 0, 0, 0, 0}, /* (none) */ 04433 { 0, 0, 0, 0}, /* (none) */ 04434 { 0, 0, 0, 0}, /* (none) */ 04435 { 0, 0, 0, 0}, /* (none) */ 04436 { 0, 0, 0, 0}, /* (none) */ 04437 { 0, 0, 0, 0}, /* (none) */ 04438 { 0, 0, 0, 0}, /* (none) */ 04439 { 0, 0, 0, 0}, /* ptrreg: GetElemPtr(reg) = 55 */ 04440 }, 04441 { /* state #28: GetElemPtrIdx(VReg, VReg) */ 04442 {0}, 04443 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04444 { 0, 0, 0, 0}, /* reg: ptrreg = 155 */ 04445 { 0, 0, 0, 0}, /* (none) */ 04446 { 0, 0, 0, 0}, /* (none) */ 04447 { 0, 0, 0, 0}, /* (none) */ 04448 { 0, 0, 0, 0}, /* (none) */ 04449 { 0, 0, 0, 0}, /* (none) */ 04450 { 0, 0, 0, 0}, /* (none) */ 04451 { 0, 0, 0, 0}, /* (none) */ 04452 { 0, 0, 0, 0}, /* (none) */ 04453 { 0, 0, 0, 0}, /* (none) */ 04454 { 0, 0, 0, 0}, /* (none) */ 04455 { 0, 0, 0, 0}, /* (none) */ 04456 { 0, 0, 0, 0}, /* (none) */ 04457 { 0, 0, 0, 0}, /* (none) */ 04458 { 0, 0, 0, 0}, /* (none) */ 04459 { 0, 0, 0, 0}, /* (none) */ 04460 { 0, 0, 0, 0}, /* (none) */ 04461 { 0, 0, 0, 0}, /* ptrreg: GetElemPtrIdx(reg, reg) = 56 */ 04462 }, 04463 { /* state #29: Load(VReg) */ 04464 {0}, 04465 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04466 { 0, 0, 0, 0}, /* reg: Load(reg) = 51 */ 04467 { 0, 0, 0, 0}, /* (none) */ 04468 { 0, 0, 0, 0}, /* (none) */ 04469 { 0, 0, 0, 0}, /* (none) */ 04470 { 0, 0, 0, 0}, /* (none) */ 04471 { 0, 0, 0, 0}, /* (none) */ 04472 { 0, 0, 0, 0}, /* (none) */ 04473 { 0, 0, 0, 0}, /* (none) */ 04474 { 0, 0, 0, 0}, /* (none) */ 04475 { 0, 0, 0, 0}, /* (none) */ 04476 { 0, 0, 0, 0}, /* (none) */ 04477 { 0, 0, 0, 0}, /* (none) */ 04478 { 0, 0, 0, 0}, /* (none) */ 04479 { 0, 0, 0, 0}, /* (none) */ 04480 { 0, 0, 0, 0}, /* (none) */ 04481 { 0, 0, 0, 0}, /* (none) */ 04482 { 0, 0, 0, 0}, /* (none) */ 04483 { 0, 0, 0, 0}, /* (none) */ 04484 }, 04485 { /* state #30: Load(GetElemPtr(VReg)) */ 04486 {0}, 04487 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04488 { 0, 0, 0, 0}, /* reg: Load(ptrreg) = 52 */ 04489 { 0, 0, 0, 0}, /* (none) */ 04490 { 0, 0, 0, 0}, /* (none) */ 04491 { 0, 0, 0, 0}, /* (none) */ 04492 { 0, 0, 0, 0}, /* (none) */ 04493 { 0, 0, 0, 0}, /* (none) */ 04494 { 0, 0, 0, 0}, /* (none) */ 04495 { 0, 0, 0, 0}, /* (none) */ 04496 { 0, 0, 0, 0}, /* (none) */ 04497 { 0, 0, 0, 0}, /* (none) */ 04498 { 0, 0, 0, 0}, /* (none) */ 04499 { 0, 0, 0, 0}, /* (none) */ 04500 { 0, 0, 0, 0}, /* (none) */ 04501 { 0, 0, 0, 0}, /* (none) */ 04502 { 0, 0, 0, 0}, /* (none) */ 04503 { 0, 0, 0, 0}, /* (none) */ 04504 { 0, 0, 0, 0}, /* (none) */ 04505 { 0, 0, 0, 0}, /* (none) */ 04506 }, 04507 { /* state #31: Mul(VReg, VReg) */ 04508 {0}, 04509 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04510 { 0, 0, 0, 0}, /* reg: Mul(reg, reg) = 35 */ 04511 { 0, 0, 0, 0}, /* (none) */ 04512 { 0, 0, 0, 0}, /* (none) */ 04513 { 0, 0, 0, 0}, /* (none) */ 04514 { 0, 0, 0, 0}, /* (none) */ 04515 { 0, 0, 0, 0}, /* (none) */ 04516 { 0, 0, 0, 0}, /* (none) */ 04517 { 0, 0, 0, 0}, /* (none) */ 04518 { 0, 0, 0, 0}, /* (none) */ 04519 { 0, 0, 0, 0}, /* (none) */ 04520 { 0, 0, 0, 0}, /* (none) */ 04521 { 0, 0, 0, 0}, /* (none) */ 04522 { 0, 0, 0, 0}, /* (none) */ 04523 { 0, 0, 0, 0}, /* (none) */ 04524 { 0, 0, 0, 0}, /* (none) */ 04525 { 0, 0, 0, 0}, /* (none) */ 04526 { 0, 0, 0, 0}, /* (none) */ 04527 { 0, 0, 0, 0}, /* (none) */ 04528 }, 04529 { /* state #32: Mul(VReg, Constant) */ 04530 {0}, 04531 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04532 { 0, 0, 0, 0}, /* reg: Mul(reg, Constant) = 235 */ 04533 { 0, 0, 0, 0}, /* (none) */ 04534 { 0, 0, 0, 0}, /* (none) */ 04535 { 0, 0, 0, 0}, /* (none) */ 04536 { 0, 0, 0, 0}, /* (none) */ 04537 { 0, 0, 0, 0}, /* (none) */ 04538 { 0, 0, 0, 0}, /* (none) */ 04539 { 0, 0, 0, 0}, /* (none) */ 04540 { 0, 0, 0, 0}, /* (none) */ 04541 { 0, 0, 0, 0}, /* (none) */ 04542 { 0, 0, 0, 0}, /* (none) */ 04543 { 0, 0, 0, 0}, /* (none) */ 04544 { 0, 0, 0, 0}, /* (none) */ 04545 { 0, 0, 0, 0}, /* (none) */ 04546 { 0, 0, 0, 0}, /* (none) */ 04547 { 0, 0, 0, 0}, /* (none) */ 04548 { 0, 0, 0, 0}, /* (none) */ 04549 { 0, 0, 0, 0}, /* (none) */ 04550 }, 04551 { /* state #33: Mul(ToDoubleTy(VReg), ToDoubleTy(VReg)) */ 04552 {0}, 04553 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04554 { 0, 0, 0, 0}, /* reg: Mul(todouble, todouble) = 135 */ 04555 { 0, 0, 0, 0}, /* (none) */ 04556 { 0, 0, 0, 0}, /* (none) */ 04557 { 0, 0, 0, 0}, /* (none) */ 04558 { 0, 0, 0, 0}, /* (none) */ 04559 { 0, 0, 0, 0}, /* (none) */ 04560 { 0, 0, 0, 0}, /* (none) */ 04561 { 0, 0, 0, 0}, /* (none) */ 04562 { 0, 0, 0, 0}, /* (none) */ 04563 { 0, 0, 0, 0}, /* (none) */ 04564 { 0, 0, 0, 0}, /* (none) */ 04565 { 0, 0, 0, 0}, /* (none) */ 04566 { 0, 0, 0, 0}, /* (none) */ 04567 { 0, 0, 0, 0}, /* (none) */ 04568 { 0, 0, 0, 0}, /* (none) */ 04569 { 0, 0, 0, 0}, /* (none) */ 04570 { 0, 0, 0, 0}, /* (none) */ 04571 { 0, 0, 0, 0}, /* (none) */ 04572 }, 04573 { /* state #34: Mul(ToDoubleTy(VReg), ToDoubleTy(Constant)) */ 04574 {0}, 04575 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04576 { 0, 0, 0, 0}, /* reg: Mul(todouble, todoubleConst) = 335 */ 04577 { 0, 0, 0, 0}, /* (none) */ 04578 { 0, 0, 0, 0}, /* (none) */ 04579 { 0, 0, 0, 0}, /* (none) */ 04580 { 0, 0, 0, 0}, /* (none) */ 04581 { 0, 0, 0, 0}, /* (none) */ 04582 { 0, 0, 0, 0}, /* (none) */ 04583 { 0, 0, 0, 0}, /* (none) */ 04584 { 0, 0, 0, 0}, /* (none) */ 04585 { 0, 0, 0, 0}, /* (none) */ 04586 { 0, 0, 0, 0}, /* (none) */ 04587 { 0, 0, 0, 0}, /* (none) */ 04588 { 0, 0, 0, 0}, /* (none) */ 04589 { 0, 0, 0, 0}, /* (none) */ 04590 { 0, 0, 0, 0}, /* (none) */ 04591 { 0, 0, 0, 0}, /* (none) */ 04592 { 0, 0, 0, 0}, /* (none) */ 04593 { 0, 0, 0, 0}, /* (none) */ 04594 }, 04595 { /* state #35: Not(VReg, VReg) */ 04596 {0}, 04597 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04598 { 0, 0, 0, 0}, /* reg: not = 221 */ 04599 { 0, 0, 0, 0}, /* not: Not(reg, reg) = 21 */ 04600 { 0, 0, 0, 0}, /* (none) */ 04601 { 0, 0, 0, 0}, /* (none) */ 04602 { 0, 0, 0, 0}, /* (none) */ 04603 { 0, 0, 0, 0}, /* (none) */ 04604 { 0, 0, 0, 0}, /* (none) */ 04605 { 0, 0, 0, 0}, /* (none) */ 04606 { 0, 0, 0, 0}, /* (none) */ 04607 { 0, 0, 0, 0}, /* (none) */ 04608 { 0, 0, 0, 0}, /* (none) */ 04609 { 0, 0, 0, 0}, /* (none) */ 04610 { 0, 0, 0, 0}, /* (none) */ 04611 { 0, 0, 0, 0}, /* (none) */ 04612 { 0, 0, 0, 0}, /* (none) */ 04613 { 0, 0, 0, 0}, /* (none) */ 04614 { 0, 0, 0, 0}, /* (none) */ 04615 { 0, 0, 0, 0}, /* (none) */ 04616 }, 04617 { /* state #36: Or(VReg, VReg) */ 04618 {0}, 04619 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04620 { 0, 0, 0, 0}, /* reg: Or(reg, reg) = 39 */ 04621 { 0, 0, 0, 0}, /* (none) */ 04622 { 0, 0, 0, 0}, /* (none) */ 04623 { 0, 0, 0, 0}, /* (none) */ 04624 { 0, 0, 0, 0}, /* (none) */ 04625 { 0, 0, 0, 0}, /* (none) */ 04626 { 0, 0, 0, 0}, /* (none) */ 04627 { 0, 0, 0, 0}, /* (none) */ 04628 { 0, 0, 0, 0}, /* (none) */ 04629 { 0, 0, 0, 0}, /* (none) */ 04630 { 0, 0, 0, 0}, /* (none) */ 04631 { 0, 0, 0, 0}, /* (none) */ 04632 { 0, 0, 0, 0}, /* (none) */ 04633 { 0, 0, 0, 0}, /* (none) */ 04634 { 0, 0, 0, 0}, /* (none) */ 04635 { 0, 0, 0, 0}, /* (none) */ 04636 { 0, 0, 0, 0}, /* (none) */ 04637 { 0, 0, 0, 0}, /* (none) */ 04638 }, 04639 { /* state #37: Or(VReg, Constant) */ 04640 {0}, 04641 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04642 { 0, 0, 0, 0}, /* reg: Or(reg, Constant) = 239 */ 04643 { 0, 0, 0, 0}, /* (none) */ 04644 { 0, 0, 0, 0}, /* (none) */ 04645 { 0, 0, 0, 0}, /* (none) */ 04646 { 0, 0, 0, 0}, /* (none) */ 04647 { 0, 0, 0, 0}, /* (none) */ 04648 { 0, 0, 0, 0}, /* (none) */ 04649 { 0, 0, 0, 0}, /* (none) */ 04650 { 0, 0, 0, 0}, /* (none) */ 04651 { 0, 0, 0, 0}, /* (none) */ 04652 { 0, 0, 0, 0}, /* (none) */ 04653 { 0, 0, 0, 0}, /* (none) */ 04654 { 0, 0, 0, 0}, /* (none) */ 04655 { 0, 0, 0, 0}, /* (none) */ 04656 { 0, 0, 0, 0}, /* (none) */ 04657 { 0, 0, 0, 0}, /* (none) */ 04658 { 0, 0, 0, 0}, /* (none) */ 04659 { 0, 0, 0, 0}, /* (none) */ 04660 }, 04661 { /* state #38: Or(VReg, Not(VReg, VReg)) */ 04662 {0}, 04663 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04664 { 0, 0, 0, 0}, /* reg: Or(reg, not) = 139 */ 04665 { 0, 0, 0, 0}, /* (none) */ 04666 { 0, 0, 0, 0}, /* (none) */ 04667 { 0, 0, 0, 0}, /* (none) */ 04668 { 0, 0, 0, 0}, /* (none) */ 04669 { 0, 0, 0, 0}, /* (none) */ 04670 { 0, 0, 0, 0}, /* (none) */ 04671 { 0, 0, 0, 0}, /* (none) */ 04672 { 0, 0, 0, 0}, /* (none) */ 04673 { 0, 0, 0, 0}, /* (none) */ 04674 { 0, 0, 0, 0}, /* (none) */ 04675 { 0, 0, 0, 0}, /* (none) */ 04676 { 0, 0, 0, 0}, /* (none) */ 04677 { 0, 0, 0, 0}, /* (none) */ 04678 { 0, 0, 0, 0}, /* (none) */ 04679 { 0, 0, 0, 0}, /* (none) */ 04680 { 0, 0, 0, 0}, /* (none) */ 04681 { 0, 0, 0, 0}, /* (none) */ 04682 }, 04683 { /* state #39: Phi(VReg, VReg) */ 04684 {0}, 04685 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04686 { 0, 0, 0, 0}, /* reg: Phi(reg, reg) = 64 */ 04687 { 0, 0, 0, 0}, /* (none) */ 04688 { 0, 0, 0, 0}, /* (none) */ 04689 { 0, 0, 0, 0}, /* (none) */ 04690 { 0, 0, 0, 0}, /* (none) */ 04691 { 0, 0, 0, 0}, /* (none) */ 04692 { 0, 0, 0, 0}, /* (none) */ 04693 { 0, 0, 0, 0}, /* (none) */ 04694 { 0, 0, 0, 0}, /* (none) */ 04695 { 0, 0, 0, 0}, /* (none) */ 04696 { 0, 0, 0, 0}, /* (none) */ 04697 { 0, 0, 0, 0}, /* (none) */ 04698 { 0, 0, 0, 0}, /* (none) */ 04699 { 0, 0, 0, 0}, /* (none) */ 04700 { 0, 0, 0, 0}, /* (none) */ 04701 { 0, 0, 0, 0}, /* (none) */ 04702 { 0, 0, 0, 0}, /* (none) */ 04703 { 0, 0, 0, 0}, /* (none) */ 04704 }, 04705 { /* state #40: Rem(VReg, VReg) */ 04706 {0}, 04707 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04708 { 0, 0, 0, 0}, /* reg: Rem(reg, reg) = 37 */ 04709 { 0, 0, 0, 0}, /* (none) */ 04710 { 0, 0, 0, 0}, /* (none) */ 04711 { 0, 0, 0, 0}, /* (none) */ 04712 { 0, 0, 0, 0}, /* (none) */ 04713 { 0, 0, 0, 0}, /* (none) */ 04714 { 0, 0, 0, 0}, /* (none) */ 04715 { 0, 0, 0, 0}, /* (none) */ 04716 { 0, 0, 0, 0}, /* (none) */ 04717 { 0, 0, 0, 0}, /* (none) */ 04718 { 0, 0, 0, 0}, /* (none) */ 04719 { 0, 0, 0, 0}, /* (none) */ 04720 { 0, 0, 0, 0}, /* (none) */ 04721 { 0, 0, 0, 0}, /* (none) */ 04722 { 0, 0, 0, 0}, /* (none) */ 04723 { 0, 0, 0, 0}, /* (none) */ 04724 { 0, 0, 0, 0}, /* (none) */ 04725 { 0, 0, 0, 0}, /* (none) */ 04726 }, 04727 { /* state #41: Rem(VReg, Constant) */ 04728 {0}, 04729 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04730 { 0, 0, 0, 0}, /* reg: Rem(reg, Constant) = 237 */ 04731 { 0, 0, 0, 0}, /* (none) */ 04732 { 0, 0, 0, 0}, /* (none) */ 04733 { 0, 0, 0, 0}, /* (none) */ 04734 { 0, 0, 0, 0}, /* (none) */ 04735 { 0, 0, 0, 0}, /* (none) */ 04736 { 0, 0, 0, 0}, /* (none) */ 04737 { 0, 0, 0, 0}, /* (none) */ 04738 { 0, 0, 0, 0}, /* (none) */ 04739 { 0, 0, 0, 0}, /* (none) */ 04740 { 0, 0, 0, 0}, /* (none) */ 04741 { 0, 0, 0, 0}, /* (none) */ 04742 { 0, 0, 0, 0}, /* (none) */ 04743 { 0, 0, 0, 0}, /* (none) */ 04744 { 0, 0, 0, 0}, /* (none) */ 04745 { 0, 0, 0, 0}, /* (none) */ 04746 { 0, 0, 0, 0}, /* (none) */ 04747 { 0, 0, 0, 0}, /* (none) */ 04748 }, 04749 { /* state #42: Ret */ 04750 {0}, 04751 { 0, 0, 0, 0}, /* stmt: Ret = 1 */ 04752 { 0, 0, 0, 0}, /* (none) */ 04753 { 0, 0, 0, 0}, /* (none) */ 04754 { 0, 0, 0, 0}, /* (none) */ 04755 { 0, 0, 0, 0}, /* (none) */ 04756 { 0, 0, 0, 0}, /* (none) */ 04757 { 0, 0, 0, 0}, /* (none) */ 04758 { 0, 0, 0, 0}, /* (none) */ 04759 { 0, 0, 0, 0}, /* (none) */ 04760 { 0, 0, 0, 0}, /* (none) */ 04761 { 0, 0, 0, 0}, /* (none) */ 04762 { 0, 0, 0, 0}, /* (none) */ 04763 { 0, 0, 0, 0}, /* (none) */ 04764 { 0, 0, 0, 0}, /* (none) */ 04765 { 0, 0, 0, 0}, /* (none) */ 04766 { 0, 0, 0, 0}, /* (none) */ 04767 { 0, 0, 0, 0}, /* (none) */ 04768 { 0, 0, 0, 0}, /* (none) */ 04769 { 0, 0, 0, 0}, /* (none) */ 04770 }, 04771 { /* state #43: RetValue(VReg) */ 04772 {0}, 04773 { 0, 0, 0, 0}, /* stmt: RetValue(reg) = 2 */ 04774 { 0, 0, 0, 0}, /* (none) */ 04775 { 0, 0, 0, 0}, /* (none) */ 04776 { 0, 0, 0, 0}, /* (none) */ 04777 { 0, 0, 0, 0}, /* (none) */ 04778 { 0, 0, 0, 0}, /* (none) */ 04779 { 0, 0, 0, 0}, /* (none) */ 04780 { 0, 0, 0, 0}, /* (none) */ 04781 { 0, 0, 0, 0}, /* (none) */ 04782 { 0, 0, 0, 0}, /* (none) */ 04783 { 0, 0, 0, 0}, /* (none) */ 04784 { 0, 0, 0, 0}, /* (none) */ 04785 { 0, 0, 0, 0}, /* (none) */ 04786 { 0, 0, 0, 0}, /* (none) */ 04787 { 0, 0, 0, 0}, /* (none) */ 04788 { 0, 0, 0, 0}, /* (none) */ 04789 { 0, 0, 0, 0}, /* (none) */ 04790 { 0, 0, 0, 0}, /* (none) */ 04791 { 0, 0, 0, 0}, /* (none) */ 04792 }, 04793 { /* state #44: SetCC(VReg, VReg) */ 04794 {0}, 04795 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04796 { 0, 0, 0, 0}, /* reg: setCC = 242 */ 04797 { 0, 0, 0, 0}, /* (none) */ 04798 { 0, 0, 0, 0}, /* (none) */ 04799 { 0, 0, 0, 0}, /* (none) */ 04800 { 0, 0, 0, 0}, /* (none) */ 04801 { 0, 0, 0, 0}, /* (none) */ 04802 { 0, 0, 0, 0}, /* (none) */ 04803 { 0, 0, 0, 0}, /* (none) */ 04804 { 0, 0, 0, 0}, /* (none) */ 04805 { 0, 0, 0, 0}, /* (none) */ 04806 { 0, 0, 0, 0}, /* (none) */ 04807 { 0, 0, 0, 0}, /* (none) */ 04808 { 0, 0, 0, 0}, /* (none) */ 04809 { 0, 0, 0, 0}, /* (none) */ 04810 { 0, 0, 0, 0}, /* (none) */ 04811 { 0, 0, 0, 0}, /* setCC: SetCC(reg, reg) = 42 */ 04812 { 0, 0, 0, 0}, /* (none) */ 04813 { 0, 0, 0, 0}, /* (none) */ 04814 }, 04815 { /* state #45: SetCC(VReg, Constant) */ 04816 {0}, 04817 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04818 { 0, 0, 0, 0}, /* reg: setCCconst = 241 */ 04819 { 0, 0, 0, 0}, /* (none) */ 04820 { 0, 0, 0, 0}, /* (none) */ 04821 { 0, 0, 0, 0}, /* (none) */ 04822 { 0, 0, 0, 0}, /* (none) */ 04823 { 0, 0, 0, 0}, /* (none) */ 04824 { 0, 0, 0, 0}, /* (none) */ 04825 { 0, 0, 0, 0}, /* (none) */ 04826 { 0, 0, 0, 0}, /* (none) */ 04827 { 0, 0, 0, 0}, /* (none) */ 04828 { 0, 0, 0, 0}, /* (none) */ 04829 { 0, 0, 0, 0}, /* (none) */ 04830 { 0, 0, 0, 0}, /* (none) */ 04831 { 0, 0, 0, 0}, /* (none) */ 04832 { 0, 0, 0, 0}, /* setCCconst: SetCC(reg, Constant) = 41 */ 04833 { 8, 0, 0, 0}, /* setCC: SetCC(reg, reg) = 42 */ 04834 { 0, 0, 0, 0}, /* (none) */ 04835 { 0, 0, 0, 0}, /* (none) */ 04836 }, 04837 { /* state #46: Shl(VReg, VReg) */ 04838 {0}, 04839 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04840 { 0, 0, 0, 0}, /* reg: Shl(reg, reg) = 62 */ 04841 { 0, 0, 0, 0}, /* (none) */ 04842 { 0, 0, 0, 0}, /* (none) */ 04843 { 0, 0, 0, 0}, /* (none) */ 04844 { 0, 0, 0, 0}, /* (none) */ 04845 { 0, 0, 0, 0}, /* (none) */ 04846 { 0, 0, 0, 0}, /* (none) */ 04847 { 0, 0, 0, 0}, /* (none) */ 04848 { 0, 0, 0, 0}, /* (none) */ 04849 { 0, 0, 0, 0}, /* (none) */ 04850 { 0, 0, 0, 0}, /* (none) */ 04851 { 0, 0, 0, 0}, /* (none) */ 04852 { 0, 0, 0, 0}, /* (none) */ 04853 { 0, 0, 0, 0}, /* (none) */ 04854 { 0, 0, 0, 0}, /* (none) */ 04855 { 0, 0, 0, 0}, /* (none) */ 04856 { 0, 0, 0, 0}, /* (none) */ 04857 { 0, 0, 0, 0}, /* (none) */ 04858 }, 04859 { /* state #47: Shr(VReg, VReg) */ 04860 {0}, 04861 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04862 { 0, 0, 0, 0}, /* reg: Shr(reg, reg) = 63 */ 04863 { 0, 0, 0, 0}, /* (none) */ 04864 { 0, 0, 0, 0}, /* (none) */ 04865 { 0, 0, 0, 0}, /* (none) */ 04866 { 0, 0, 0, 0}, /* (none) */ 04867 { 0, 0, 0, 0}, /* (none) */ 04868 { 0, 0, 0, 0}, /* (none) */ 04869 { 0, 0, 0, 0}, /* (none) */ 04870 { 0, 0, 0, 0}, /* (none) */ 04871 { 0, 0, 0, 0}, /* (none) */ 04872 { 0, 0, 0, 0}, /* (none) */ 04873 { 0, 0, 0, 0}, /* (none) */ 04874 { 0, 0, 0, 0}, /* (none) */ 04875 { 0, 0, 0, 0}, /* (none) */ 04876 { 0, 0, 0, 0}, /* (none) */ 04877 { 0, 0, 0, 0}, /* (none) */ 04878 { 0, 0, 0, 0}, /* (none) */ 04879 { 0, 0, 0, 0}, /* (none) */ 04880 }, 04881 { /* state #48: Store(VReg, VReg) */ 04882 {0}, 04883 { 0, 0, 0, 0}, /* stmt: Store(reg, reg) = 3 */ 04884 { 0, 0, 0, 0}, /* (none) */ 04885 { 0, 0, 0, 0}, /* (none) */ 04886 { 0, 0, 0, 0}, /* (none) */ 04887 { 0, 0, 0, 0}, /* (none) */ 04888 { 0, 0, 0, 0}, /* (none) */ 04889 { 0, 0, 0, 0}, /* (none) */ 04890 { 0, 0, 0, 0}, /* (none) */ 04891 { 0, 0, 0, 0}, /* (none) */ 04892 { 0, 0, 0, 0}, /* (none) */ 04893 { 0, 0, 0, 0}, /* (none) */ 04894 { 0, 0, 0, 0}, /* (none) */ 04895 { 0, 0, 0, 0}, /* (none) */ 04896 { 0, 0, 0, 0}, /* (none) */ 04897 { 0, 0, 0, 0}, /* (none) */ 04898 { 0, 0, 0, 0}, /* (none) */ 04899 { 0, 0, 0, 0}, /* (none) */ 04900 { 0, 0, 0, 0}, /* (none) */ 04901 { 0, 0, 0, 0}, /* (none) */ 04902 }, 04903 { /* state #49: Sub(VReg, VReg) */ 04904 {0}, 04905 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04906 { 0, 0, 0, 0}, /* reg: Sub(reg, reg) = 34 */ 04907 { 0, 0, 0, 0}, /* (none) */ 04908 { 0, 0, 0, 0}, /* (none) */ 04909 { 0, 0, 0, 0}, /* (none) */ 04910 { 0, 0, 0, 0}, /* (none) */ 04911 { 0, 0, 0, 0}, /* (none) */ 04912 { 0, 0, 0, 0}, /* (none) */ 04913 { 0, 0, 0, 0}, /* (none) */ 04914 { 0, 0, 0, 0}, /* (none) */ 04915 { 0, 0, 0, 0}, /* (none) */ 04916 { 0, 0, 0, 0}, /* (none) */ 04917 { 0, 0, 0, 0}, /* (none) */ 04918 { 0, 0, 0, 0}, /* (none) */ 04919 { 0, 0, 0, 0}, /* (none) */ 04920 { 0, 0, 0, 0}, /* (none) */ 04921 { 0, 0, 0, 0}, /* (none) */ 04922 { 0, 0, 0, 0}, /* (none) */ 04923 { 0, 0, 0, 0}, /* (none) */ 04924 }, 04925 { /* state #50: Sub(VReg, Constant) */ 04926 {0}, 04927 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04928 { 0, 0, 0, 0}, /* reg: Sub(reg, Constant) = 234 */ 04929 { 0, 0, 0, 0}, /* (none) */ 04930 { 0, 0, 0, 0}, /* (none) */ 04931 { 0, 0, 0, 0}, /* (none) */ 04932 { 0, 0, 0, 0}, /* (none) */ 04933 { 0, 0, 0, 0}, /* (none) */ 04934 { 0, 0, 0, 0}, /* (none) */ 04935 { 0, 0, 0, 0}, /* (none) */ 04936 { 0, 0, 0, 0}, /* (none) */ 04937 { 0, 0, 0, 0}, /* (none) */ 04938 { 0, 0, 0, 0}, /* (none) */ 04939 { 0, 0, 0, 0}, /* (none) */ 04940 { 0, 0, 0, 0}, /* (none) */ 04941 { 0, 0, 0, 0}, /* (none) */ 04942 { 0, 0, 0, 0}, /* (none) */ 04943 { 0, 0, 0, 0}, /* (none) */ 04944 { 0, 0, 0, 0}, /* (none) */ 04945 { 0, 0, 0, 0}, /* (none) */ 04946 }, 04947 { /* state #51: Switch(VReg) */ 04948 {0}, 04949 { 0, 0, 0, 0}, /* stmt: Switch(reg) = 9 */ 04950 { 0, 0, 0, 0}, /* (none) */ 04951 { 0, 0, 0, 0}, /* (none) */ 04952 { 0, 0, 0, 0}, /* (none) */ 04953 { 0, 0, 0, 0}, /* (none) */ 04954 { 0, 0, 0, 0}, /* (none) */ 04955 { 0, 0, 0, 0}, /* (none) */ 04956 { 0, 0, 0, 0}, /* (none) */ 04957 { 0, 0, 0, 0}, /* (none) */ 04958 { 0, 0, 0, 0}, /* (none) */ 04959 { 0, 0, 0, 0}, /* (none) */ 04960 { 0, 0, 0, 0}, /* (none) */ 04961 { 0, 0, 0, 0}, /* (none) */ 04962 { 0, 0, 0, 0}, /* (none) */ 04963 { 0, 0, 0, 0}, /* (none) */ 04964 { 0, 0, 0, 0}, /* (none) */ 04965 { 0, 0, 0, 0}, /* (none) */ 04966 { 0, 0, 0, 0}, /* (none) */ 04967 { 0, 0, 0, 0}, /* (none) */ 04968 }, 04969 { /* state #52: ToArrayTy(VReg) */ 04970 {0}, 04971 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04972 { 0, 0, 0, 0}, /* reg: ToArrayTy(reg) = 19 */ 04973 { 0, 0, 0, 0}, /* (none) */ 04974 { 0, 0, 0, 0}, /* (none) */ 04975 { 0, 0, 0, 0}, /* (none) */ 04976 { 0, 0, 0, 0}, /* (none) */ 04977 { 0, 0, 0, 0}, /* (none) */ 04978 { 0, 0, 0, 0}, /* (none) */ 04979 { 0, 0, 0, 0}, /* (none) */ 04980 { 0, 0, 0, 0}, /* (none) */ 04981 { 0, 0, 0, 0}, /* (none) */ 04982 { 0, 0, 0, 0}, /* (none) */ 04983 { 0, 0, 0, 0}, /* (none) */ 04984 { 0, 0, 0, 0}, /* (none) */ 04985 { 0, 0, 0, 0}, /* (none) */ 04986 { 0, 0, 0, 0}, /* (none) */ 04987 { 0, 0, 0, 0}, /* (none) */ 04988 { 0, 0, 0, 0}, /* (none) */ 04989 { 0, 0, 0, 0}, /* (none) */ 04990 }, 04991 { /* state #53: ToBoolTy(VReg) */ 04992 {0}, 04993 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 04994 { 0, 0, 0, 0}, /* reg: tobool = 222 */ 04995 { 0, 0, 0, 0}, /* (none) */ 04996 { 0, 0, 0, 0}, /* tobool: ToBoolTy(reg) = 22 */ 04997 { 0, 0, 0, 0}, /* (none) */ 04998 { 0, 0, 0, 0}, /* (none) */ 04999 { 0, 0, 0, 0}, /* (none) */ 05000 { 0, 0, 0, 0}, /* (none) */ 05001 { 0, 0, 0, 0}, /* (none) */ 05002 { 0, 0, 0, 0}, /* (none) */ 05003 { 0, 0, 0, 0}, /* (none) */ 05004 { 0, 0, 0, 0}, /* (none) */ 05005 { 0, 0, 0, 0}, /* (none) */ 05006 { 0, 0, 0, 0}, /* (none) */ 05007 { 0, 0, 0, 0}, /* (none) */ 05008 { 0, 0, 0, 0}, /* (none) */ 05009 { 0, 0, 0, 0}, /* (none) */ 05010 { 0, 0, 0, 0}, /* (none) */ 05011 { 0, 0, 0, 0}, /* (none) */ 05012 }, 05013 { /* state #54: ToDoubleTy(VReg) */ 05014 {0}, 05015 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05016 { 0, 0, 0, 0}, /* reg: todouble = 132 */ 05017 { 0, 0, 0, 0}, /* (none) */ 05018 { 0, 0, 0, 0}, /* (none) */ 05019 { 0, 0, 0, 0}, /* (none) */ 05020 { 0, 0, 0, 0}, /* (none) */ 05021 { 0, 0, 0, 0}, /* (none) */ 05022 { 0, 0, 0, 0}, /* (none) */ 05023 { 0, 0, 0, 0}, /* (none) */ 05024 { 0, 0, 0, 0}, /* (none) */ 05025 { 0, 0, 0, 0}, /* (none) */ 05026 { 0, 0, 0, 0}, /* (none) */ 05027 { 0, 0, 0, 0}, /* (none) */ 05028 { 0, 0, 0, 0}, /* todouble: ToDoubleTy(reg) = 32 */ 05029 { 0, 0, 0, 0}, /* (none) */ 05030 { 0, 0, 0, 0}, /* (none) */ 05031 { 0, 0, 0, 0}, /* (none) */ 05032 { 0, 0, 0, 0}, /* (none) */ 05033 { 0, 0, 0, 0}, /* (none) */ 05034 }, 05035 { /* state #55: ToDoubleTy(Constant) */ 05036 {0}, 05037 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05038 { 0, 0, 0, 0}, /* reg: todoubleConst = 133 */ 05039 { 0, 0, 0, 0}, /* (none) */ 05040 { 0, 0, 0, 0}, /* (none) */ 05041 { 0, 0, 0, 0}, /* (none) */ 05042 { 0, 0, 0, 0}, /* (none) */ 05043 { 0, 0, 0, 0}, /* (none) */ 05044 { 0, 0, 0, 0}, /* (none) */ 05045 { 0, 0, 0, 0}, /* (none) */ 05046 { 0, 0, 0, 0}, /* (none) */ 05047 { 0, 0, 0, 0}, /* (none) */ 05048 { 0, 0, 0, 0}, /* (none) */ 05049 { 0, 0, 0, 0}, /* (none) */ 05050 { 3, 0, 0, 0}, /* todouble: ToDoubleTy(reg) = 32 */ 05051 { 0, 0, 0, 0}, /* todoubleConst: ToDoubleTy(Constant) = 232 */ 05052 { 0, 0, 0, 0}, /* (none) */ 05053 { 0, 0, 0, 0}, /* (none) */ 05054 { 0, 0, 0, 0}, /* (none) */ 05055 { 0, 0, 0, 0}, /* (none) */ 05056 }, 05057 { /* state #56: ToFloatTy(VReg) */ 05058 {0}, 05059 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05060 { 0, 0, 0, 0}, /* reg: tofloat = 131 */ 05061 { 0, 0, 0, 0}, /* (none) */ 05062 { 0, 0, 0, 0}, /* (none) */ 05063 { 0, 0, 0, 0}, /* (none) */ 05064 { 0, 0, 0, 0}, /* (none) */ 05065 { 0, 0, 0, 0}, /* (none) */ 05066 { 0, 0, 0, 0}, /* (none) */ 05067 { 0, 0, 0, 0}, /* (none) */ 05068 { 0, 0, 0, 0}, /* (none) */ 05069 { 0, 0, 0, 0}, /* (none) */ 05070 { 0, 0, 0, 0}, /* (none) */ 05071 { 0, 0, 0, 0}, /* tofloat: ToFloatTy(reg) = 31 */ 05072 { 0, 0, 0, 0}, /* (none) */ 05073 { 0, 0, 0, 0}, /* (none) */ 05074 { 0, 0, 0, 0}, /* (none) */ 05075 { 0, 0, 0, 0}, /* (none) */ 05076 { 0, 0, 0, 0}, /* (none) */ 05077 { 0, 0, 0, 0}, /* (none) */ 05078 }, 05079 { /* state #57: ToIntTy(VReg) */ 05080 {0}, 05081 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05082 { 0, 0, 0, 0}, /* reg: toint = 128 */ 05083 { 0, 0, 0, 0}, /* (none) */ 05084 { 0, 0, 0, 0}, /* (none) */ 05085 { 0, 0, 0, 0}, /* (none) */ 05086 { 0, 0, 0, 0}, /* (none) */ 05087 { 0, 0, 0, 0}, /* (none) */ 05088 { 0, 0, 0, 0}, /* (none) */ 05089 { 0, 0, 0, 0}, /* (none) */ 05090 { 0, 0, 0, 0}, /* toint: ToIntTy(reg) = 28 */ 05091 { 0, 0, 0, 0}, /* (none) */ 05092 { 0, 0, 0, 0}, /* (none) */ 05093 { 0, 0, 0, 0}, /* (none) */ 05094 { 0, 0, 0, 0}, /* (none) */ 05095 { 0, 0, 0, 0}, /* (none) */ 05096 { 0, 0, 0, 0}, /* (none) */ 05097 { 0, 0, 0, 0}, /* (none) */ 05098 { 0, 0, 0, 0}, /* (none) */ 05099 { 0, 0, 0, 0}, /* (none) */ 05100 }, 05101 { /* state #58: ToLongTy(VReg) */ 05102 {0}, 05103 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05104 { 0, 0, 0, 0}, /* reg: tolong = 130 */ 05105 { 0, 0, 0, 0}, /* (none) */ 05106 { 0, 0, 0, 0}, /* (none) */ 05107 { 0, 0, 0, 0}, /* (none) */ 05108 { 0, 0, 0, 0}, /* (none) */ 05109 { 0, 0, 0, 0}, /* (none) */ 05110 { 0, 0, 0, 0}, /* (none) */ 05111 { 0, 0, 0, 0}, /* (none) */ 05112 { 0, 0, 0, 0}, /* (none) */ 05113 { 0, 0, 0, 0}, /* (none) */ 05114 { 0, 0, 0, 0}, /* tolong: ToLongTy(reg) = 30 */ 05115 { 0, 0, 0, 0}, /* (none) */ 05116 { 0, 0, 0, 0}, /* (none) */ 05117 { 0, 0, 0, 0}, /* (none) */ 05118 { 0, 0, 0, 0}, /* (none) */ 05119 { 0, 0, 0, 0}, /* (none) */ 05120 { 0, 0, 0, 0}, /* (none) */ 05121 { 0, 0, 0, 0}, /* (none) */ 05122 }, 05123 { /* state #59: ToPointerTy(VReg) */ 05124 {0}, 05125 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05126 { 0, 0, 0, 0}, /* reg: ToPointerTy(reg) = 20 */ 05127 { 0, 0, 0, 0}, /* (none) */ 05128 { 0, 0, 0, 0}, /* (none) */ 05129 { 0, 0, 0, 0}, /* (none) */ 05130 { 0, 0, 0, 0}, /* (none) */ 05131 { 0, 0, 0, 0}, /* (none) */ 05132 { 0, 0, 0, 0}, /* (none) */ 05133 { 0, 0, 0, 0}, /* (none) */ 05134 { 0, 0, 0, 0}, /* (none) */ 05135 { 0, 0, 0, 0}, /* (none) */ 05136 { 0, 0, 0, 0}, /* (none) */ 05137 { 0, 0, 0, 0}, /* (none) */ 05138 { 0, 0, 0, 0}, /* (none) */ 05139 { 0, 0, 0, 0}, /* (none) */ 05140 { 0, 0, 0, 0}, /* (none) */ 05141 { 0, 0, 0, 0}, /* (none) */ 05142 { 0, 0, 0, 0}, /* (none) */ 05143 { 0, 0, 0, 0}, /* (none) */ 05144 }, 05145 { /* state #60: ToSByteTy(VReg) */ 05146 {0}, 05147 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05148 { 0, 0, 0, 0}, /* reg: tosbyte = 124 */ 05149 { 0, 0, 0, 0}, /* (none) */ 05150 { 0, 0, 0, 0}, /* (none) */ 05151 { 0, 0, 0, 0}, /* (none) */ 05152 { 0, 0, 0, 0}, /* tosbyte: ToSByteTy(reg) = 24 */ 05153 { 0, 0, 0, 0}, /* (none) */ 05154 { 0, 0, 0, 0}, /* (none) */ 05155 { 0, 0, 0, 0}, /* (none) */ 05156 { 0, 0, 0, 0}, /* (none) */ 05157 { 0, 0, 0, 0}, /* (none) */ 05158 { 0, 0, 0, 0}, /* (none) */ 05159 { 0, 0, 0, 0}, /* (none) */ 05160 { 0, 0, 0, 0}, /* (none) */ 05161 { 0, 0, 0, 0}, /* (none) */ 05162 { 0, 0, 0, 0}, /* (none) */ 05163 { 0, 0, 0, 0}, /* (none) */ 05164 { 0, 0, 0, 0}, /* (none) */ 05165 { 0, 0, 0, 0}, /* (none) */ 05166 }, 05167 { /* state #61: ToShortTy(VReg) */ 05168 {0}, 05169 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05170 { 0, 0, 0, 0}, /* reg: toshort = 126 */ 05171 { 0, 0, 0, 0}, /* (none) */ 05172 { 0, 0, 0, 0}, /* (none) */ 05173 { 0, 0, 0, 0}, /* (none) */ 05174 { 0, 0, 0, 0}, /* (none) */ 05175 { 0, 0, 0, 0}, /* (none) */ 05176 { 0, 0, 0, 0}, /* toshort: ToShortTy(reg) = 26 */ 05177 { 0, 0, 0, 0}, /* (none) */ 05178 { 0, 0, 0, 0}, /* (none) */ 05179 { 0, 0, 0, 0}, /* (none) */ 05180 { 0, 0, 0, 0}, /* (none) */ 05181 { 0, 0, 0, 0}, /* (none) */ 05182 { 0, 0, 0, 0}, /* (none) */ 05183 { 0, 0, 0, 0}, /* (none) */ 05184 { 0, 0, 0, 0}, /* (none) */ 05185 { 0, 0, 0, 0}, /* (none) */ 05186 { 0, 0, 0, 0}, /* (none) */ 05187 { 0, 0, 0, 0}, /* (none) */ 05188 }, 05189 { /* state #62: ToUByteTy(VReg) */ 05190 {0}, 05191 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05192 { 0, 0, 0, 0}, /* reg: toubyte = 123 */ 05193 { 0, 0, 0, 0}, /* (none) */ 05194 { 0, 0, 0, 0}, /* (none) */ 05195 { 0, 0, 0, 0}, /* toubyte: ToUByteTy(reg) = 23 */ 05196 { 0, 0, 0, 0}, /* (none) */ 05197 { 0, 0, 0, 0}, /* (none) */ 05198 { 0, 0, 0, 0}, /* (none) */ 05199 { 0, 0, 0, 0}, /* (none) */ 05200 { 0, 0, 0, 0}, /* (none) */ 05201 { 0, 0, 0, 0}, /* (none) */ 05202 { 0, 0, 0, 0}, /* (none) */ 05203 { 0, 0, 0, 0}, /* (none) */ 05204 { 0, 0, 0, 0}, /* (none) */ 05205 { 0, 0, 0, 0}, /* (none) */ 05206 { 0, 0, 0, 0}, /* (none) */ 05207 { 0, 0, 0, 0}, /* (none) */ 05208 { 0, 0, 0, 0}, /* (none) */ 05209 { 0, 0, 0, 0}, /* (none) */ 05210 }, 05211 { /* state #63: ToUIntTy(VReg) */ 05212 {0}, 05213 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05214 { 0, 0, 0, 0}, /* reg: touint = 127 */ 05215 { 0, 0, 0, 0}, /* (none) */ 05216 { 0, 0, 0, 0}, /* (none) */ 05217 { 0, 0, 0, 0}, /* (none) */ 05218 { 0, 0, 0, 0}, /* (none) */ 05219 { 0, 0, 0, 0}, /* (none) */ 05220 { 0, 0, 0, 0}, /* (none) */ 05221 { 0, 0, 0, 0}, /* touint: ToUIntTy(reg) = 27 */ 05222 { 0, 0, 0, 0}, /* (none) */ 05223 { 0, 0, 0, 0}, /* (none) */ 05224 { 0, 0, 0, 0}, /* (none) */ 05225 { 0, 0, 0, 0}, /* (none) */ 05226 { 0, 0, 0, 0}, /* (none) */ 05227 { 0, 0, 0, 0}, /* (none) */ 05228 { 0, 0, 0, 0}, /* (none) */ 05229 { 0, 0, 0, 0}, /* (none) */ 05230 { 0, 0, 0, 0}, /* (none) */ 05231 { 0, 0, 0, 0}, /* (none) */ 05232 }, 05233 { /* state #64: ToULongTy(VReg) */ 05234 {0}, 05235 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05236 { 0, 0, 0, 0}, /* reg: toulong = 129 */ 05237 { 0, 0, 0, 0}, /* (none) */ 05238 { 0, 0, 0, 0}, /* (none) */ 05239 { 0, 0, 0, 0}, /* (none) */ 05240 { 0, 0, 0, 0}, /* (none) */ 05241 { 0, 0, 0, 0}, /* (none) */ 05242 { 0, 0, 0, 0}, /* (none) */ 05243 { 0, 0, 0, 0}, /* (none) */ 05244 { 0, 0, 0, 0}, /* (none) */ 05245 { 0, 0, 0, 0}, /* toulong: ToULongTy(reg) = 29 */ 05246 { 0, 0, 0, 0}, /* (none) */ 05247 { 0, 0, 0, 0}, /* (none) */ 05248 { 0, 0, 0, 0}, /* (none) */ 05249 { 0, 0, 0, 0}, /* (none) */ 05250 { 0, 0, 0, 0}, /* (none) */ 05251 { 0, 0, 0, 0}, /* (none) */ 05252 { 0, 0, 0, 0}, /* (none) */ 05253 { 0, 0, 0, 0}, /* (none) */ 05254 }, 05255 { /* state #65: ToUShortTy(VReg) */ 05256 {0}, 05257 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05258 { 0, 0, 0, 0}, /* reg: toushort = 125 */ 05259 { 0, 0, 0, 0}, /* (none) */ 05260 { 0, 0, 0, 0}, /* (none) */ 05261 { 0, 0, 0, 0}, /* (none) */ 05262 { 0, 0, 0, 0}, /* (none) */ 05263 { 0, 0, 0, 0}, /* toushort: ToUShortTy(reg) = 25 */ 05264 { 0, 0, 0, 0}, /* (none) */ 05265 { 0, 0, 0, 0}, /* (none) */ 05266 { 0, 0, 0, 0}, /* (none) */ 05267 { 0, 0, 0, 0}, /* (none) */ 05268 { 0, 0, 0, 0}, /* (none) */ 05269 { 0, 0, 0, 0}, /* (none) */ 05270 { 0, 0, 0, 0}, /* (none) */ 05271 { 0, 0, 0, 0}, /* (none) */ 05272 { 0, 0, 0, 0}, /* (none) */ 05273 { 0, 0, 0, 0}, /* (none) */ 05274 { 0, 0, 0, 0}, /* (none) */ 05275 { 0, 0, 0, 0}, /* (none) */ 05276 }, 05277 { /* state #66: VAArg(VReg) */ 05278 {0}, 05279 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05280 { 0, 0, 0, 0}, /* reg: VAArg(reg) = 66 */ 05281 { 0, 0, 0, 0}, /* (none) */ 05282 { 0, 0, 0, 0}, /* (none) */ 05283 { 0, 0, 0, 0}, /* (none) */ 05284 { 0, 0, 0, 0}, /* (none) */ 05285 { 0, 0, 0, 0}, /* (none) */ 05286 { 0, 0, 0, 0}, /* (none) */ 05287 { 0, 0, 0, 0}, /* (none) */ 05288 { 0, 0, 0, 0}, /* (none) */ 05289 { 0, 0, 0, 0}, /* (none) */ 05290 { 0, 0, 0, 0}, /* (none) */ 05291 { 0, 0, 0, 0}, /* (none) */ 05292 { 0, 0, 0, 0}, /* (none) */ 05293 { 0, 0, 0, 0}, /* (none) */ 05294 { 0, 0, 0, 0}, /* (none) */ 05295 { 0, 0, 0, 0}, /* (none) */ 05296 { 0, 0, 0, 0}, /* (none) */ 05297 { 0, 0, 0, 0}, /* (none) */ 05298 }, 05299 { /* state #67: VANext(VReg) */ 05300 {0}, 05301 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05302 { 0, 0, 0, 0}, /* reg: VANext(reg) = 65 */ 05303 { 0, 0, 0, 0}, /* (none) */ 05304 { 0, 0, 0, 0}, /* (none) */ 05305 { 0, 0, 0, 0}, /* (none) */ 05306 { 0, 0, 0, 0}, /* (none) */ 05307 { 0, 0, 0, 0}, /* (none) */ 05308 { 0, 0, 0, 0}, /* (none) */ 05309 { 0, 0, 0, 0}, /* (none) */ 05310 { 0, 0, 0, 0}, /* (none) */ 05311 { 0, 0, 0, 0}, /* (none) */ 05312 { 0, 0, 0, 0}, /* (none) */ 05313 { 0, 0, 0, 0}, /* (none) */ 05314 { 0, 0, 0, 0}, /* (none) */ 05315 { 0, 0, 0, 0}, /* (none) */ 05316 { 0, 0, 0, 0}, /* (none) */ 05317 { 0, 0, 0, 0}, /* (none) */ 05318 { 0, 0, 0, 0}, /* (none) */ 05319 { 0, 0, 0, 0}, /* (none) */ 05320 }, 05321 { /* state #68: VReg */ 05322 {0}, 05323 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05324 { 0, 0, 0, 0}, /* reg: VReg = 71 */ 05325 { 0, 0, 0, 0}, /* (none) */ 05326 { 0, 0, 0, 0}, /* (none) */ 05327 { 0, 0, 0, 0}, /* (none) */ 05328 { 0, 0, 0, 0}, /* (none) */ 05329 { 0, 0, 0, 0}, /* (none) */ 05330 { 0, 0, 0, 0}, /* (none) */ 05331 { 0, 0, 0, 0}, /* (none) */ 05332 { 0, 0, 0, 0}, /* (none) */ 05333 { 0, 0, 0, 0}, /* (none) */ 05334 { 0, 0, 0, 0}, /* (none) */ 05335 { 0, 0, 0, 0}, /* (none) */ 05336 { 0, 0, 0, 0}, /* (none) */ 05337 { 0, 0, 0, 0}, /* (none) */ 05338 { 0, 0, 0, 0}, /* (none) */ 05339 { 0, 0, 0, 0}, /* (none) */ 05340 { 0, 0, 0, 0}, /* (none) */ 05341 { 0, 0, 0, 0}, /* (none) */ 05342 }, 05343 { /* state #69: VRegList(VReg, VReg) */ 05344 {0}, 05345 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05346 { 0, 0, 0, 0}, /* reg: VRegList(reg, reg) = 10 */ 05347 { 0, 0, 0, 0}, /* (none) */ 05348 { 0, 0, 0, 0}, /* (none) */ 05349 { 0, 0, 0, 0}, /* (none) */ 05350 { 0, 0, 0, 0}, /* (none) */ 05351 { 0, 0, 0, 0}, /* (none) */ 05352 { 0, 0, 0, 0}, /* (none) */ 05353 { 0, 0, 0, 0}, /* (none) */ 05354 { 0, 0, 0, 0}, /* (none) */ 05355 { 0, 0, 0, 0}, /* (none) */ 05356 { 0, 0, 0, 0}, /* (none) */ 05357 { 0, 0, 0, 0}, /* (none) */ 05358 { 0, 0, 0, 0}, /* (none) */ 05359 { 0, 0, 0, 0}, /* (none) */ 05360 { 0, 0, 0, 0}, /* (none) */ 05361 { 0, 0, 0, 0}, /* (none) */ 05362 { 0, 0, 0, 0}, /* (none) */ 05363 { 0, 0, 0, 0}, /* (none) */ 05364 }, 05365 { /* state #70: Xor(VReg, VReg) */ 05366 {0}, 05367 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05368 { 0, 0, 0, 0}, /* reg: Xor(reg, reg) = 40 */ 05369 { 0, 0, 0, 0}, /* (none) */ 05370 { 0, 0, 0, 0}, /* (none) */ 05371 { 0, 0, 0, 0}, /* (none) */ 05372 { 0, 0, 0, 0}, /* (none) */ 05373 { 0, 0, 0, 0}, /* (none) */ 05374 { 0, 0, 0, 0}, /* (none) */ 05375 { 0, 0, 0, 0}, /* (none) */ 05376 { 0, 0, 0, 0}, /* (none) */ 05377 { 0, 0, 0, 0}, /* (none) */ 05378 { 0, 0, 0, 0}, /* (none) */ 05379 { 0, 0, 0, 0}, /* (none) */ 05380 { 0, 0, 0, 0}, /* (none) */ 05381 { 0, 0, 0, 0}, /* (none) */ 05382 { 0, 0, 0, 0}, /* (none) */ 05383 { 0, 0, 0, 0}, /* (none) */ 05384 { 0, 0, 0, 0}, /* (none) */ 05385 { 0, 0, 0, 0}, /* (none) */ 05386 }, 05387 { /* state #71: Xor(VReg, Constant) */ 05388 {0}, 05389 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05390 { 0, 0, 0, 0}, /* reg: Xor(reg, Constant) = 240 */ 05391 { 0, 0, 0, 0}, /* (none) */ 05392 { 0, 0, 0, 0}, /* (none) */ 05393 { 0, 0, 0, 0}, /* (none) */ 05394 { 0, 0, 0, 0}, /* (none) */ 05395 { 0, 0, 0, 0}, /* (none) */ 05396 { 0, 0, 0, 0}, /* (none) */ 05397 { 0, 0, 0, 0}, /* (none) */ 05398 { 0, 0, 0, 0}, /* (none) */ 05399 { 0, 0, 0, 0}, /* (none) */ 05400 { 0, 0, 0, 0}, /* (none) */ 05401 { 0, 0, 0, 0}, /* (none) */ 05402 { 0, 0, 0, 0}, /* (none) */ 05403 { 0, 0, 0, 0}, /* (none) */ 05404 { 0, 0, 0, 0}, /* (none) */ 05405 { 0, 0, 0, 0}, /* (none) */ 05406 { 0, 0, 0, 0}, /* (none) */ 05407 { 0, 0, 0, 0}, /* (none) */ 05408 }, 05409 { /* state #72: Xor(VReg, Not(VReg, VReg)) */ 05410 {0}, 05411 { 0, 0, 0, 0}, /* stmt: reg = 111 */ 05412 { 0, 0, 0, 0}, /* reg: Xor(reg, not) = 140 */ 05413 { 0, 0, 0, 0}, /* (none) */ 05414 { 0, 0, 0, 0}, /* (none) */ 05415 { 0, 0, 0, 0}, /* (none) */ 05416 { 0, 0, 0, 0}, /* (none) */ 05417 { 0, 0, 0, 0}, /* (none) */ 05418 { 0, 0, 0, 0}, /* (none) */ 05419 { 0, 0, 0, 0}, /* (none) */ 05420 { 0, 0, 0, 0}, /* (none) */ 05421 { 0, 0, 0, 0}, /* (none) */ 05422 { 0, 0, 0, 0}, /* (none) */ 05423 { 0, 0, 0, 0}, /* (none) */ 05424 { 0, 0, 0, 0}, /* (none) */ 05425 { 0, 0, 0, 0}, /* (none) */ 05426 { 0, 0, 0, 0}, /* (none) */ 05427 { 0, 0, 0, 0}, /* (none) */ 05428 { 0, 0, 0, 0}, /* (none) */ 05429 { 0, 0, 0, 0}, /* (none) */ 05430 }, 05431 }; 05432 05433 const char * burm_state_string[] = { 05434 " not a state", /* state 0 */ 05435 "Add(VReg, VReg)", /* state #1 */ 05436 "Add(VReg, Constant)", /* state #2 */ 05437 "Alloca", /* state #3 */ 05438 "AllocaN(VReg)", /* state #4 */ 05439 "And(VReg, VReg)", /* state #5 */ 05440 "And(VReg, Constant)", /* state #6 */ 05441 "And(VReg, Not(VReg, VReg))", /* state #7 */ 05442 "BAnd(VReg, VReg)", /* state #8 */ 05443 "BAnd(VReg, Constant)", /* state #9 */ 05444 "BAnd(VReg, BNot(VReg, VReg))", /* state #10 */ 05445 "BNot(VReg, VReg)", /* state #11 */ 05446 "BOr(VReg, VReg)", /* state #12 */ 05447 "BOr(VReg, Constant)", /* state #13 */ 05448 "BOr(VReg, BNot(VReg, VReg))", /* state #14 */ 05449 "BXor(VReg, VReg)", /* state #15 */ 05450 "BXor(VReg, Constant)", /* state #16 */ 05451 "BXor(VReg, BNot(VReg, VReg))", /* state #17 */ 05452 "BrCond(VReg)", /* state #18 */ 05453 "BrCond(Constant)", /* state #19 */ 05454 "BrCond(SetCC(VReg, VReg))", /* state #20 */ 05455 "BrCond(SetCC(VReg, Constant))", /* state #21 */ 05456 "BrUncond", /* state #22 */ 05457 "Call", /* state #23 */ 05458 "Constant", /* state #24 */ 05459 "Div(VReg, VReg)", /* state #25 */ 05460 "Div(VReg, Constant)", /* state #26 */ 05461 "GetElemPtr(VReg)", /* state #27 */ 05462 "GetElemPtrIdx(VReg, VReg)", /* state #28 */ 05463 "Load(VReg)", /* state #29 */ 05464 "Load(GetElemPtr(VReg))", /* state #30 */ 05465 "Mul(VReg, VReg)", /* state #31 */ 05466 "Mul(VReg, Constant)", /* state #32 */ 05467 "Mul(ToDoubleTy(VReg), ToDoubleTy(VReg))", /* state #33 */ 05468 "Mul(ToDoubleTy(VReg), ToDoubleTy(Constant))", /* state #34 */ 05469 "Not(VReg, VReg)", /* state #35 */ 05470 "Or(VReg, VReg)", /* state #36 */ 05471 "Or(VReg, Constant)", /* state #37 */ 05472 "Or(VReg, Not(VReg, VReg))", /* state #38 */ 05473 "Phi(VReg, VReg)", /* state #39 */ 05474 "Rem(VReg, VReg)", /* state #40 */ 05475 "Rem(VReg, Constant)", /* state #41 */ 05476 "Ret", /* state #42 */ 05477 "RetValue(VReg)", /* state #43 */ 05478 "SetCC(VReg, VReg)", /* state #44 */ 05479 "SetCC(VReg, Constant)", /* state #45 */ 05480 "Shl(VReg, VReg)", /* state #46 */ 05481 "Shr(VReg, VReg)", /* state #47 */ 05482 "Store(VReg, VReg)", /* state #48 */ 05483 "Sub(VReg, VReg)", /* state #49 */ 05484 "Sub(VReg, Constant)", /* state #50 */ 05485 "Switch(VReg)", /* state #51 */ 05486 "ToArrayTy(VReg)", /* state #52 */ 05487 "ToBoolTy(VReg)", /* state #53 */ 05488 "ToDoubleTy(VReg)", /* state #54 */ 05489 "ToDoubleTy(Constant)", /* state #55 */ 05490 "ToFloatTy(VReg)", /* state #56 */ 05491 "ToIntTy(VReg)", /* state #57 */ 05492 "ToLongTy(VReg)", /* state #58 */ 05493 "ToPointerTy(VReg)", /* state #59 */ 05494 "ToSByteTy(VReg)", /* state #60 */ 05495 "ToShortTy(VReg)", /* state #61 */ 05496 "ToUByteTy(VReg)", /* state #62 */ 05497 "ToUIntTy(VReg)", /* state #63 */ 05498 "ToULongTy(VReg)", /* state #64 */ 05499 "ToUShortTy(VReg)", /* state #65 */ 05500 "VAArg(VReg)", /* state #66 */ 05501 "VANext(VReg)", /* state #67 */ 05502 "VReg", /* state #68 */ 05503 "VRegList(VReg, VReg)", /* state #69 */ 05504 "Xor(VReg, VReg)", /* state #70 */ 05505 "Xor(VReg, Constant)", /* state #71 */ 05506 "Xor(VReg, Not(VReg, VReg))", /* state #72 */ 05507 }; 05508 const char *burm_ntname[] = { 05509 "Error: Nonterminals are > 0", 05510 "stmt", 05511 "reg", 05512 "not", 05513 "tobool", 05514 "toubyte", 05515 "tosbyte", 05516 "toushort", 05517 "toshort", 05518 "touint", 05519 "toint", 05520 "toulong", 05521 "tolong", 05522 "tofloat", 05523 "todouble", 05524 "todoubleConst", 05525 "setCCconst", 05526 "setCC", 05527 "bnot", 05528 "ptrreg", 05529 0 05530 }; 05531 05532 short burm_closure[20][20] = { 05533 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05534 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05535 { 0, 0, 111, 111, 111, 111, 111, 111, 111, 111, 05536 111, 111, 111, 111, 111, 111, 111, 111, 111, 111,}, 05537 { 0, 0, 0, 221, 222, 123, 124, 125, 126, 127, 05538 128, 129, 130, 131, 132, 133, 241, 242, 321, 155,}, 05539 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05540 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05541 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05542 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05543 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05544 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05545 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05546 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05547 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05548 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05549 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05550 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05551 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05552 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05553 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05554 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05555 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05556 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05557 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05558 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05559 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05560 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05561 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05562 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05563 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05564 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05565 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05566 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05567 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05568 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05569 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05570 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05571 { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 05572 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,}, 05573 }; 05574 05575 05576 05577 05578 05579 05580 05581 void printcover(NODEPTR_TYPE p, int goalnt, int indent) { 05582 int eruleno = burm_rule(STATE_LABEL(p), goalnt); 05583 short *nts = burm_nts[eruleno]; 05584 NODEPTR_TYPE kids[10]; 05585 int i; 05586 05587 if (eruleno == 0) { 05588 printf("no cover\n"); 05589 return; 05590 } 05591 for (i = 0; i < indent; i++) 05592 printf("."); 05593 printf("%s\n", burm_string[eruleno]); 05594 burm_kids(p, eruleno, kids); 05595 for (i = 0; nts[i]; i++) 05596 printcover(kids[i], nts[i], indent+1); 05597 } 05598 05599 void printtree(NODEPTR_TYPE p) { 05600 int op = burm_op_label(p); 05601 05602 printf("%s", burm_opname[op]); 05603 switch (burm_arity[op]) { 05604 case 0: 05605 break; 05606 case 1: 05607 printf("("); 05608 printtree(burm_child(p, 0)); 05609 printf(")"); 05610 break; 05611 case 2: 05612 printf("("); 05613 printtree(burm_child(p, 0)); 05614 printf(", "); 05615 printtree(burm_child(p, 1)); 05616 printf(")"); 05617 break; 05618 } 05619 } 05620 05621 int treecost(NODEPTR_TYPE p, int goalnt, int costindex) { 05622 int eruleno = burm_rule(STATE_LABEL(p), goalnt); 05623 int cost = burm_cost[eruleno][costindex], i; 05624 short *nts = burm_nts[eruleno]; 05625 NODEPTR_TYPE kids[10]; 05626 05627 burm_kids(p, eruleno, kids); 05628 for (i = 0; nts[i]; i++) 05629 cost += treecost(kids[i], nts[i], costindex); 05630 return cost; 05631 } 05632 05633 void printMatches(NODEPTR_TYPE p) { 05634 int nt; 05635 int eruleno; 05636 05637 printf("Node 0x%lx= ", (unsigned long)p); 05638 printtree(p); 05639 printf(" matched rules:\n"); 05640 for (nt = 1; burm_ntname[nt] != (char*)NULL; nt++) 05641 if ((eruleno = burm_rule(STATE_LABEL(p), nt)) != 0) 05642 printf("\t%s\n", burm_string[eruleno]); 05643 }