00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051
00052
00053
00055
00056
00057 #include <stddef.h>
00058 #include <string.h>
00059 #include "topcode.h"
00060 #include "isa_print_gen.h"
00061
00062
00063
00064
00065
00066 static const char *asmname(TOP topcode)
00067 {
00068 int c;
00069 int i;
00070 int j;
00071 const char *name = TOP_Name(topcode);
00072 char buf[100];
00073
00074 for (i = 0; ; ++i) {
00075 c = name[i];
00076 if (c == '.' || c == '\0') return name;
00077 if (c == '_') break;
00078 buf[i] = c;
00079 }
00080
00081 j = i;
00082 do {
00083 c = name[++j];
00084 } while (c != '.' && c != '\0');
00085
00086 do {
00087 c = name[j++];
00088 buf[i++] = c;
00089 } while (c);
00090
00091 return strdup(buf);
00092 }
00093
00094 main()
00095 {
00096 ISA_Print_Begin("ia64");
00097
00098 Set_AsmName_Func(asmname);
00099
00100 Define_Macro("END_GROUP", ";;");
00101 Define_Macro("PREDICATE", "(%s)");
00102 Define_Macro("BEGIN_BUNDLE", "{\t %s");
00103 Define_Macro("END_BUNDLE", "};");
00104
00105
00106 ISA_PRINT_TYPE print_0;
00107 print_0 = ISA_Print_Type_Create("print_0", "%5s %s");
00108 Operand(0);
00109 Name();
00110 Instruction_Print_Group(print_0,
00111 TOP_fwb, TOP_invala, TOP_mf,
00112 TOP_mf_a, TOP_srlz_d, TOP_srlz_i,
00113 TOP_sync_i,
00114 TOP_UNDEFINED);
00115
00116
00117 ISA_PRINT_TYPE print_1;
00118 print_1 = ISA_Print_Type_Create("print_1", " %s");
00119 Name();
00120 Instruction_Print_Group(print_1,
00121 TOP_bsw_0, TOP_bsw_1, TOP_clrrrb,
00122 TOP_clrrrb_pr, TOP_cover, TOP_epc,
00123 TOP_flushrs, TOP_loadrs, TOP_rfi,
00124 TOP_UNDEFINED);
00125
00126
00127 ISA_PRINT_TYPE print_2;
00128 print_2 = ISA_Print_Type_Create("print_2", "%5s %s%s");
00129 Operand(0);
00130 Name();
00131 Operand(1);
00132 Instruction_Print_Group(print_2,
00133 TOP_fclrf,
00134 TOP_UNDEFINED);
00135
00136
00137 ISA_PRINT_TYPE print_3;
00138 print_3 = ISA_Print_Type_Create("print_3", "%5s %s %s");
00139 Operand(0);
00140 Name();
00141 Operand(1);
00142 Instruction_Print_Group(print_3,
00143 TOP_break_b, TOP_break_f, TOP_break_i,
00144 TOP_break_m, TOP_break_x, TOP_fc,
00145 TOP_invala_e, TOP_invala_f_e, TOP_itc_d,
00146 TOP_itc_i, TOP_nop_b, TOP_nop_f,
00147 TOP_nop_i, TOP_nop_m, TOP_nop_x,
00148 TOP_ptc_e, TOP_rsm, TOP_rum,
00149 TOP_ssm, TOP_sum,
00150 TOP_UNDEFINED);
00151
00152
00153 ISA_PRINT_TYPE print_4;
00154 print_4 = ISA_Print_Type_Create("print_4", "%5s %s%s %s");
00155 Operand(0);
00156 Name();
00157 Operand(1);
00158 Operand(2);
00159 Instruction_Print_Group(print_4,
00160 TOP_fchkf,
00161 TOP_UNDEFINED);
00162
00163
00164 ISA_PRINT_TYPE print_5;
00165 print_5 = ISA_Print_Type_Create("print_5", "%5s %s %s,%s");
00166 Operand(0);
00167 Name();
00168 Operand(1);
00169 Operand(2);
00170 Instruction_Print_Group(print_5,
00171 TOP_chk_s_i, TOP_chk_s_m, TOP_chk_f_s,
00172 TOP_probe_r_fault, TOP_probe_rw_fault, TOP_probe_w_fault,
00173 TOP_ptc_g, TOP_ptc_ga, TOP_ptc_l,
00174 TOP_ptr_d, TOP_ptr_i,
00175 TOP_UNDEFINED);
00176
00177
00178 ISA_PRINT_TYPE print_6;
00179 print_6 = ISA_Print_Type_Create("print_6", "%5s %s %s=%s");
00180 Operand(0);
00181 Name();
00182 Result(0);
00183 Operand(1);
00184 Instruction_Print_Group(print_6,
00185 TOP_czx1_l, TOP_czx1_r, TOP_czx2_l,
00186 TOP_czx2_r, TOP_fabs, TOP_fcvt_xf,
00187 TOP_fneg, TOP_fnegabs, TOP_fpabs,
00188 TOP_fpneg, TOP_fpnegabs, TOP_getf_d,
00189 TOP_getf_exp, TOP_getf_s, TOP_getf_sig,
00190 TOP_mov, TOP_mov_f, TOP_mov_f_ar_i,
00191 TOP_mov_f_ar_m, TOP_mov_f_br, TOP_mov_f_cr,
00192 TOP_mov_i, TOP_mov_t_ar_i_i, TOP_mov_t_ar_i_m,
00193 TOP_mov_t_ar_r_i, TOP_mov_t_ar_r_m, TOP_mov_t_br,
00194 TOP_mov_t_cr, TOP_movl, TOP_popcnt,
00195 TOP_setf_d, TOP_setf_exp, TOP_setf_s,
00196 TOP_setf_sig, TOP_sxt1, TOP_sxt2,
00197 TOP_sxt4, TOP_tak, TOP_thash,
00198 TOP_tpa, TOP_ttag, TOP_zxt1,
00199 TOP_zxt2, TOP_zxt4,
00200 TOP_UNDEFINED);
00201
00202
00203 ISA_PRINT_TYPE print_7;
00204 print_7 = ISA_Print_Type_Create("print_7", "%5s %s %s=ip");
00205 Operand(0);
00206 Name();
00207 Result(0);
00208 Instruction_Print_Group(print_7,
00209 TOP_mov_f_ip,
00210 TOP_UNDEFINED);
00211
00212
00213 ISA_PRINT_TYPE print_8;
00214 print_8 = ISA_Print_Type_Create("print_8", "%5s %s %s=pr");
00215 Operand(0);
00216 Name();
00217 Result(0);
00218 Instruction_Print_Group(print_8,
00219 TOP_mov_f_pr,
00220 TOP_UNDEFINED);
00221
00222
00223 ISA_PRINT_TYPE print_9;
00224 print_9 = ISA_Print_Type_Create("print_9", "%5s %s %s=psr");
00225 Operand(0);
00226 Name();
00227 Result(0);
00228 Instruction_Print_Group(print_9,
00229 TOP_mov_f_psr,
00230 TOP_UNDEFINED);
00231
00232
00233 ISA_PRINT_TYPE print_10;
00234 print_10 = ISA_Print_Type_Create("print_10", "%5s %s%s [%s]");
00235 Operand(0);
00236 Name();
00237 Operand(1);
00238 Operand(2);
00239 Instruction_Print_Group(print_10,
00240 TOP_lfetch, TOP_lfetch_excl, TOP_lfetch_fault,
00241 TOP_lfetch_fault_excl,
00242 TOP_UNDEFINED);
00243
00244
00245 ISA_PRINT_TYPE print_11;
00246 print_11 = ISA_Print_Type_Create("print_11", "%5s %s%s %s,%s");
00247 Operand(0);
00248 Name();
00249 Operand(1);
00250 Operand(2);
00251 Operand(3);
00252 Instruction_Print_Group(print_11,
00253 TOP_chk_a, TOP_chk_f_a, TOP_fsetc,
00254 TOP_UNDEFINED);
00255
00256
00257 ISA_PRINT_TYPE print_12;
00258 print_12 = ISA_Print_Type_Create("print_12", "%5s %s%s %s=%s");
00259 Operand(0);
00260 Name();
00261 Operand(1);
00262 Result(0);
00263 Operand(2);
00264 Instruction_Print_Group(print_12,
00265 TOP_fcvt_fx, TOP_fcvt_fx_trunc, TOP_fcvt_fxu,
00266 TOP_fcvt_fxu_trunc, TOP_fcvt_xuf, TOP_fcvt_xuf_d,
00267 TOP_fcvt_xuf_s, TOP_fnorm, TOP_fnorm_d,
00268 TOP_fnorm_s, TOP_fpcvt_fx, TOP_fpcvt_fx_trunc,
00269 TOP_fpcvt_fxu, TOP_fpcvt_fxu_trunc,
00270 TOP_UNDEFINED);
00271
00272
00273 ISA_PRINT_TYPE print_13;
00274 print_13 = ISA_Print_Type_Create("print_13", " %s%s%s %s");
00275 Name();
00276 Operand(0);
00277 Operand(1);
00278 Operand(2);
00279 Instruction_Print_Group(print_13,
00280 TOP_br, TOP_br_r, TOP_brl,
00281 TOP_UNDEFINED);
00282
00283
00284 ISA_PRINT_TYPE print_14;
00285 print_14 = ISA_Print_Type_Create("print_14", "%5s %s %s,%s=%s");
00286 Operand(0);
00287 Name();
00288 Result(0);
00289 Result(1);
00290 Operand(1);
00291 Instruction_Print_Group(print_14,
00292 TOP_tnat_nz, TOP_tnat_nz_and, TOP_tnat_nz_or,
00293 TOP_tnat_nz_or_andcm, TOP_tnat_nz_unc, TOP_tnat_z,
00294 TOP_tnat_z_and, TOP_tnat_z_or, TOP_tnat_z_or_andcm,
00295 TOP_tnat_z_unc,
00296 TOP_UNDEFINED);
00297
00298
00299 ISA_PRINT_TYPE print_15;
00300 print_15 = ISA_Print_Type_Create("print_15", "%5s %s %s=%s,%s");
00301 Operand(0);
00302 Name();
00303 Result(0);
00304 Operand(1);
00305 Operand(2);
00306 Instruction_Print_Group(print_15,
00307 TOP_add, TOP_addl, TOP_addp4,
00308 TOP_addp4_i, TOP_adds, TOP_and,
00309 TOP_and_i, TOP_andcm, TOP_andcm_i,
00310 TOP_fand, TOP_fandcm, TOP_fmerge_ns,
00311 TOP_fmerge_s, TOP_fmerge_se, TOP_fmix_l,
00312 TOP_fmix_lr, TOP_fmix_r, TOP_for,
00313 TOP_fpack, TOP_fpmerge_ns, TOP_fpmerge_s,
00314 TOP_fpmerge_se, TOP_fswap, TOP_fswap_nl,
00315 TOP_fswap_nr, TOP_fsxt_l, TOP_fsxt_r,
00316 TOP_fxor, TOP_mix1_l, TOP_mix1_r,
00317 TOP_mix2_l, TOP_mix2_r, TOP_mix4_l,
00318 TOP_mix4_r, TOP_mux1, TOP_mux2,
00319 TOP_or, TOP_or_i, TOP_pack2_sss,
00320 TOP_pack2_uss, TOP_pack4_sss, TOP_padd1,
00321 TOP_padd1_sss, TOP_padd1_uus, TOP_padd1_uuu,
00322 TOP_padd2, TOP_padd2_sss, TOP_padd2_uus,
00323 TOP_padd2_uuu, TOP_padd4, TOP_pavg1,
00324 TOP_pavg1_raz, TOP_pavg2, TOP_pavg2_raz,
00325 TOP_pavgsub1, TOP_pavgsub2, TOP_pcmp1_eq,
00326 TOP_pcmp1_gt, TOP_pcmp2_eq, TOP_pcmp2_gt,
00327 TOP_pcmp4_eq, TOP_pcmp4_gt, TOP_pmax1_u,
00328 TOP_pmax2, TOP_pmin1_u, TOP_pmin2,
00329 TOP_pmpy2_l, TOP_pmpy2_r, TOP_probe_r,
00330 TOP_probe_w, TOP_probe_i_r, TOP_probe_i_w,
00331 TOP_psad1, TOP_pshl2, TOP_pshl2_i,
00332 TOP_pshl4, TOP_pshl4_i, TOP_pshr2,
00333 TOP_pshr2_u, TOP_pshr2_i, TOP_pshr2_i_u,
00334 TOP_pshr4, TOP_pshr4_u, TOP_pshr4_i,
00335 TOP_pshr4_i_u, TOP_psub1, TOP_psub1_sss,
00336 TOP_psub1_uus, TOP_psub1_uuu, TOP_psub2,
00337 TOP_psub2_sss, TOP_psub2_uus, TOP_psub2_uuu,
00338 TOP_psub4, TOP_shl, TOP_shl_i,
00339 TOP_shr, TOP_shr_u, TOP_shr_i,
00340 TOP_shr_i_u, TOP_sub, TOP_sub_i,
00341 TOP_unpack1_h, TOP_unpack1_l, TOP_unpack2_h,
00342 TOP_unpack2_l, TOP_unpack4_h, TOP_unpack4_l,
00343 TOP_xmpy_h, TOP_xmpy_hu, TOP_xmpy_l,
00344 TOP_xmpy_lu, TOP_xor, TOP_xor_i,
00345 TOP_UNDEFINED);
00346
00347
00348 ISA_PRINT_TYPE print_16;
00349 print_16 = ISA_Print_Type_Create("print_16", "%5s %s pr=%s,%s");
00350 Operand(0);
00351 Name();
00352 Operand(1);
00353 Operand(2);
00354 Instruction_Print_Group(print_16,
00355 TOP_mov_t_pr,
00356 TOP_UNDEFINED);
00357
00358
00359 ISA_PRINT_TYPE print_17;
00360 print_17 = ISA_Print_Type_Create("print_17", "%5s %s psr.l=%s");
00361 Operand(0);
00362 Name();
00363 Operand(1);
00364 Instruction_Print_Group(print_17,
00365 TOP_mov_t_psr,
00366 TOP_UNDEFINED);
00367
00368
00369 ISA_PRINT_TYPE print_18;
00370 print_18 = ISA_Print_Type_Create("print_18", "%5s %s%s%s%s %s");
00371 Operand(0);
00372 Name();
00373 Operand(1);
00374 Operand(2);
00375 Operand(3);
00376 Operand(4);
00377 Instruction_Print_Group(print_18,
00378 TOP_br_cond, TOP_br_ret, TOP_br_wexit,
00379 TOP_br_wtop, TOP_br_r_cond, TOP_brl_cond,
00380 TOP_UNDEFINED);
00381
00382
00383 ISA_PRINT_TYPE print_19;
00384 print_19 = ISA_Print_Type_Create("print_19", "%5s %s %s=psr.um");
00385 Operand(0);
00386 Name();
00387 Result(0);
00388 Instruction_Print_Group(print_19,
00389 TOP_mov_f_psrum,
00390 TOP_UNDEFINED);
00391
00392
00393 ISA_PRINT_TYPE print_20;
00394 print_20 = ISA_Print_Type_Create("print_20", "%5s %s %s=rr[%s]");
00395 Operand(0);
00396 Name();
00397 Result(0);
00398 Operand(1);
00399 Instruction_Print_Group(print_20,
00400 TOP_mov_f_rr,
00401 TOP_UNDEFINED);
00402
00403
00404 ISA_PRINT_TYPE print_21;
00405 print_21 = ISA_Print_Type_Create("print_21", "%5s %s pr.rot=%s");
00406 Operand(0);
00407 Name();
00408 Operand(1);
00409 Instruction_Print_Group(print_21,
00410 TOP_mov_t_pr_i,
00411 TOP_UNDEFINED);
00412
00413
00414 ISA_PRINT_TYPE print_22;
00415 print_22 = ISA_Print_Type_Create("print_22", "%5s %s psr.um=%s");
00416 Operand(0);
00417 Name();
00418 Operand(1);
00419 Instruction_Print_Group(print_22,
00420 TOP_mov_t_psrum,
00421 TOP_UNDEFINED);
00422
00423
00424 ISA_PRINT_TYPE print_23;
00425 print_23 = ISA_Print_Type_Create("print_23", "%5s %s rr[%s]=%s");
00426 Operand(0);
00427 Name();
00428 Operand(1);
00429 Operand(2);
00430 Instruction_Print_Group(print_23,
00431 TOP_mov_t_rr,
00432 TOP_UNDEFINED);
00433
00434
00435 ISA_PRINT_TYPE print_24;
00436 print_24 = ISA_Print_Type_Create("print_24", "%5s %s%s %s=[%s]");
00437 Operand(0);
00438 Name();
00439 Operand(1);
00440 Result(0);
00441 Operand(2);
00442 Instruction_Print_Group(print_24,
00443 TOP_ld8_fill, TOP_ldf_fill,
00444 TOP_UNDEFINED);
00445
00446
00447 ISA_PRINT_TYPE print_25;
00448 print_25 = ISA_Print_Type_Create("print_25", "%5s %s%s [%s],%s");
00449 Operand(0);
00450 Name();
00451 Operand(1);
00452 Operand(2);
00453 Operand(3);
00454 Instruction_Print_Group(print_25,
00455 TOP_lfetch_i, TOP_lfetch_i_excl, TOP_lfetch_i_fault,
00456 TOP_lfetch_i_fault_excl, TOP_lfetch_r, TOP_lfetch_r_excl,
00457 TOP_lfetch_r_fault, TOP_lfetch_r_fault_excl,
00458 TOP_UNDEFINED);
00459
00460
00461 ISA_PRINT_TYPE print_26;
00462 print_26 = ISA_Print_Type_Create("print_26", "%5s %s%s [%s]=%s");
00463 Operand(0);
00464 Name();
00465 Operand(1);
00466 Operand(2);
00467 Operand(3);
00468 Instruction_Print_Group(print_26,
00469 TOP_st8_spill, TOP_stf_spill, TOP_stf8,
00470 TOP_stfd, TOP_stfe, TOP_stfs,
00471 TOP_UNDEFINED);
00472
00473
00474 ISA_PRINT_TYPE print_27;
00475 print_27 = ISA_Print_Type_Create("print_27", " %s%s%s%s %s");
00476 Name();
00477 Operand(0);
00478 Operand(1);
00479 Operand(2);
00480 Operand(3);
00481 Instruction_Print_Group(print_27,
00482 TOP_br_cexit, TOP_br_cloop, TOP_br_ctop,
00483 TOP_br_ia,
00484 TOP_UNDEFINED);
00485
00486
00487 ISA_PRINT_TYPE print_28;
00488 print_28 = ISA_Print_Type_Create("print_28", "%5s %s %s=%s,%s,1");
00489 Operand(0);
00490 Name();
00491 Result(0);
00492 Operand(1);
00493 Operand(2);
00494 Instruction_Print_Group(print_28,
00495 TOP_add_1, TOP_sub_1,
00496 TOP_UNDEFINED);
00497
00498
00499 ISA_PRINT_TYPE print_29;
00500 print_29 = ISA_Print_Type_Create("print_29", "%5s %s %s=dbr[%s]");
00501 Operand(0);
00502 Name();
00503 Result(0);
00504 Operand(1);
00505 Instruction_Print_Group(print_29,
00506 TOP_mov_f_dbr,
00507 TOP_UNDEFINED);
00508
00509
00510 ISA_PRINT_TYPE print_30;
00511 print_30 = ISA_Print_Type_Create("print_30", "%5s %s %s=ibr[%s]");
00512 Operand(0);
00513 Name();
00514 Result(0);
00515 Operand(1);
00516 Instruction_Print_Group(print_30,
00517 TOP_mov_f_ibr,
00518 TOP_UNDEFINED);
00519
00520
00521 ISA_PRINT_TYPE print_31;
00522 print_31 = ISA_Print_Type_Create("print_31", "%5s %s %s=msr[%s]");
00523 Operand(0);
00524 Name();
00525 Result(0);
00526 Operand(1);
00527 Instruction_Print_Group(print_31,
00528 TOP_mov_f_msr,
00529 TOP_UNDEFINED);
00530
00531
00532 ISA_PRINT_TYPE print_32;
00533 print_32 = ISA_Print_Type_Create("print_32", "%5s %s %s=pkr[%s]");
00534 Operand(0);
00535 Name();
00536 Result(0);
00537 Operand(1);
00538 Instruction_Print_Group(print_32,
00539 TOP_mov_f_pkr,
00540 TOP_UNDEFINED);
00541
00542
00543 ISA_PRINT_TYPE print_33;
00544 print_33 = ISA_Print_Type_Create("print_33", "%5s %s %s=pmc[%s]");
00545 Operand(0);
00546 Name();
00547 Result(0);
00548 Operand(1);
00549 Instruction_Print_Group(print_33,
00550 TOP_mov_f_pmc,
00551 TOP_UNDEFINED);
00552
00553
00554 ISA_PRINT_TYPE print_34;
00555 print_34 = ISA_Print_Type_Create("print_34", "%5s %s %s=pmd[%s]");
00556 Operand(0);
00557 Name();
00558 Result(0);
00559 Operand(1);
00560 Instruction_Print_Group(print_34,
00561 TOP_mov_f_pmd,
00562 TOP_UNDEFINED);
00563
00564
00565 ISA_PRINT_TYPE print_35;
00566 print_35 = ISA_Print_Type_Create("print_35", "%5s %s dbr[%s]=%s");
00567 Operand(0);
00568 Name();
00569 Operand(1);
00570 Operand(2);
00571 Instruction_Print_Group(print_35,
00572 TOP_mov_t_dbr,
00573 TOP_UNDEFINED);
00574
00575
00576 ISA_PRINT_TYPE print_36;
00577 print_36 = ISA_Print_Type_Create("print_36", "%5s %s dtr[%s]=%s");
00578 Operand(0);
00579 Name();
00580 Operand(1);
00581 Operand(2);
00582 Instruction_Print_Group(print_36,
00583 TOP_itr_d,
00584 TOP_UNDEFINED);
00585
00586
00587 ISA_PRINT_TYPE print_37;
00588 print_37 = ISA_Print_Type_Create("print_37", "%5s %s ibr[%s]=%s");
00589 Operand(0);
00590 Name();
00591 Operand(1);
00592 Operand(2);
00593 Instruction_Print_Group(print_37,
00594 TOP_mov_t_ibr,
00595 TOP_UNDEFINED);
00596
00597
00598 ISA_PRINT_TYPE print_38;
00599 print_38 = ISA_Print_Type_Create("print_38", "%5s %s itr[%s]=%s");
00600 Operand(0);
00601 Name();
00602 Operand(1);
00603 Operand(2);
00604 Instruction_Print_Group(print_38,
00605 TOP_itr_i,
00606 TOP_UNDEFINED);
00607
00608
00609 ISA_PRINT_TYPE print_39;
00610 print_39 = ISA_Print_Type_Create("print_39", "%5s %s msr[%s]=%s");
00611 Operand(0);
00612 Name();
00613 Operand(1);
00614 Operand(2);
00615 Instruction_Print_Group(print_39,
00616 TOP_mov_t_msr,
00617 TOP_UNDEFINED);
00618
00619
00620 ISA_PRINT_TYPE print_40;
00621 print_40 = ISA_Print_Type_Create("print_40", "%5s %s pkr[%s]=%s");
00622 Operand(0);
00623 Name();
00624 Operand(1);
00625 Operand(2);
00626 Instruction_Print_Group(print_40,
00627 TOP_mov_t_pkr,
00628 TOP_UNDEFINED);
00629
00630
00631 ISA_PRINT_TYPE print_41;
00632 print_41 = ISA_Print_Type_Create("print_41", "%5s %s pmc[%s]=%s");
00633 Operand(0);
00634 Name();
00635 Operand(1);
00636 Operand(2);
00637 Instruction_Print_Group(print_41,
00638 TOP_mov_t_pmc,
00639 TOP_UNDEFINED);
00640
00641
00642 ISA_PRINT_TYPE print_42;
00643 print_42 = ISA_Print_Type_Create("print_42", "%5s %s pmd[%s]=%s");
00644 Operand(0);
00645 Name();
00646 Operand(1);
00647 Operand(2);
00648 Instruction_Print_Group(print_42,
00649 TOP_mov_t_pmd,
00650 TOP_UNDEFINED);
00651
00652
00653 ISA_PRINT_TYPE print_43;
00654 print_43 = ISA_Print_Type_Create("print_43", "%5s %s%s %s,%s=%s");
00655 Operand(0);
00656 Name();
00657 Operand(1);
00658 Result(0);
00659 Result(1);
00660 Operand(2);
00661 Instruction_Print_Group(print_43,
00662 TOP_fprsqrta, TOP_frsqrta,
00663 TOP_UNDEFINED);
00664
00665
00666 ISA_PRINT_TYPE print_44;
00667 print_44 = ISA_Print_Type_Create("print_44", "%5s %s%s %s=%s,%s");
00668 Operand(0);
00669 Name();
00670 Operand(1);
00671 Result(0);
00672 Operand(2);
00673 Operand(3);
00674 Instruction_Print_Group(print_44,
00675 TOP_fadd, TOP_fadd_d, TOP_fadd_s,
00676 TOP_famax, TOP_famin, TOP_fmax,
00677 TOP_fmin, TOP_fmpy, TOP_fmpy_d,
00678 TOP_fmpy_s, TOP_fnmpy, TOP_fnmpy_d,
00679 TOP_fnmpy_s, TOP_fpamax, TOP_fpamin,
00680 TOP_fpcmp_eq, TOP_fpcmp_ge, TOP_fpcmp_gt,
00681 TOP_fpcmp_le, TOP_fpcmp_lt, TOP_fpcmp_neq,
00682 TOP_fpcmp_nge, TOP_fpcmp_ngt, TOP_fpcmp_nle,
00683 TOP_fpcmp_nlt, TOP_fpcmp_ord, TOP_fpcmp_unord,
00684 TOP_fpmax, TOP_fpmin, TOP_fpmpy,
00685 TOP_fpnmpy, TOP_fsub, TOP_fsub_d,
00686 TOP_fsub_s,
00687 TOP_UNDEFINED);
00688
00689
00690 ISA_PRINT_TYPE print_45;
00691 print_45 = ISA_Print_Type_Create("print_45", " %s%s%s %s,%s");
00692 Name();
00693 Operand(0);
00694 Operand(1);
00695 Operand(2);
00696 Operand(3);
00697 Instruction_Print_Group(print_45,
00698 TOP_brp, TOP_brp_ret, TOP_brp_r,
00699 TOP_UNDEFINED);
00700
00701
00702 ISA_PRINT_TYPE print_46;
00703 print_46 = ISA_Print_Type_Create("print_46", "%5s %s %s,%s=%s,%s");
00704 Operand(0);
00705 Name();
00706 Result(0);
00707 Result(1);
00708 Operand(1);
00709 Operand(2);
00710 Instruction_Print_Group(print_46,
00711 TOP_cmp_eq, TOP_cmp_eq_and, TOP_cmp_eq_and_orcm,
00712 TOP_cmp_eq_andcm, TOP_cmp_eq_or, TOP_cmp_eq_or_andcm,
00713 TOP_cmp_eq_orcm, TOP_cmp_eq_unc, TOP_cmp_ge,
00714 TOP_cmp_ge_unc, TOP_cmp_geu, TOP_cmp_geu_unc,
00715 TOP_cmp_gt, TOP_cmp_gt_unc, TOP_cmp_gtu,
00716 TOP_cmp_gtu_unc, TOP_cmp_le, TOP_cmp_le_unc,
00717 TOP_cmp_leu, TOP_cmp_leu_unc, TOP_cmp_lt,
00718 TOP_cmp_lt_unc, TOP_cmp_ltu, TOP_cmp_ltu_unc,
00719 TOP_cmp_ne, TOP_cmp_ne_and, TOP_cmp_ne_and_orcm,
00720 TOP_cmp_ne_andcm, TOP_cmp_ne_or, TOP_cmp_ne_or_andcm,
00721 TOP_cmp_ne_orcm, TOP_cmp_ne_unc, TOP_cmp4_eq,
00722 TOP_cmp4_eq_and, TOP_cmp4_eq_and_orcm, TOP_cmp4_eq_andcm,
00723 TOP_cmp4_eq_or, TOP_cmp4_eq_or_andcm, TOP_cmp4_eq_orcm,
00724 TOP_cmp4_eq_unc, TOP_cmp4_ge, TOP_cmp4_ge_unc,
00725 TOP_cmp4_geu, TOP_cmp4_geu_unc, TOP_cmp4_gt,
00726 TOP_cmp4_gt_unc, TOP_cmp4_gtu, TOP_cmp4_gtu_unc,
00727 TOP_cmp4_le, TOP_cmp4_le_unc, TOP_cmp4_leu,
00728 TOP_cmp4_leu_unc, TOP_cmp4_lt, TOP_cmp4_lt_unc,
00729 TOP_cmp4_ltu, TOP_cmp4_ltu_unc, TOP_cmp4_ne,
00730 TOP_cmp4_ne_and, TOP_cmp4_ne_and_orcm, TOP_cmp4_ne_andcm,
00731 TOP_cmp4_ne_or, TOP_cmp4_ne_or_andcm, TOP_cmp4_ne_orcm,
00732 TOP_cmp4_ne_unc, TOP_cmp4_i_eq, TOP_cmp4_i_eq_and,
00733 TOP_cmp4_i_eq_and_orcm, TOP_cmp4_i_eq_andcm, TOP_cmp4_i_eq_or,
00734 TOP_cmp4_i_eq_or_andcm, TOP_cmp4_i_eq_orcm, TOP_cmp4_i_eq_unc,
00735 TOP_cmp4_i_ge, TOP_cmp4_i_ge_unc, TOP_cmp4_i_geu,
00736 TOP_cmp4_i_geu_unc, TOP_cmp4_i_gt, TOP_cmp4_i_gt_unc,
00737 TOP_cmp4_i_gtu, TOP_cmp4_i_gtu_unc, TOP_cmp4_i_le,
00738 TOP_cmp4_i_le_unc, TOP_cmp4_i_leu, TOP_cmp4_i_leu_unc,
00739 TOP_cmp4_i_lt, TOP_cmp4_i_lt_unc, TOP_cmp4_i_ltu,
00740 TOP_cmp4_i_ltu_unc, TOP_cmp4_i_ne, TOP_cmp4_i_ne_and,
00741 TOP_cmp4_i_ne_and_orcm, TOP_cmp4_i_ne_andcm, TOP_cmp4_i_ne_or,
00742 TOP_cmp4_i_ne_or_andcm, TOP_cmp4_i_ne_orcm, TOP_cmp4_i_ne_unc,
00743 TOP_cmp_i_eq, TOP_cmp_i_eq_and, TOP_cmp_i_eq_and_orcm,
00744 TOP_cmp_i_eq_andcm, TOP_cmp_i_eq_or, TOP_cmp_i_eq_or_andcm,
00745 TOP_cmp_i_eq_orcm, TOP_cmp_i_eq_unc, TOP_cmp_i_ge,
00746 TOP_cmp_i_ge_unc, TOP_cmp_i_geu, TOP_cmp_i_geu_unc,
00747 TOP_cmp_i_gt, TOP_cmp_i_gt_unc, TOP_cmp_i_gtu,
00748 TOP_cmp_i_gtu_unc, TOP_cmp_i_le, TOP_cmp_i_le_unc,
00749 TOP_cmp_i_leu, TOP_cmp_i_leu_unc, TOP_cmp_i_lt,
00750 TOP_cmp_i_lt_unc, TOP_cmp_i_ltu, TOP_cmp_i_ltu_unc,
00751 TOP_cmp_i_ne, TOP_cmp_i_ne_and, TOP_cmp_i_ne_and_orcm,
00752 TOP_cmp_i_ne_andcm, TOP_cmp_i_ne_or, TOP_cmp_i_ne_or_andcm,
00753 TOP_cmp_i_ne_orcm, TOP_cmp_i_ne_unc, TOP_fclass_m,
00754 TOP_fclass_m_unc, TOP_fclass_nm, TOP_fclass_nm_unc,
00755 TOP_tbit_nz, TOP_tbit_nz_and, TOP_tbit_nz_or,
00756 TOP_tbit_nz_or_andcm, TOP_tbit_nz_unc, TOP_tbit_z,
00757 TOP_tbit_z_and, TOP_tbit_z_or, TOP_tbit_z_or_andcm,
00758 TOP_tbit_z_unc,
00759 TOP_UNDEFINED);
00760
00761
00762 ISA_PRINT_TYPE print_47;
00763 print_47 = ISA_Print_Type_Create("print_47", "%5s %s %s,%s=%s,r0");
00764 Operand(0);
00765 Name();
00766 Result(0);
00767 Result(1);
00768 Operand(1);
00769 Instruction_Print_Group(print_47,
00770 TOP_cmp4_z2_ge_and, TOP_cmp4_z2_ge_and_orcm, TOP_cmp4_z2_ge_andcm,
00771 TOP_cmp4_z2_ge_or, TOP_cmp4_z2_ge_or_andcm, TOP_cmp4_z2_ge_orcm,
00772 TOP_cmp4_z2_gt_and, TOP_cmp4_z2_gt_and_orcm, TOP_cmp4_z2_gt_andcm,
00773 TOP_cmp4_z2_gt_or, TOP_cmp4_z2_gt_or_andcm, TOP_cmp4_z2_gt_orcm,
00774 TOP_cmp4_z2_le_and, TOP_cmp4_z2_le_and_orcm, TOP_cmp4_z2_le_andcm,
00775 TOP_cmp4_z2_le_or, TOP_cmp4_z2_le_or_andcm, TOP_cmp4_z2_le_orcm,
00776 TOP_cmp4_z2_lt_and, TOP_cmp4_z2_lt_and_orcm, TOP_cmp4_z2_lt_andcm,
00777 TOP_cmp4_z2_lt_or, TOP_cmp4_z2_lt_or_andcm, TOP_cmp4_z2_lt_orcm,
00778 TOP_cmp_z2_ge_and, TOP_cmp_z2_ge_and_orcm, TOP_cmp_z2_ge_andcm,
00779 TOP_cmp_z2_ge_or, TOP_cmp_z2_ge_or_andcm, TOP_cmp_z2_ge_orcm,
00780 TOP_cmp_z2_gt_and, TOP_cmp_z2_gt_and_orcm, TOP_cmp_z2_gt_andcm,
00781 TOP_cmp_z2_gt_or, TOP_cmp_z2_gt_or_andcm, TOP_cmp_z2_gt_orcm,
00782 TOP_cmp_z2_le_and, TOP_cmp_z2_le_and_orcm, TOP_cmp_z2_le_andcm,
00783 TOP_cmp_z2_le_or, TOP_cmp_z2_le_or_andcm, TOP_cmp_z2_le_orcm,
00784 TOP_cmp_z2_lt_and, TOP_cmp_z2_lt_and_orcm, TOP_cmp_z2_lt_andcm,
00785 TOP_cmp_z2_lt_or, TOP_cmp_z2_lt_or_andcm, TOP_cmp_z2_lt_orcm,
00786 TOP_UNDEFINED);
00787
00788
00789 ISA_PRINT_TYPE print_48;
00790 print_48 = ISA_Print_Type_Create("print_48", "%5s %s %s,%s=r0,%s");
00791 Operand(0);
00792 Name();
00793 Result(0);
00794 Result(1);
00795 Operand(1);
00796 Instruction_Print_Group(print_48,
00797 TOP_cmp4_z1_ge_and, TOP_cmp4_z1_ge_and_orcm, TOP_cmp4_z1_ge_andcm,
00798 TOP_cmp4_z1_ge_or, TOP_cmp4_z1_ge_or_andcm, TOP_cmp4_z1_ge_orcm,
00799 TOP_cmp4_z1_gt_and, TOP_cmp4_z1_gt_and_orcm, TOP_cmp4_z1_gt_andcm,
00800 TOP_cmp4_z1_gt_or, TOP_cmp4_z1_gt_or_andcm, TOP_cmp4_z1_gt_orcm,
00801 TOP_cmp4_z1_le_and, TOP_cmp4_z1_le_and_orcm, TOP_cmp4_z1_le_andcm,
00802 TOP_cmp4_z1_le_or, TOP_cmp4_z1_le_or_andcm, TOP_cmp4_z1_le_orcm,
00803 TOP_cmp4_z1_lt_and, TOP_cmp4_z1_lt_and_orcm, TOP_cmp4_z1_lt_andcm,
00804 TOP_cmp4_z1_lt_or, TOP_cmp4_z1_lt_or_andcm, TOP_cmp4_z1_lt_orcm,
00805 TOP_cmp_z1_ge_and, TOP_cmp_z1_ge_and_orcm, TOP_cmp_z1_ge_andcm,
00806 TOP_cmp_z1_ge_or, TOP_cmp_z1_ge_or_andcm, TOP_cmp_z1_ge_orcm,
00807 TOP_cmp_z1_gt_and, TOP_cmp_z1_gt_and_orcm, TOP_cmp_z1_gt_andcm,
00808 TOP_cmp_z1_gt_or, TOP_cmp_z1_gt_or_andcm, TOP_cmp_z1_gt_orcm,
00809 TOP_cmp_z1_le_and, TOP_cmp_z1_le_and_orcm, TOP_cmp_z1_le_andcm,
00810 TOP_cmp_z1_le_or, TOP_cmp_z1_le_or_andcm, TOP_cmp_z1_le_orcm,
00811 TOP_cmp_z1_lt_and, TOP_cmp_z1_lt_and_orcm, TOP_cmp_z1_lt_andcm,
00812 TOP_cmp_z1_lt_or, TOP_cmp_z1_lt_or_andcm, TOP_cmp_z1_lt_orcm,
00813 TOP_UNDEFINED);
00814
00815
00816 ISA_PRINT_TYPE print_49;
00817 print_49 = ISA_Print_Type_Create("print_49", "%5s %s %s=%s,%s,%s");
00818 Operand(0);
00819 Name();
00820 Result(0);
00821 Operand(1);
00822 Operand(2);
00823 Operand(3);
00824 Instruction_Print_Group(print_49,
00825 TOP_dep_z, TOP_dep_i_z, TOP_extr,
00826 TOP_extr_u, TOP_fselect, TOP_pmpyshr2,
00827 TOP_pmpyshr2_u, TOP_pshladd2, TOP_pshradd2,
00828 TOP_shladd, TOP_shladdp4, TOP_shrp,
00829 TOP_xma_h, TOP_xma_hu, TOP_xma_l,
00830 TOP_xma_lu,
00831 TOP_UNDEFINED);
00832
00833
00834 ISA_PRINT_TYPE print_50;
00835 print_50 = ISA_Print_Type_Create("print_50", "%5s %s%s%s %s=[%s]");
00836 Operand(0);
00837 Name();
00838 Operand(1);
00839 Operand(2);
00840 Result(0);
00841 Operand(3);
00842 Instruction_Print_Group(print_50,
00843 TOP_ld1, TOP_ld2, TOP_ld4,
00844 TOP_ld8, TOP_ldf8, TOP_ldfd,
00845 TOP_ldfe, TOP_ldfs,
00846 TOP_UNDEFINED);
00847
00848
00849 ISA_PRINT_TYPE print_51;
00850 print_51 = ISA_Print_Type_Create("print_51", "%5s %s%s%s [%s]=%s");
00851 Operand(0);
00852 Name();
00853 Operand(1);
00854 Operand(2);
00855 Operand(3);
00856 Operand(4);
00857 Instruction_Print_Group(print_51,
00858 TOP_st1, TOP_st2, TOP_st4,
00859 TOP_st8,
00860 TOP_UNDEFINED);
00861
00862
00863 ISA_PRINT_TYPE print_52;
00864 print_52 = ISA_Print_Type_Create("print_52", "%5s %s%s%s%s %s=%s");
00865 Operand(0);
00866 Name();
00867 Operand(1);
00868 Operand(2);
00869 Operand(3);
00870 Result(0);
00871 Operand(4);
00872 Instruction_Print_Group(print_52,
00873 TOP_br_call, TOP_br_r_call, TOP_brl_call,
00874 TOP_UNDEFINED);
00875
00876
00877 ISA_PRINT_TYPE print_53;
00878 print_53 = ISA_Print_Type_Create("print_53", "%5s %s %s=cpuid[%s]");
00879 Operand(0);
00880 Name();
00881 Result(0);
00882 Operand(1);
00883 Instruction_Print_Group(print_53,
00884 TOP_mov_f_cpuid,
00885 TOP_UNDEFINED);
00886
00887
00888 ISA_PRINT_TYPE print_54;
00889 print_54 = ISA_Print_Type_Create("print_54", "%5s %s%s %s=[%s],%s");
00890 Operand(0);
00891 Name();
00892 Operand(1);
00893 Result(0);
00894 Operand(2);
00895 Operand(3);
00896 Instruction_Print_Group(print_54,
00897 TOP_ld8_i_fill, TOP_ld8_r_fill, TOP_ldf_i_fill,
00898 TOP_ldf_r_fill, TOP_xchg1, TOP_xchg2,
00899 TOP_xchg4, TOP_xchg8,
00900 TOP_UNDEFINED);
00901
00902
00903 ISA_PRINT_TYPE print_55;
00904 print_55 = ISA_Print_Type_Create("print_55", "%5s %s%s [%s]=%s,%s");
00905 Operand(0);
00906 Name();
00907 Operand(1);
00908 Operand(2);
00909 Operand(3);
00910 Operand(4);
00911 Instruction_Print_Group(print_55,
00912 TOP_st8_i_spill, TOP_stf8_i, TOP_stf_i_spill,
00913 TOP_stfd_i, TOP_stfe_i, TOP_stfs_i,
00914 TOP_UNDEFINED);
00915
00916
00917 ISA_PRINT_TYPE print_56;
00918 print_56 = ISA_Print_Type_Create("print_56", "%5s %s%s%s %s=%s,%s");
00919 Operand(0);
00920 Name();
00921 Operand(1);
00922 Operand(2);
00923 Result(0);
00924 Operand(3);
00925 Operand(4);
00926 Instruction_Print_Group(print_56,
00927 TOP_mov_t_br_ret, TOP_mov_t_br_i,
00928 TOP_UNDEFINED);
00929
00930
00931 ISA_PRINT_TYPE print_57;
00932 print_57 = ISA_Print_Type_Create("print_57", "%5s %s%s %s,%s=%s,%s");
00933 Operand(0);
00934 Name();
00935 Operand(1);
00936 Result(0);
00937 Result(1);
00938 Operand(2);
00939 Operand(3);
00940 Instruction_Print_Group(print_57,
00941 TOP_fcmp_eq, TOP_fcmp_eq_unc, TOP_fcmp_ge,
00942 TOP_fcmp_ge_unc, TOP_fcmp_gt, TOP_fcmp_gt_unc,
00943 TOP_fcmp_le, TOP_fcmp_le_unc, TOP_fcmp_lt,
00944 TOP_fcmp_lt_unc, TOP_fcmp_neq, TOP_fcmp_neq_unc,
00945 TOP_fcmp_nge, TOP_fcmp_nge_unc, TOP_fcmp_ngt,
00946 TOP_fcmp_ngt_unc, TOP_fcmp_nle, TOP_fcmp_nle_unc,
00947 TOP_fcmp_nlt, TOP_fcmp_nlt_unc, TOP_fcmp_ord,
00948 TOP_fcmp_ord_unc, TOP_fcmp_unord, TOP_fcmp_unord_unc,
00949 TOP_fprcpa, TOP_frcpa,
00950 TOP_UNDEFINED);
00951
00952
00953 ISA_PRINT_TYPE print_58;
00954 print_58 = ISA_Print_Type_Create("print_58", "%5s %s%s %s=%s,%s,%s");
00955 Operand(0);
00956 Name();
00957 Operand(1);
00958 Result(0);
00959 Operand(2);
00960 Operand(3);
00961 Operand(4);
00962 Instruction_Print_Group(print_58,
00963 TOP_fma, TOP_fma_d, TOP_fma_s,
00964 TOP_fms, TOP_fms_d, TOP_fms_s,
00965 TOP_fnma, TOP_fnma_d, TOP_fnma_s,
00966 TOP_fpma, TOP_fpms, TOP_fpnma,
00967 TOP_UNDEFINED);
00968
00969
00970 ISA_PRINT_TYPE print_59;
00971 print_59 = ISA_Print_Type_Create("print_59", "%5s %s %s=%s,%s,%s,%s");
00972 Operand(0);
00973 Name();
00974 Result(0);
00975 Operand(1);
00976 Operand(2);
00977 Operand(3);
00978 Operand(4);
00979 Instruction_Print_Group(print_59,
00980 TOP_dep, TOP_dep_i,
00981 TOP_UNDEFINED);
00982
00983
00984 ISA_PRINT_TYPE print_60;
00985 print_60 = ISA_Print_Type_Create("print_60", "%5s %s%s%s %s,%s=[%s]");
00986 Operand(0);
00987 Name();
00988 Operand(1);
00989 Operand(2);
00990 Result(0);
00991 Result(1);
00992 Operand(3);
00993 Instruction_Print_Group(print_60,
00994 TOP_ldfp8, TOP_ldfpd, TOP_ldfps,
00995 TOP_UNDEFINED);
00996
00997
00998 ISA_PRINT_TYPE print_61;
00999 print_61 = ISA_Print_Type_Create("print_61", "%5s %s%s%s %s=[%s],%s");
01000 Operand(0);
01001 Name();
01002 Operand(1);
01003 Operand(2);
01004 Result(0);
01005 Operand(3);
01006 Operand(4);
01007 Instruction_Print_Group(print_61,
01008 TOP_fetchadd4, TOP_fetchadd8, TOP_ld1_i,
01009 TOP_ld1_r, TOP_ld2_i, TOP_ld2_r,
01010 TOP_ld4_i, TOP_ld4_r, TOP_ld8_i,
01011 TOP_ld8_r, TOP_ldf8_i, TOP_ldf8_r,
01012 TOP_ldfd_i, TOP_ldfd_r, TOP_ldfe_i,
01013 TOP_ldfe_r, TOP_ldfs_i, TOP_ldfs_r,
01014 TOP_UNDEFINED);
01015
01016
01017 ISA_PRINT_TYPE print_62;
01018 print_62 = ISA_Print_Type_Create("print_62", "%5s %s%s%s [%s]=%s,%s");
01019 Operand(0);
01020 Name();
01021 Operand(1);
01022 Operand(2);
01023 Operand(3);
01024 Operand(4);
01025 Operand(5);
01026 Instruction_Print_Group(print_62,
01027 TOP_st1_i, TOP_st2_i, TOP_st4_i,
01028 TOP_st8_i,
01029 TOP_UNDEFINED);
01030
01031
01032 ISA_PRINT_TYPE print_63;
01033 print_63 = ISA_Print_Type_Create("print_63", "%5s %s%s%s %s,%s=[%s],8");
01034 Operand(0);
01035 Name();
01036 Operand(1);
01037 Operand(2);
01038 Result(0);
01039 Result(1);
01040 Operand(3);
01041 Instruction_Print_Group(print_63,
01042 TOP_ldfps_i,
01043 TOP_UNDEFINED);
01044
01045
01046 ISA_PRINT_TYPE print_64;
01047 print_64 = ISA_Print_Type_Create("print_64", "%5s %s%s%s %s,%s=[%s],16");
01048 Operand(0);
01049 Name();
01050 Operand(1);
01051 Operand(2);
01052 Result(0);
01053 Result(1);
01054 Operand(3);
01055 Instruction_Print_Group(print_64,
01056 TOP_ldfp8_i, TOP_ldfpd_i,
01057 TOP_UNDEFINED);
01058
01059
01060 ISA_PRINT_TYPE print_65;
01061 print_65 = ISA_Print_Type_Create("print_65", " %s %s=ar.pfs,%s,%s,%s");
01062 Name();
01063 Result(0);
01064 Operand(0);
01065 Operand(1);
01066 Operand(2);
01067 Instruction_Print_Group(print_65,
01068 TOP_alloc_3,
01069 TOP_UNDEFINED);
01070
01071
01072 ISA_PRINT_TYPE print_66;
01073 print_66 = ISA_Print_Type_Create("print_66", "%5s %s%s%s %s=[%s],%s,ar.ccv");
01074 Operand(0);
01075 Name();
01076 Operand(1);
01077 Operand(2);
01078 Result(0);
01079 Operand(3);
01080 Operand(4);
01081 Instruction_Print_Group(print_66,
01082 TOP_cmpxchg1, TOP_cmpxchg2, TOP_cmpxchg4,
01083 TOP_cmpxchg8,
01084 TOP_UNDEFINED);
01085
01086
01087 ISA_PRINT_TYPE print_67;
01088 print_67 = ISA_Print_Type_Create("print_67", " %s %s=ar.pfs,%s,%s,%s,%s");
01089 Name();
01090 Result(0);
01091 Operand(0);
01092 Operand(1);
01093 Operand(2);
01094 Operand(3);
01095 Instruction_Print_Group(print_67,
01096 TOP_alloc,
01097 TOP_UNDEFINED);
01098
01099 ISA_Print_End();
01100 return 0;
01101 }