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