Open64 (mfef90, whirl2f, and IR tools)
TAG: version-openad; SVN changeset: 916
|
00001 /* 00002 00003 Copyright (C) 2000, 2001 Silicon Graphics, Inc. All Rights Reserved. 00004 00005 This program is free software; you can redistribute it and/or modify it 00006 under the terms of version 2 of the GNU General Public License as 00007 published by the Free Software Foundation. 00008 00009 This program is distributed in the hope that it would be useful, but 00010 WITHOUT ANY WARRANTY; without even the implied warranty of 00011 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 00012 00013 Further, this software is distributed without any warranty that it is 00014 free of the rightful claim of any third person regarding infringement 00015 or the like. Any license provided herein, whether implied or 00016 otherwise, applies only to this software file. Patent licenses, if 00017 any, provided herein do not apply to combinations of this program with 00018 other software, or any other product whatsoever. 00019 00020 You should have received a copy of the GNU General Public License along 00021 with this program; if not, write the Free Software Foundation, Inc., 59 00022 Temple Place - Suite 330, Boston MA 02111-1307, USA. 00023 00024 Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky, 00025 Mountain View, CA 94043, or: 00026 00027 http://www.sgi.com 00028 00029 For further information regarding this notice, see: 00030 00031 http://oss.sgi.com/projects/GenInfo/NoticeExplan 00032 00033 */ 00034 00035 // 00036 // Group TOPS with similar Printing format together. 00038 // The instructions are listed by category. The different categories of 00039 // instructions are: 00040 // 00041 // 1. Binary Operators 00042 // 2. Jump, Branch and Trap operators 00043 // 3. Multiply/Divide operators 00044 // 4. Load/Store machine operators 00045 // 5. FPU arithmetic/convert operators 00046 // 6. FPU branch operators 00047 // 7. FPU comparison operators 00048 // 8. Coprocessor1 (FP) data movement operations 00049 // 9. MIPS IV only arithmetic/cond_move FPU operations 00050 // 10. Compiler IR and fictional operators 00051 // 00052 // Within each Print_Type instructions are listed in alphabetical order and 00053 // as shown in the ISA manual 00055 // 00056 00057 #include <stddef.h> 00058 #include <string.h> 00059 #include "topcode.h" 00060 #include "isa_print_gen.h" 00061 00062 // Multiple topcodes map to the same assembly name. To disambiguate the 00063 // topcodes, we append a suffix to the basename. By convention, the 00064 // suffix starts with an underscore. To get the assembly name we strip off 00065 // the suffix. 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", ";;"); // end-of-group marker 00101 Define_Macro("PREDICATE", "(%s)"); // predicate operand format 00102 Define_Macro("BEGIN_BUNDLE", "{\t %s"); // bundle introducer 00103 Define_Macro("END_BUNDLE", "};"); // bundle terminator 00104 00105 /* ===== %5s %s ===== */ 00106 ISA_PRINT_TYPE print_0; 00107 print_0 = ISA_Print_Type_Create("print_0", "%5s %s"); 00108 Operand(0); // qp 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 /* ===== %s ===== */ 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 /* ===== %5s %s%s ===== */ 00127 ISA_PRINT_TYPE print_2; 00128 print_2 = ISA_Print_Type_Create("print_2", "%5s %s%s"); 00129 Operand(0); // qp 00130 Name(); 00131 Operand(1); // sf 00132 Instruction_Print_Group(print_2, 00133 TOP_fclrf, 00134 TOP_UNDEFINED); 00135 00136 /* ===== %5s %s %s ===== */ 00137 ISA_PRINT_TYPE print_3; 00138 print_3 = ISA_Print_Type_Create("print_3", "%5s %s %s"); 00139 Operand(0); // qp 00140 Name(); 00141 Operand(1); // imm 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 /* ===== %5s %s%s %s ===== */ 00153 ISA_PRINT_TYPE print_4; 00154 print_4 = ISA_Print_Type_Create("print_4", "%5s %s%s %s"); 00155 Operand(0); // qp 00156 Name(); 00157 Operand(1); // sf 00158 Operand(2); // imm 00159 Instruction_Print_Group(print_4, 00160 TOP_fchkf, 00161 TOP_UNDEFINED); 00162 00163 /* ===== %5s %s %s,%s ===== */ 00164 ISA_PRINT_TYPE print_5; 00165 print_5 = ISA_Print_Type_Create("print_5", "%5s %s %s,%s"); 00166 Operand(0); // qp 00167 Name(); 00168 Operand(1); // r2 00169 Operand(2); // imm 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 /* ===== %5s %s %s=%s ===== */ 00178 ISA_PRINT_TYPE print_6; 00179 print_6 = ISA_Print_Type_Create("print_6", "%5s %s %s=%s"); 00180 Operand(0); // qp 00181 Name(); 00182 Result(0); // r1 00183 Operand(1); // r3 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 /* ===== %5s %s %s=ip ===== */ 00203 ISA_PRINT_TYPE print_7; 00204 print_7 = ISA_Print_Type_Create("print_7", "%5s %s %s=ip"); 00205 Operand(0); // qp 00206 Name(); 00207 Result(0); // r1 00208 Instruction_Print_Group(print_7, 00209 TOP_mov_f_ip, 00210 TOP_UNDEFINED); 00211 00212 /* ===== %5s %s %s=pr ===== */ 00213 ISA_PRINT_TYPE print_8; 00214 print_8 = ISA_Print_Type_Create("print_8", "%5s %s %s=pr"); 00215 Operand(0); // qp 00216 Name(); 00217 Result(0); // r1 00218 Instruction_Print_Group(print_8, 00219 TOP_mov_f_pr, 00220 TOP_UNDEFINED); 00221 00222 /* ===== %5s %s %s=psr ===== */ 00223 ISA_PRINT_TYPE print_9; 00224 print_9 = ISA_Print_Type_Create("print_9", "%5s %s %s=psr"); 00225 Operand(0); // qp 00226 Name(); 00227 Result(0); // r1 00228 Instruction_Print_Group(print_9, 00229 TOP_mov_f_psr, 00230 TOP_UNDEFINED); 00231 00232 /* ===== %5s %s%s [%s] ===== */ 00233 ISA_PRINT_TYPE print_10; 00234 print_10 = ISA_Print_Type_Create("print_10", "%5s %s%s [%s]"); 00235 Operand(0); // qp 00236 Name(); 00237 Operand(1); // lfhint 00238 Operand(2); // r3 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 /* ===== %5s %s%s %s,%s ===== */ 00245 ISA_PRINT_TYPE print_11; 00246 print_11 = ISA_Print_Type_Create("print_11", "%5s %s%s %s,%s"); 00247 Operand(0); // qp 00248 Name(); 00249 Operand(1); // aclr 00250 Operand(2); // r1 00251 Operand(3); // imm 00252 Instruction_Print_Group(print_11, 00253 TOP_chk_a, TOP_chk_f_a, TOP_fsetc, 00254 TOP_UNDEFINED); 00255 00256 /* ===== %5s %s%s %s=%s ===== */ 00257 ISA_PRINT_TYPE print_12; 00258 print_12 = ISA_Print_Type_Create("print_12", "%5s %s%s %s=%s"); 00259 Operand(0); // qp 00260 Name(); 00261 Operand(1); // sf 00262 Result(0); // f1 00263 Operand(2); // f2 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 /* ===== %s%s%s %s ===== */ 00273 ISA_PRINT_TYPE print_13; 00274 print_13 = ISA_Print_Type_Create("print_13", " %s%s%s %s"); 00275 Name(); 00276 Operand(0); // ph 00277 Operand(1); // dh 00278 Operand(2); // imm 00279 Instruction_Print_Group(print_13, 00280 TOP_br, TOP_br_r, TOP_brl, 00281 TOP_UNDEFINED); 00282 00283 /* ===== %5s %s %s,%s=%s ===== */ 00284 ISA_PRINT_TYPE print_14; 00285 print_14 = ISA_Print_Type_Create("print_14", "%5s %s %s,%s=%s"); 00286 Operand(0); // qp 00287 Name(); 00288 Result(0); // p1 00289 Result(1); // p2 00290 Operand(1); // r3 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 /* ===== %5s %s %s=%s,%s ===== */ 00299 ISA_PRINT_TYPE print_15; 00300 print_15 = ISA_Print_Type_Create("print_15", "%5s %s %s=%s,%s"); 00301 Operand(0); // qp 00302 Name(); 00303 Result(0); // r1 00304 Operand(1); // r2 00305 Operand(2); // r3 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 /* ===== %5s %s pr=%s,%s ===== */ 00348 ISA_PRINT_TYPE print_16; 00349 print_16 = ISA_Print_Type_Create("print_16", "%5s %s pr=%s,%s"); 00350 Operand(0); // qp 00351 Name(); 00352 Operand(1); // r2 00353 Operand(2); // imm 00354 Instruction_Print_Group(print_16, 00355 TOP_mov_t_pr, 00356 TOP_UNDEFINED); 00357 00358 /* ===== %5s %s psr.l=%s ===== */ 00359 ISA_PRINT_TYPE print_17; 00360 print_17 = ISA_Print_Type_Create("print_17", "%5s %s psr.l=%s"); 00361 Operand(0); // qp 00362 Name(); 00363 Operand(1); // r2 00364 Instruction_Print_Group(print_17, 00365 TOP_mov_t_psr, 00366 TOP_UNDEFINED); 00367 00368 /* ===== %5s %s%s%s%s %s ===== */ 00369 ISA_PRINT_TYPE print_18; 00370 print_18 = ISA_Print_Type_Create("print_18", "%5s %s%s%s%s %s"); 00371 Operand(0); // qp 00372 Name(); 00373 Operand(1); // bwh 00374 Operand(2); // ph 00375 Operand(3); // dh 00376 Operand(4); // imm 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 /* ===== %5s %s %s=psr.um ===== */ 00383 ISA_PRINT_TYPE print_19; 00384 print_19 = ISA_Print_Type_Create("print_19", "%5s %s %s=psr.um"); 00385 Operand(0); // qp 00386 Name(); 00387 Result(0); // r1 00388 Instruction_Print_Group(print_19, 00389 TOP_mov_f_psrum, 00390 TOP_UNDEFINED); 00391 00392 /* ===== %5s %s %s=rr[%s] ===== */ 00393 ISA_PRINT_TYPE print_20; 00394 print_20 = ISA_Print_Type_Create("print_20", "%5s %s %s=rr[%s]"); 00395 Operand(0); // qp 00396 Name(); 00397 Result(0); // r1 00398 Operand(1); // r3 00399 Instruction_Print_Group(print_20, 00400 TOP_mov_f_rr, 00401 TOP_UNDEFINED); 00402 00403 /* ===== %5s %s pr.rot=%s ===== */ 00404 ISA_PRINT_TYPE print_21; 00405 print_21 = ISA_Print_Type_Create("print_21", "%5s %s pr.rot=%s"); 00406 Operand(0); // qp 00407 Name(); 00408 Operand(1); // imm 00409 Instruction_Print_Group(print_21, 00410 TOP_mov_t_pr_i, 00411 TOP_UNDEFINED); 00412 00413 /* ===== %5s %s psr.um=%s ===== */ 00414 ISA_PRINT_TYPE print_22; 00415 print_22 = ISA_Print_Type_Create("print_22", "%5s %s psr.um=%s"); 00416 Operand(0); // qp 00417 Name(); 00418 Operand(1); // r2 00419 Instruction_Print_Group(print_22, 00420 TOP_mov_t_psrum, 00421 TOP_UNDEFINED); 00422 00423 /* ===== %5s %s rr[%s]=%s ===== */ 00424 ISA_PRINT_TYPE print_23; 00425 print_23 = ISA_Print_Type_Create("print_23", "%5s %s rr[%s]=%s"); 00426 Operand(0); // qp 00427 Name(); 00428 Operand(1); // r3 00429 Operand(2); // r2 00430 Instruction_Print_Group(print_23, 00431 TOP_mov_t_rr, 00432 TOP_UNDEFINED); 00433 00434 /* ===== %5s %s%s %s=[%s] ===== */ 00435 ISA_PRINT_TYPE print_24; 00436 print_24 = ISA_Print_Type_Create("print_24", "%5s %s%s %s=[%s]"); 00437 Operand(0); // qp 00438 Name(); 00439 Operand(1); // ldhint 00440 Result(0); // r1 00441 Operand(2); // r3 00442 Instruction_Print_Group(print_24, 00443 TOP_ld8_fill, TOP_ldf_fill, 00444 TOP_UNDEFINED); 00445 00446 /* ===== %5s %s%s [%s],%s ===== */ 00447 ISA_PRINT_TYPE print_25; 00448 print_25 = ISA_Print_Type_Create("print_25", "%5s %s%s [%s],%s"); 00449 Operand(0); // qp 00450 Name(); 00451 Operand(1); // lfhint 00452 Operand(2); // r3 00453 Operand(3); // imm 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 /* ===== %5s %s%s [%s]=%s ===== */ 00461 ISA_PRINT_TYPE print_26; 00462 print_26 = ISA_Print_Type_Create("print_26", "%5s %s%s [%s]=%s"); 00463 Operand(0); // qp 00464 Name(); 00465 Operand(1); // sthint 00466 Operand(2); // r3 00467 Operand(3); // r2 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 /* ===== %s%s%s%s %s ===== */ 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); // bwh 00478 Operand(1); // ph 00479 Operand(2); // dh 00480 Operand(3); // imm 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 /* ===== %5s %s %s=%s,%s,1 ===== */ 00487 ISA_PRINT_TYPE print_28; 00488 print_28 = ISA_Print_Type_Create("print_28", "%5s %s %s=%s,%s,1"); 00489 Operand(0); // qp 00490 Name(); 00491 Result(0); // r1 00492 Operand(1); // r2 00493 Operand(2); // r3 00494 Instruction_Print_Group(print_28, 00495 TOP_add_1, TOP_sub_1, 00496 TOP_UNDEFINED); 00497 00498 /* ===== %5s %s %s=dbr[%s] ===== */ 00499 ISA_PRINT_TYPE print_29; 00500 print_29 = ISA_Print_Type_Create("print_29", "%5s %s %s=dbr[%s]"); 00501 Operand(0); // qp 00502 Name(); 00503 Result(0); // r1 00504 Operand(1); // r3 00505 Instruction_Print_Group(print_29, 00506 TOP_mov_f_dbr, 00507 TOP_UNDEFINED); 00508 00509 /* ===== %5s %s %s=ibr[%s] ===== */ 00510 ISA_PRINT_TYPE print_30; 00511 print_30 = ISA_Print_Type_Create("print_30", "%5s %s %s=ibr[%s]"); 00512 Operand(0); // qp 00513 Name(); 00514 Result(0); // r1 00515 Operand(1); // r3 00516 Instruction_Print_Group(print_30, 00517 TOP_mov_f_ibr, 00518 TOP_UNDEFINED); 00519 00520 /* ===== %5s %s %s=msr[%s] ===== */ 00521 ISA_PRINT_TYPE print_31; 00522 print_31 = ISA_Print_Type_Create("print_31", "%5s %s %s=msr[%s]"); 00523 Operand(0); // qp 00524 Name(); 00525 Result(0); // r1 00526 Operand(1); // r3 00527 Instruction_Print_Group(print_31, 00528 TOP_mov_f_msr, 00529 TOP_UNDEFINED); 00530 00531 /* ===== %5s %s %s=pkr[%s] ===== */ 00532 ISA_PRINT_TYPE print_32; 00533 print_32 = ISA_Print_Type_Create("print_32", "%5s %s %s=pkr[%s]"); 00534 Operand(0); // qp 00535 Name(); 00536 Result(0); // r1 00537 Operand(1); // r3 00538 Instruction_Print_Group(print_32, 00539 TOP_mov_f_pkr, 00540 TOP_UNDEFINED); 00541 00542 /* ===== %5s %s %s=pmc[%s] ===== */ 00543 ISA_PRINT_TYPE print_33; 00544 print_33 = ISA_Print_Type_Create("print_33", "%5s %s %s=pmc[%s]"); 00545 Operand(0); // qp 00546 Name(); 00547 Result(0); // r1 00548 Operand(1); // r3 00549 Instruction_Print_Group(print_33, 00550 TOP_mov_f_pmc, 00551 TOP_UNDEFINED); 00552 00553 /* ===== %5s %s %s=pmd[%s] ===== */ 00554 ISA_PRINT_TYPE print_34; 00555 print_34 = ISA_Print_Type_Create("print_34", "%5s %s %s=pmd[%s]"); 00556 Operand(0); // qp 00557 Name(); 00558 Result(0); // r1 00559 Operand(1); // r3 00560 Instruction_Print_Group(print_34, 00561 TOP_mov_f_pmd, 00562 TOP_UNDEFINED); 00563 00564 /* ===== %5s %s dbr[%s]=%s ===== */ 00565 ISA_PRINT_TYPE print_35; 00566 print_35 = ISA_Print_Type_Create("print_35", "%5s %s dbr[%s]=%s"); 00567 Operand(0); // qp 00568 Name(); 00569 Operand(1); // r3 00570 Operand(2); // r2 00571 Instruction_Print_Group(print_35, 00572 TOP_mov_t_dbr, 00573 TOP_UNDEFINED); 00574 00575 /* ===== %5s %s dtr[%s]=%s ===== */ 00576 ISA_PRINT_TYPE print_36; 00577 print_36 = ISA_Print_Type_Create("print_36", "%5s %s dtr[%s]=%s"); 00578 Operand(0); // qp 00579 Name(); 00580 Operand(1); // r3 00581 Operand(2); // r2 00582 Instruction_Print_Group(print_36, 00583 TOP_itr_d, 00584 TOP_UNDEFINED); 00585 00586 /* ===== %5s %s ibr[%s]=%s ===== */ 00587 ISA_PRINT_TYPE print_37; 00588 print_37 = ISA_Print_Type_Create("print_37", "%5s %s ibr[%s]=%s"); 00589 Operand(0); // qp 00590 Name(); 00591 Operand(1); // r3 00592 Operand(2); // r2 00593 Instruction_Print_Group(print_37, 00594 TOP_mov_t_ibr, 00595 TOP_UNDEFINED); 00596 00597 /* ===== %5s %s itr[%s]=%s ===== */ 00598 ISA_PRINT_TYPE print_38; 00599 print_38 = ISA_Print_Type_Create("print_38", "%5s %s itr[%s]=%s"); 00600 Operand(0); // qp 00601 Name(); 00602 Operand(1); // r3 00603 Operand(2); // r2 00604 Instruction_Print_Group(print_38, 00605 TOP_itr_i, 00606 TOP_UNDEFINED); 00607 00608 /* ===== %5s %s msr[%s]=%s ===== */ 00609 ISA_PRINT_TYPE print_39; 00610 print_39 = ISA_Print_Type_Create("print_39", "%5s %s msr[%s]=%s"); 00611 Operand(0); // qp 00612 Name(); 00613 Operand(1); // r3 00614 Operand(2); // r2 00615 Instruction_Print_Group(print_39, 00616 TOP_mov_t_msr, 00617 TOP_UNDEFINED); 00618 00619 /* ===== %5s %s pkr[%s]=%s ===== */ 00620 ISA_PRINT_TYPE print_40; 00621 print_40 = ISA_Print_Type_Create("print_40", "%5s %s pkr[%s]=%s"); 00622 Operand(0); // qp 00623 Name(); 00624 Operand(1); // r3 00625 Operand(2); // r2 00626 Instruction_Print_Group(print_40, 00627 TOP_mov_t_pkr, 00628 TOP_UNDEFINED); 00629 00630 /* ===== %5s %s pmc[%s]=%s ===== */ 00631 ISA_PRINT_TYPE print_41; 00632 print_41 = ISA_Print_Type_Create("print_41", "%5s %s pmc[%s]=%s"); 00633 Operand(0); // qp 00634 Name(); 00635 Operand(1); // r3 00636 Operand(2); // r2 00637 Instruction_Print_Group(print_41, 00638 TOP_mov_t_pmc, 00639 TOP_UNDEFINED); 00640 00641 /* ===== %5s %s pmd[%s]=%s ===== */ 00642 ISA_PRINT_TYPE print_42; 00643 print_42 = ISA_Print_Type_Create("print_42", "%5s %s pmd[%s]=%s"); 00644 Operand(0); // qp 00645 Name(); 00646 Operand(1); // r3 00647 Operand(2); // r2 00648 Instruction_Print_Group(print_42, 00649 TOP_mov_t_pmd, 00650 TOP_UNDEFINED); 00651 00652 /* ===== %5s %s%s %s,%s=%s ===== */ 00653 ISA_PRINT_TYPE print_43; 00654 print_43 = ISA_Print_Type_Create("print_43", "%5s %s%s %s,%s=%s"); 00655 Operand(0); // qp 00656 Name(); 00657 Operand(1); // sf 00658 Result(0); // f1 00659 Result(1); // p2 00660 Operand(2); // f3 00661 Instruction_Print_Group(print_43, 00662 TOP_fprsqrta, TOP_frsqrta, 00663 TOP_UNDEFINED); 00664 00665 /* ===== %5s %s%s %s=%s,%s ===== */ 00666 ISA_PRINT_TYPE print_44; 00667 print_44 = ISA_Print_Type_Create("print_44", "%5s %s%s %s=%s,%s"); 00668 Operand(0); // qp 00669 Name(); 00670 Operand(1); // sf 00671 Result(0); // f1 00672 Operand(2); // f3 00673 Operand(3); // f2 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 /* ===== %s%s%s %s,%s ===== */ 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); // ipwh 00694 Operand(1); // ih 00695 Operand(2); // imm 00696 Operand(3); // imm 00697 Instruction_Print_Group(print_45, 00698 TOP_brp, TOP_brp_ret, TOP_brp_r, 00699 TOP_UNDEFINED); 00700 00701 /* ===== %5s %s %s,%s=%s,%s ===== */ 00702 ISA_PRINT_TYPE print_46; 00703 print_46 = ISA_Print_Type_Create("print_46", "%5s %s %s,%s=%s,%s"); 00704 Operand(0); // qp 00705 Name(); 00706 Result(0); // p1 00707 Result(1); // p2 00708 Operand(1); // r2 00709 Operand(2); // r3 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 /* ===== %5s %s %s,%s=%s,r0 ===== */ 00762 ISA_PRINT_TYPE print_47; 00763 print_47 = ISA_Print_Type_Create("print_47", "%5s %s %s,%s=%s,r0"); 00764 Operand(0); // qp 00765 Name(); 00766 Result(0); // p1 00767 Result(1); // p2 00768 Operand(1); // r3 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 /* ===== %5s %s %s,%s=r0,%s ===== */ 00789 ISA_PRINT_TYPE print_48; 00790 print_48 = ISA_Print_Type_Create("print_48", "%5s %s %s,%s=r0,%s"); 00791 Operand(0); // qp 00792 Name(); 00793 Result(0); // p1 00794 Result(1); // p2 00795 Operand(1); // r3 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 /* ===== %5s %s %s=%s,%s,%s ===== */ 00816 ISA_PRINT_TYPE print_49; 00817 print_49 = ISA_Print_Type_Create("print_49", "%5s %s %s=%s,%s,%s"); 00818 Operand(0); // qp 00819 Name(); 00820 Result(0); // r1 00821 Operand(1); // r2 00822 Operand(2); // imm 00823 Operand(3); // imm 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 /* ===== %5s %s%s%s %s=[%s] ===== */ 00834 ISA_PRINT_TYPE print_50; 00835 print_50 = ISA_Print_Type_Create("print_50", "%5s %s%s%s %s=[%s]"); 00836 Operand(0); // qp 00837 Name(); 00838 Operand(1); // ldtype 00839 Operand(2); // ldhint 00840 Result(0); // r1 00841 Operand(3); // r3 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 /* ===== %5s %s%s%s [%s]=%s ===== */ 00849 ISA_PRINT_TYPE print_51; 00850 print_51 = ISA_Print_Type_Create("print_51", "%5s %s%s%s [%s]=%s"); 00851 Operand(0); // qp 00852 Name(); 00853 Operand(1); // sttype 00854 Operand(2); // sthint 00855 Operand(3); // r3 00856 Operand(4); // r2 00857 Instruction_Print_Group(print_51, 00858 TOP_st1, TOP_st2, TOP_st4, 00859 TOP_st8, 00860 TOP_UNDEFINED); 00861 00862 /* ===== %5s %s%s%s%s %s=%s ===== */ 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); // qp 00866 Name(); 00867 Operand(1); // bwh 00868 Operand(2); // ph 00869 Operand(3); // dh 00870 Result(0); // b1 00871 Operand(4); // imm 00872 Instruction_Print_Group(print_52, 00873 TOP_br_call, TOP_br_r_call, TOP_brl_call, 00874 TOP_UNDEFINED); 00875 00876 /* ===== %5s %s %s=cpuid[%s] ===== */ 00877 ISA_PRINT_TYPE print_53; 00878 print_53 = ISA_Print_Type_Create("print_53", "%5s %s %s=cpuid[%s]"); 00879 Operand(0); // qp 00880 Name(); 00881 Result(0); // r1 00882 Operand(1); // r3 00883 Instruction_Print_Group(print_53, 00884 TOP_mov_f_cpuid, 00885 TOP_UNDEFINED); 00886 00887 /* ===== %5s %s%s %s=[%s],%s ===== */ 00888 ISA_PRINT_TYPE print_54; 00889 print_54 = ISA_Print_Type_Create("print_54", "%5s %s%s %s=[%s],%s"); 00890 Operand(0); // qp 00891 Name(); 00892 Operand(1); // ldhint 00893 Result(0); // r1 00894 Operand(2); // r3 00895 Operand(3); // imm 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 /* ===== %5s %s%s [%s]=%s,%s ===== */ 00903 ISA_PRINT_TYPE print_55; 00904 print_55 = ISA_Print_Type_Create("print_55", "%5s %s%s [%s]=%s,%s"); 00905 Operand(0); // qp 00906 Name(); 00907 Operand(1); // sthint 00908 Operand(2); // r3 00909 Operand(3); // r2 00910 Operand(4); // imm 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 /* ===== %5s %s%s%s %s=%s,%s ===== */ 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); // qp 00920 Name(); 00921 Operand(1); // mwh 00922 Operand(2); // ih 00923 Result(0); // b1 00924 Operand(3); // r2 00925 Operand(4); // imm 00926 Instruction_Print_Group(print_56, 00927 TOP_mov_t_br_ret, TOP_mov_t_br_i, 00928 TOP_UNDEFINED); 00929 00930 /* ===== %5s %s%s %s,%s=%s,%s ===== */ 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); // qp 00934 Name(); 00935 Operand(1); // sf 00936 Result(0); // p1 00937 Result(1); // p2 00938 Operand(2); // f2 00939 Operand(3); // f3 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 /* ===== %5s %s%s %s=%s,%s,%s ===== */ 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); // qp 00956 Name(); 00957 Operand(1); // sf 00958 Result(0); // f1 00959 Operand(2); // f3 00960 Operand(3); // f4 00961 Operand(4); // f2 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 /* ===== %5s %s %s=%s,%s,%s,%s ===== */ 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); // qp 00973 Name(); 00974 Result(0); // r1 00975 Operand(1); // r2 00976 Operand(2); // r3 00977 Operand(3); // imm 00978 Operand(4); // imm 00979 Instruction_Print_Group(print_59, 00980 TOP_dep, TOP_dep_i, 00981 TOP_UNDEFINED); 00982 00983 /* ===== %5s %s%s%s %s,%s=[%s] ===== */ 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); // qp 00987 Name(); 00988 Operand(1); // fldtype 00989 Operand(2); // ldhint 00990 Result(0); // f1 00991 Result(1); // f2 00992 Operand(3); // r3 00993 Instruction_Print_Group(print_60, 00994 TOP_ldfp8, TOP_ldfpd, TOP_ldfps, 00995 TOP_UNDEFINED); 00996 00997 /* ===== %5s %s%s%s %s=[%s],%s ===== */ 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); // qp 01001 Name(); 01002 Operand(1); // sem 01003 Operand(2); // ldhint 01004 Result(0); // r1 01005 Operand(3); // r3 01006 Operand(4); // imm 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 /* ===== %5s %s%s%s [%s]=%s,%s ===== */ 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); // qp 01020 Name(); 01021 Operand(1); // sttype 01022 Operand(2); // sthint 01023 Operand(3); // r3 01024 Operand(4); // r2 01025 Operand(5); // imm 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 /* ===== %5s %s%s%s %s,%s=[%s],8 ===== */ 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); // qp 01035 Name(); 01036 Operand(1); // fldtype 01037 Operand(2); // ldhint 01038 Result(0); // f1 01039 Result(1); // f2 01040 Operand(3); // r3 01041 Instruction_Print_Group(print_63, 01042 TOP_ldfps_i, 01043 TOP_UNDEFINED); 01044 01045 /* ===== %5s %s%s%s %s,%s=[%s],16 ===== */ 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); // qp 01049 Name(); 01050 Operand(1); // fldtype 01051 Operand(2); // ldhint 01052 Result(0); // f1 01053 Result(1); // f2 01054 Operand(3); // r3 01055 Instruction_Print_Group(print_64, 01056 TOP_ldfp8_i, TOP_ldfpd_i, 01057 TOP_UNDEFINED); 01058 01059 /* ===== %s %s=ar.pfs,%s,%s,%s ===== */ 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); // r1 01064 Operand(0); // imm 01065 Operand(1); // imm 01066 Operand(2); // imm 01067 Instruction_Print_Group(print_65, 01068 TOP_alloc_3, 01069 TOP_UNDEFINED); 01070 01071 /* ===== %5s %s%s%s %s=[%s],%s,ar.ccv ===== */ 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); // qp 01075 Name(); 01076 Operand(1); // sem 01077 Operand(2); // ldhint 01078 Result(0); // r1 01079 Operand(3); // r3 01080 Operand(4); // r2 01081 Instruction_Print_Group(print_66, 01082 TOP_cmpxchg1, TOP_cmpxchg2, TOP_cmpxchg4, 01083 TOP_cmpxchg8, 01084 TOP_UNDEFINED); 01085 01086 /* ===== %s %s=ar.pfs,%s,%s,%s,%s ===== */ 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); // r1 01091 Operand(0); // imm 01092 Operand(1); // imm 01093 Operand(2); // imm 01094 Operand(3); // imm 01095 Instruction_Print_Group(print_67, 01096 TOP_alloc, 01097 TOP_UNDEFINED); 01098 01099 ISA_Print_End(); 01100 return 0; 01101 }