Open64 (mfef90, whirl2f, and IR tools)  TAG: version-openad; SVN changeset: 916
opcode_gen.h
Go to the documentation of this file.
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 /* Inlines for looking up attribute values */
00037 
00038 /*REFERENCED*/
00039 inline mUINT32
00040 OPERATOR_is_scf (OPERATOR op)
00041 {
00042   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00043   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_scf;
00044 }
00045 
00046 /*REFERENCED*/
00047 inline mUINT32
00048 OPERATOR_is_stmt (OPERATOR op)
00049 {
00050   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00051   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_stmt;
00052 }
00053 
00054 /*REFERENCED*/
00055 inline mUINT32
00056 OPERATOR_is_expression(OPERATOR op)
00057 {
00058   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00059   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_expression;
00060 }
00061 
00062 /*REFERENCED*/
00063 inline mUINT32
00064 OPERATOR_is_leaf (OPERATOR op)
00065 {
00066   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00067   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_leaf;
00068 }
00069 
00070 /*REFERENCED*/
00071 inline mUINT32
00072 OPERATOR_is_store (OPERATOR op)
00073 {
00074   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00075   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_store;
00076 }
00077 
00078 /*REFERENCED*/
00079 inline mUINT32
00080 OPERATOR_is_load (OPERATOR op)
00081 {
00082   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00083   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_load;
00084 }
00085 
00086 /*REFERENCED*/
00087 inline mUINT32
00088 OPERATOR_is_call(OPERATOR op)
00089 {
00090   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00091   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_call;
00092 }
00093 
00094 /*REFERENCED*/
00095 inline mUINT32
00096 OPERATOR_is_compare (OPERATOR op)
00097 {
00098   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00099   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_compare;
00100 }
00101 
00102 /*REFERENCED*/
00103 inline mUINT32
00104 OPERATOR_is_non_scf (OPERATOR op)
00105 {
00106   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00107   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_non_scf;
00108 }
00109 
00110 /*REFERENCED*/
00111 inline mUINT32
00112 OPERATOR_is_boolean (OPERATOR op)
00113 {
00114   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00115   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_boolean;
00116 }
00117 
00118 /*REFERENCED*/
00119 inline mUINT32
00120 OPERATOR_is_endsbb (OPERATOR op)
00121 {
00122   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00123   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_endsbb;
00124 }
00125 
00126 /*REFERENCED*/
00127 inline mUINT32
00128 OPERATOR_is_comp_unit_if (OPERATOR op)
00129 {
00130   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00131   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_comp_unit_if;
00132 }
00133 
00134 /*REFERENCED*/
00135 inline mUINT32
00136 OPERATOR_is_not_executable (OPERATOR op)
00137 {
00138   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00139   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_not_executable;
00140 }
00141 
00142 /*REFERENCED*/
00143 inline mUINT32
00144 OPERATOR_is_prefetch (OPERATOR op)
00145 {
00146   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00147   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_prefetch;
00148 }
00149 
00150 /*REFERENCED*/
00151 inline mUINT32
00152 OPERATOR_has_next_prev (OPERATOR op)
00153 {
00154   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00155   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_next_prev;
00156 }
00157 
00158 /*REFERENCED*/
00159 inline mUINT32
00160 OPERATOR_has_sym (OPERATOR op)
00161 {
00162   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00163   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_sym;
00164 }
00165 
00166 /*REFERENCED*/
00167 inline mUINT32
00168 OPERATOR_has_label (OPERATOR op)
00169 {
00170   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00171   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_label;
00172 }
00173 
00174 /*REFERENCED*/
00175 inline mUINT32
00176 OPERATOR_has_num_entries (OPERATOR op)
00177 {
00178   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00179   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_num_entries;
00180 }
00181 
00182 /*REFERENCED*/
00183 inline mUINT32
00184 OPERATOR_has_offset (OPERATOR op)
00185 {
00186   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00187   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_offset;
00188 }
00189 
00190 /*REFERENCED*/
00191 inline mUINT32
00192 OPERATOR_has_2offsets (OPERATOR op)
00193 {
00194   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00195   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_2offsets;
00196 }
00197 
00198 /*REFERENCED*/
00199 inline mUINT32
00200 OPERATOR_has_bits (OPERATOR op)
00201 {
00202   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00203   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_bits;
00204 }
00205 
00206 /*REFERENCED*/
00207 inline mUINT32
00208 OPERATOR_has_ndim (OPERATOR op)
00209 {
00210   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00211   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_ndim;
00212 }
00213 
00214 /*REFERENCED*/
00215 inline mUINT32
00216 OPERATOR_has_esize (OPERATOR op)
00217 {
00218   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00219   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_esize;
00220 }
00221 
00222 /*REFERENCED*/
00223 inline mUINT32
00224 OPERATOR_has_value (OPERATOR op)
00225 {
00226   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00227   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_value;
00228 }
00229 
00230 /*REFERENCED*/
00231 inline mUINT32
00232 OPERATOR_has_flags (OPERATOR op)
00233 {
00234   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00235   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_flags;
00236 }
00237 
00238 /*REFERENCED*/
00239 inline mUINT32
00240 OPERATOR_has_inumber (OPERATOR op)
00241 {
00242   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00243   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_inumber;
00244 }
00245 
00246 /*REFERENCED*/
00247 inline mUINT32
00248 OPERATOR_has_1ty (OPERATOR op)
00249 {
00250   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00251   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_1ty;
00252 }
00253 
00254 /*REFERENCED*/
00255 inline mUINT32
00256 OPERATOR_has_2ty (OPERATOR op)
00257 {
00258   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00259   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_2ty;
00260 }
00261 
00262 /*REFERENCED*/
00263 inline mUINT32
00264 OPERATOR_has_ereg_supp (OPERATOR op)
00265 {
00266   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00267   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_ereg_supp;
00268 }
00269 
00270 /*REFERENCED*/
00271 inline mUINT32
00272 OPERATOR_has_barrier (OPERATOR op)
00273 {
00274   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00275   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_barrier;
00276 }
00277 
00278 /*REFERENCED*/
00279 inline mUINT32
00280 OPERATOR_has_last_label (OPERATOR op)
00281 {
00282   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00283   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_last_label;
00284 }
00285 
00286 /*REFERENCED*/
00287 inline mUINT32
00288 OPERATOR_has_field_id (OPERATOR op)
00289 {
00290   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00291   return (mUINT32) OPERATOR_info [op]._flags & OPERATOR_PROPERTY_field_id;
00292 }
00293 
00294 /*REFERENCED*/
00295 inline mINT8
00296 OPERATOR_nkids (OPERATOR op)
00297 {
00298   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00299   return OPERATOR_info [op].nkids;
00300 }
00301 
00302 /*REFERENCED*/
00303 inline OPERATOR_MAPCAT
00304 OPERATOR_mapcat (OPERATOR op)
00305 {
00306   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00307   return OPERATOR_info[op].mapcat;
00308 }
00309 
00310 /*REFERENCED*/
00311 inline BOOL
00312 OPERATOR_is_black_box (OPERATOR op)
00313 {
00314   Is_True(op >= OPERATOR_FIRST && op <= OPERATOR_LAST, ("Bad operator %d", op));
00315   return (op == OPR_IO);
00316 }
00317 
00318 /* Compatibility functions */
00319 #if 0
00320 extern OPCODE   OPCODE_is_valid_opcode_table[];
00321 #define OPCODE_MAKE_VALID(x) (OPCODE_is_valid_opcode_table[(x)])
00322 #endif
00323 
00324 #if 1
00325 #define Is_Valid_Opcode Is_Valid_Opcode_FUNC
00326 #else
00327 #define Is_Valid_Opcode(opcode) (OPCODE_is_valid_opcode_table[(opcode)]!=OPC_UNKNOWN)
00328 #endif
00329 
00330 #ifdef __cplusplus
00331 extern "C" BOOL Is_Valid_Opcode_FUNC (OPCODE op);
00332 BOOL Is_Valid_Opcode_Parts(OPERATOR opr, TYPE_ID rtype, TYPE_ID desc);
00333 #else
00334 extern BOOL Is_Valid_Opcode_FUNC (OPCODE op);
00335 #endif /* __cplusplus */
00336 
00337 /*REFERENCED*/
00338 inline OPERATOR
00339 OPCODE_operator (OPCODE op)
00340 {
00341   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00342   return (OPERATOR) (op & 0xFF);
00343 }
00344 
00345 /*REFERENCED*/
00346 inline TYPE_ID
00347 OPCODE_rtype (OPCODE op)
00348 {
00349   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00350   return (TYPE_ID) ((op >> 8) & 0x1F);
00351 }
00352 
00353 /*REFERENCED*/
00354 inline TYPE_ID
00355 OPCODE_desc (OPCODE op)
00356 {
00357   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00358   return (TYPE_ID) ((op >> 13) & 0x1F);
00359 }
00360 
00361 extern char* OPCODE_name (OPCODE op);
00362 
00363 /* Inlines for looking up attribute values */
00364 
00365 /*REFERENCED*/
00366 inline mUINT32
00367 OPCODE_is_scf (OPCODE op)
00368 {
00369   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00370   return (OPERATOR_is_scf (OPCODE_operator (op)));
00371 }
00372 
00373 /*REFERENCED*/
00374 inline mUINT32
00375 OPCODE_is_stmt (OPCODE op)
00376 {
00377   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00378   return (OPERATOR_is_stmt (OPCODE_operator (op)));
00379 }
00380 
00381 /*REFERENCED*/
00382 inline mUINT32
00383 OPCODE_is_expression (OPCODE op)
00384 {
00385   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00386   return (OPERATOR_is_expression (OPCODE_operator (op)));
00387 }
00388 
00389 /*REFERENCED*/
00390 inline mUINT32
00391 OPCODE_is_leaf (OPCODE op)
00392 {
00393   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00394   return (OPERATOR_is_leaf (OPCODE_operator (op)));
00395 }
00396 
00397 /*REFERENCED*/
00398 inline mUINT32
00399 OPCODE_is_store (OPCODE op)
00400 {
00401   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00402   return (OPERATOR_is_store (OPCODE_operator (op)));
00403 }
00404 
00405 /*REFERENCED*/
00406 inline mUINT32
00407 OPCODE_is_load (OPCODE op)
00408 {
00409   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00410   return (OPERATOR_is_load (OPCODE_operator (op)));
00411 }
00412 
00413 /*REFERENCED*/
00414 inline mUINT32
00415 OPCODE_is_call (OPCODE op)
00416 {
00417   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00418   return (OPERATOR_is_call (OPCODE_operator (op)));
00419 }
00420 
00421 /*REFERENCED*/
00422 inline mUINT32
00423 OPCODE_is_compare (OPCODE op)
00424 {
00425   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00426   return (OPERATOR_is_compare (OPCODE_operator (op)));
00427 }
00428 
00429 /*REFERENCED*/
00430 inline mUINT32
00431 OPCODE_is_non_scf (OPCODE op)
00432 {
00433   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00434   return (OPERATOR_is_non_scf (OPCODE_operator (op)));
00435 }
00436 
00437 /*REFERENCED*/
00438 inline mUINT32
00439 OPCODE_is_boolean (OPCODE op)
00440 {
00441   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00442   return (OPERATOR_is_boolean (OPCODE_operator (op)));
00443 }
00444 
00445 /*REFERENCED*/
00446 inline mUINT32
00447 OPCODE_is_endsbb (OPCODE op)
00448 {
00449   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00450   return (OPERATOR_is_endsbb (OPCODE_operator (op)));
00451 }
00452 
00453 /*REFERENCED*/
00454 inline mUINT32
00455 OPCODE_is_comp_unit_if (OPCODE op)
00456 {
00457   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00458   return (OPERATOR_is_comp_unit_if (OPCODE_operator (op)));
00459 }
00460 
00461 /*REFERENCED*/
00462 inline mUINT32
00463 OPCODE_is_not_executable (OPCODE op)
00464 {
00465   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00466   return (OPERATOR_is_not_executable (OPCODE_operator (op)));
00467 }
00468 
00469 /*REFERENCED*/
00470 inline mUINT32
00471 OPCODE_is_prefetch (OPCODE op)
00472 {
00473   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00474   return (OPERATOR_is_prefetch (OPCODE_operator (op)));
00475 }
00476 
00477 /*REFERENCED*/
00478 inline mUINT32
00479 OPCODE_has_next_prev (OPCODE op)
00480 {
00481   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00482   return (OPERATOR_has_next_prev (OPCODE_operator (op)));
00483 }
00484 
00485 /*REFERENCED*/
00486 inline mUINT32
00487 OPCODE_has_sym (OPCODE op)
00488 {
00489   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00490   return (OPERATOR_has_sym (OPCODE_operator (op)));
00491 }
00492 
00493 /*REFERENCED*/
00494 inline mUINT32
00495 OPCODE_has_label (OPCODE op)
00496 {
00497   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00498   return (OPERATOR_has_label (OPCODE_operator (op)));
00499 }
00500 
00501 /*REFERENCED*/
00502 inline mUINT32
00503 OPCODE_has_num_entries (OPCODE op)
00504 {
00505   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00506   return (OPERATOR_has_num_entries (OPCODE_operator (op)));
00507 }
00508 
00509 /*REFERENCED*/
00510 inline mUINT32
00511 OPCODE_has_offset (OPCODE op)
00512 {
00513   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00514   return (OPERATOR_has_offset (OPCODE_operator (op)));
00515 }
00516 
00517 /*REFERENCED*/
00518 inline mUINT32
00519 OPCODE_has_2offsets (OPCODE op)
00520 {
00521   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00522   return (OPERATOR_has_2offsets (OPCODE_operator (op)));
00523 }
00524 
00525 /*REFERENCED*/
00526 inline mUINT32
00527 OPCODE_has_bits (OPCODE op)
00528 {
00529   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00530   return (OPERATOR_has_bits (OPCODE_operator (op)));
00531 }
00532 
00533 /*REFERENCED*/
00534 inline mUINT32
00535 OPCODE_has_ndim (OPCODE op)
00536 {
00537   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00538   return (OPERATOR_has_ndim (OPCODE_operator (op)));
00539 }
00540 
00541 /*REFERENCED*/
00542 inline mUINT32
00543 OPCODE_has_esize (OPCODE op)
00544 {
00545   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00546   return (OPERATOR_has_esize (OPCODE_operator (op)));
00547 }
00548 
00549 /*REFERENCED*/
00550 inline mUINT32
00551 OPCODE_has_value (OPCODE op)
00552 {
00553   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00554   return (OPERATOR_has_value (OPCODE_operator (op)));
00555 }
00556 
00557 /*REFERENCED*/
00558 inline mUINT32
00559 OPCODE_has_flags (OPCODE op)
00560 {
00561   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00562   return (OPERATOR_has_flags (OPCODE_operator (op)));
00563 }
00564 
00565 /*REFERENCED*/
00566 inline mUINT32
00567 OPCODE_has_inumber (OPCODE op)
00568 {
00569   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00570   return (OPERATOR_has_inumber (OPCODE_operator (op)));
00571 }
00572 
00573 /*REFERENCED*/
00574 inline mUINT32
00575 OPCODE_has_1ty (OPCODE op)
00576 {
00577   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00578   return (OPERATOR_has_1ty (OPCODE_operator (op)));
00579 }
00580 
00581 /*REFERENCED*/
00582 inline mUINT32
00583 OPCODE_has_2ty (OPCODE op)
00584 {
00585   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00586   return (OPERATOR_has_2ty (OPCODE_operator (op)));
00587 }
00588 
00589 /*REFERENCED*/
00590 inline mUINT32
00591 OPCODE_has_ereg_supp (OPCODE op)
00592 {
00593   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00594   return (OPERATOR_has_ereg_supp (OPCODE_operator (op)));
00595 }
00596 
00597 /*REFERENCED*/
00598 inline mUINT32
00599 OPCODE_has_barrier (OPCODE op)
00600 {
00601   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00602   return (OPERATOR_has_barrier (OPCODE_operator (op)));
00603 }
00604 
00605 /*REFERENCED*/
00606 inline mUINT32
00607 OPCODE_has_last_label (OPCODE op)
00608 {
00609   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00610   return (OPERATOR_has_last_label (OPCODE_operator (op)));
00611 }
00612 
00613 /*REFERENCED*/
00614 inline mUINT32
00615 OPCODE_has_field_id (OPCODE op)
00616 {
00617   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00618   return (OPERATOR_has_field_id (OPCODE_operator (op)));
00619 }
00620 
00621 /*REFERENCED*/
00622 inline mINT8
00623 OPCODE_nkids(OPCODE op)
00624 {
00625   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00626   return (OPERATOR_nkids (OPCODE_operator (op)));
00627 }
00628 
00629 /*REFERENCED*/
00630 inline OPERATOR_MAPCAT
00631 OPCODE_mapcat (OPCODE op)
00632 {
00633   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00634   return (OPERATOR_mapcat (OPCODE_operator (op)));
00635 }
00636 
00637 /*REFERENCED*/
00638 inline BOOL
00639 OPCODE_is_black_box (OPCODE op)
00640 {
00641   Is_True(Is_Valid_Opcode (op), ("Bad opcode %d", op));
00642   return (OPERATOR_is_black_box (OPCODE_operator (op)));
00643 }
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines