00001 #ifndef LEGOGLOBALS_H
00002 #define LEGOGLOBALS_H
00003
00004
00005
00006
00007
00008
00009
00010
00011 #define LARGE_INTVAL 32767
00012 #define MAX_INT 32767
00013
00014 enum oprdTypes {
00015 OT_VACANT=0,
00016 OT_LITERAL_VO,
00017 OT_LITERAL_BO,
00018 OT_LITERAL_CH,
00019 OT_LITERAL_UCH,
00020 OT_LITERAL_SH,
00021 OT_LITERAL_USH,
00022 OT_LITERAL_I,
00023 OT_LITERAL_UI,
00024 OT_LITERAL_LNG,
00025 OT_LITERAL_ULNG,
00026 OT_LITERAL_LLNG,
00027 OT_LITERAL_ULLNG,
00028 OT_LITERAL_LLLNG,
00029 OT_LITERAL_ULLLNG,
00030 OT_LITERAL_PTR,
00031 OT_LITERAL_F,
00032 OT_LITERAL_D,
00033 OT_LITERAL_C,
00034 OT_LITERAL_L,
00035 OT_LITERAL_S,
00036 OT_LITERAL_CB,
00037 OT_LITERAL_P,
00038 OT_REG,
00039 OT_MACRO,
00040 OT_UNDEFINED
00041 };
00042
00043 enum regTypes {
00044 RT_R = 0,
00045 RT_VR,
00046 RT_MVR,
00047 RT_FR,
00048 RT_BR
00049 };
00050
00051 enum dataTypes {
00052 DT_VO=0,
00053 DT_BO,
00054 DT_CH,
00055 DT_UCH,
00056 DT_SH,
00057 DT_USH,
00058 DT_I,
00059 DT_UI,
00060 DT_LNG,
00061 DT_ULNG,
00062 DT_LLNG,
00063 DT_ULLNG,
00064 DT_LLLNG,
00065 DT_ULLLNG,
00066 DT_PTR,
00067 DT_F,
00068 DT_D,
00069 DT_P,
00070 DT_B
00071 };
00072
00073 enum fileTypes {
00074 FT_GPR=0,
00075 FT_FPR,
00076 FT_PR,
00077 FT_BTR,
00078 FT_CR
00079 };
00080
00081 enum regStyles {
00082 RS_STATIC='s',
00083 RS_ROTATING='r'
00084 };
00085
00086 enum addrStyles {
00087 AS_UNDEF=0,
00088 AS_G_ABS,
00089 AS_G_GP,
00090 AS_L_ABS,
00091 AS_L_GP
00092 };
00093
00094 enum attrTypes {
00095 ATTR_UNDEF,
00096 ATTR_LC=1,
00097 ATTR_MS,
00098 ATTR_BBID,
00099 ATTR_FREQ,
00100 ATTR_LIVE,
00101
00102 ATTR_TBLNAME
00103 };
00104
00105 enum edgeTypes {
00106 ET_UNDEF = 0,
00107 ET_CNTL = 1,
00108 ET_REGFLOW,
00109 ET_REGANTI,
00110 ET_REGOUT,
00111 ET_MEM,
00112 ET_LINKDEST,
00113 ET_LINKSRC,
00114 };
00115
00116 enum portTypes {
00117 PT_UNDEF = 0,
00118 PT_FIRST = 1,
00119 PT_CTL,
00120 PT_MEM,
00121 PT_SRC,
00122 PT_DEST
00123 };
00124
00125 enum usageTypes {
00126 USAGE_UNDEF = 0,
00127 USAGE_SEM = 1,
00128 USAGE_ANN
00129 };
00130
00131 enum statusTypes {
00132 STATUS_UNDEF = -1,
00133 STATUS_CERTAIN = 0,
00134 STATUS_MAYBE
00135 };
00136
00137
00138 enum opCodeClass {
00139 OC_UNDEF = 0,
00140 OC_INT,
00141 OC_PINT,
00142 OC_FP,
00143 OC_PFP,
00144 OC_CMP,
00145 OC_FCMP,
00146 OC_BR,
00147 OC_LDST,
00148 OC_FPLDST,
00149 OC_MISC,
00150 OC_VSS,
00151 OC_DIR
00152 };
00153
00154
00155
00156 enum oprdSizeQual {
00157 OS_NA = -1,
00158 OS_B = 0,
00159 OS_H,
00160 OS_W,
00161 OS_X,
00162 };
00163
00164 enum cmpTypeQual {
00165 CT_NA = -1,
00166 CT_NONE = 0,
00167 CT_UNC,
00168 CT_OR,
00169 CT_AND,
00170 CT_ORANDCM,
00171 CT_ORCM,
00172 CT_ANDCM,
00173 CT_ANDORCM
00174 };
00175
00176 enum cmpRelationQual {
00177 CR_NA = -1,
00178 CR_EQ = 0,
00179 CR_NE,
00180 CR_LT,
00181 CR_LE,
00182 CR_GT,
00183 CR_GE,
00184 CR_LTU,
00185 CR_LEU,
00186 CR_GTU,
00187 CR_GEU
00188 };
00189
00190 enum pcmpRelationQual {
00191 PCR_NA = -1,
00192 PCR_EQ = 0,
00193 PCR_GT
00194 };
00195
00196 enum testBitRelationQual {
00197 TBR_NA = -1,
00198 TBR_NZ = 0,
00199 TBR_Z
00200 };
00201
00202 enum fpPrecCtrlQual {
00203 FPP_NA = -1,
00204 FPP_NONE = 0,
00205 FPP_S,
00206 FPP_D
00207 };
00208
00209 enum fpStatusFieldQual {
00210 FPSF_NA = -1,
00211 FPSF_NONE = 0,
00212 FPSF_F0,
00213 FPSF_F1,
00214 FPSF_F2,
00215 FPSF_F3
00216 };
00217
00218 enum fpClassRelationQual {
00219 FPCR_NA = -1,
00220 FPCR_M = 0,
00221 FPCR_NM
00222 };
00223
00224 enum fpCmpTypeQual {
00225 FCT_NA = -1,
00226 FCT_NONE = 0,
00227 FCT_UNC
00228 };
00229
00230 enum fpCmpRelationQual {
00231 FCR_NA = -1,
00232 FCR_EQ = 0,
00233 FCR_LT,
00234 FCR_LE,
00235 FCR_GT,
00236 FCR_GE,
00237 FCR_UNORD,
00238 FCR_NEQ,
00239 FCR_NLT,
00240 FCR_NLE,
00241 FCR_NGT,
00242 FCR_NGE,
00243 FCR_ORD
00244 };
00245
00246 enum semaphoreTypeQual {
00247 FAS_NA = -1,
00248 FAS_ACQ = 0,
00249 FAS_REL
00250 };
00251
00252 enum loadStoreTypeQual {
00253 LST_NA = -1,
00254 LST_NONE = 0,
00255
00256
00257 LST_S,
00258 LST_A,
00259 LST_SA,
00260 LST_CNC,
00261 LST_CC,
00262 LST_CCACQ,
00263 LST_ACQ,
00264 LST_BIAS,
00265 LST_FILL,
00266
00267
00268 LST_NONEEXC,
00269 LST_FAULT,
00270 LST_FAULTEXC,
00271
00272
00273 LST_REL,
00274 LST_SPILL
00275 };
00276
00277 enum loadStoreHintQual {
00278 LSH_NA = -1,
00279 LSH_NONE = 0,
00280 LSH_NT1,
00281 LSH_NT2,
00282 LSH_NTA
00283 };
00284
00285 enum fpLoadStoreSizeQual {
00286 FLSS_NA = -1,
00287 FLSS_NONE = 0,
00288 FLSS_S,
00289 FLSS_D,
00290 FLSS_E,
00291 FLSS_I
00292 };
00293
00294 enum branchTypeQual {
00295 BT_NA = -1,
00296 BT_NONE = 0,
00297 BT_COND,
00298 BT_CALL,
00299 BT_RET,
00300 BT_IA32,
00301 BT_CLOOP,
00302 BT_CTOP,
00303 BT_CEXIT,
00304 BT_WTOP,
00305 BT_WEXIT
00306 };
00307
00308 enum branchPredHintQual {
00309 BH_NA = -1,
00310 BH_NONE = 0,
00311 BH_SNT,
00312 BH_ST,
00313 BH_DNT,
00314 BH_DT
00315 };
00316
00317 enum branchPrefetchHintQual {
00318 BPH = -1,
00319 BPH_NONE = 0,
00320 BPH_FEW,
00321 BPH_MANY
00322 };
00323
00324 enum branchDeallocHintQual {
00325 BDH_NA = -1,
00326 BDH_NONE = 0,
00327 BDH_CLR
00328 };
00329
00330 enum alatClearQual {
00331 AC_NA = -1,
00332 AC_CLR = 0,
00333 AC_NC
00334 };
00335
00336 enum opFormLeftRightQual {
00337 OFLR_NA = -1,
00338 OFLR_NONE = 0,
00339 OFLR_L,
00340 OFLR_R,
00341 OFLR_LR
00342 };
00343
00344 enum opFormMergeZeroQual {
00345 OFMZ_NA = -1,
00346 OFMZ_ZERO = 0,
00347 OFMZ_MERGE
00348 };
00349
00350 enum opFormSignQual {
00351 OFS_NA = -1,
00352 OFS_SIGNED = 0,
00353 OFS_UNSIGNED
00354 };
00355
00356 enum opFormUnitQual {
00357 OFMU_NA = -1,
00358 OFMU_NONE = 0,
00359 OFMU_I,
00360 OFMU_B,
00361 OFMU_M,
00362 OFMU_F,
00363 OFMU_X,
00364 OFMU_RET
00365 };
00366
00367 enum opFormHighLowQual {
00368 OFHL_NA = -1,
00369 OFHL_LOW = 0,
00370 OFHL_HIGH
00371 };
00372
00373 enum opFormFMergeQual {
00374 OFFM_NA = -1,
00375 OFFM_SIGN = 0,
00376 OFFM_NEGSIGN,
00377 OFFM_EXP,
00378 };
00379
00380 enum opFormGetSetFormatQual {
00381 OFFC_NA = -1,
00382 OFFC_S = 0,
00383 OFFC_D,
00384 OFFC_EXP,
00385 OFFC_SIG
00386 };
00387
00388 enum opFormTruncQual {
00389 OFT_NA = -1,
00390 OFT_NOTRUNC = 0,
00391 OFT_TRUNC
00392 };
00393
00394 enum opFormCvtTypeQual {
00395 OFCV_NA = -1,
00396 OFCV_FX = 0,
00397 OFCV_FXU,
00398 OFCV_XF,
00399 OFCV_XUF
00400 };
00401
00402 enum opFormFenceQual {
00403 OFMF_NA = -1,
00404 OFMF_ORD = 0,
00405 OFMF_ACC
00406 };
00407
00408 enum opFormSaturationQual {
00409 OFSF_NA = -1,
00410 OFSF_MOD = 0,
00411 OFSF_SSS,
00412 OFSF_USS,
00413 OFSF_UUS,
00414 OFSF_UUU
00415 };
00416
00417 enum opFormRoundQual {
00418 OFR_NA = -1,
00419 OFR_NORM = 0,
00420 OFR_RAZ
00421 };
00422
00423 enum opFormRegTypeQual {
00424 OFRT_NA = -1,
00425 OFRT_GR = 0,
00426 OFRT_FR
00427 };
00428
00429 enum opFormSpecChkQual {
00430 OFSC_NA = -1,
00431 OFSC_CONTROL = 0,
00432 OFSC_DATA
00433 };
00434
00435 enum opFormClearRRBQual {
00436 OFCR_NA = -1,
00437 OFCR_ALL = 0,
00438 OFCR_PRED
00439 };
00440
00441 #endif