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
00032
00033
00034
00035
00036 #if !defined(_XED_NONTERMINAL_ENUM_H_)
00037 # define _XED_NONTERMINAL_ENUM_H_
00038 #include "xed-common-hdrs.h"
00039 typedef enum {
00040 XED_NONTERMINAL_INVALID,
00041 XED_NONTERMINAL_AR10,
00042 XED_NONTERMINAL_AR11,
00043 XED_NONTERMINAL_AR12,
00044 XED_NONTERMINAL_AR13,
00045 XED_NONTERMINAL_AR14,
00046 XED_NONTERMINAL_AR15,
00047 XED_NONTERMINAL_AR8,
00048 XED_NONTERMINAL_AR9,
00049 XED_NONTERMINAL_ARAX,
00050 XED_NONTERMINAL_ARBP,
00051 XED_NONTERMINAL_ARBX,
00052 XED_NONTERMINAL_ARCX,
00053 XED_NONTERMINAL_ARDI,
00054 XED_NONTERMINAL_ARDX,
00055 XED_NONTERMINAL_ARSI,
00056 XED_NONTERMINAL_ARSP,
00057 XED_NONTERMINAL_ASZ_NONTERM,
00058 XED_NONTERMINAL_AVX_INSTRUCTIONS,
00059 XED_NONTERMINAL_AVX_SPLITTER,
00060 XED_NONTERMINAL_BRANCH_HINT,
00061 XED_NONTERMINAL_BRDISP32,
00062 XED_NONTERMINAL_BRDISP8,
00063 XED_NONTERMINAL_BRDISPZ,
00064 XED_NONTERMINAL_B_INVERT,
00065 XED_NONTERMINAL_CR_B,
00066 XED_NONTERMINAL_CR_R,
00067 XED_NONTERMINAL_CR_WIDTH,
00068 XED_NONTERMINAL_DF64,
00069 XED_NONTERMINAL_DR_B,
00070 XED_NONTERMINAL_DR_R,
00071 XED_NONTERMINAL_ESCVL_NT,
00072 XED_NONTERMINAL_FINAL_DSEG,
00073 XED_NONTERMINAL_FINAL_DSEG1,
00074 XED_NONTERMINAL_FINAL_DSEG1_MODE64,
00075 XED_NONTERMINAL_FINAL_DSEG1_NOT64,
00076 XED_NONTERMINAL_FINAL_DSEG_MODE64,
00077 XED_NONTERMINAL_FINAL_DSEG_NOT64,
00078 XED_NONTERMINAL_FINAL_ESEG,
00079 XED_NONTERMINAL_FINAL_ESEG1,
00080 XED_NONTERMINAL_FINAL_SSEG,
00081 XED_NONTERMINAL_FINAL_SSEG0,
00082 XED_NONTERMINAL_FINAL_SSEG1,
00083 XED_NONTERMINAL_FINAL_SSEG_MODE64,
00084 XED_NONTERMINAL_FINAL_SSEG_NOT64,
00085 XED_NONTERMINAL_FORCE64,
00086 XED_NONTERMINAL_GPR16_B,
00087 XED_NONTERMINAL_GPR16_R,
00088 XED_NONTERMINAL_GPR32_B,
00089 XED_NONTERMINAL_GPR32_R,
00090 XED_NONTERMINAL_GPR32_X,
00091 XED_NONTERMINAL_GPR64_B,
00092 XED_NONTERMINAL_GPR64_R,
00093 XED_NONTERMINAL_GPR64_X,
00094 XED_NONTERMINAL_GPR8_B,
00095 XED_NONTERMINAL_GPR8_R,
00096 XED_NONTERMINAL_GPRV_B,
00097 XED_NONTERMINAL_GPRV_R,
00098 XED_NONTERMINAL_GPRY_B,
00099 XED_NONTERMINAL_GPRY_R,
00100 XED_NONTERMINAL_GPRZ_B,
00101 XED_NONTERMINAL_GPRZ_R,
00102 XED_NONTERMINAL_GPR_ERROR_B,
00103 XED_NONTERMINAL_GPR_ERROR_R,
00104 XED_NONTERMINAL_IGNORE66,
00105 XED_NONTERMINAL_IMMUNE66,
00106 XED_NONTERMINAL_IMMUNE66_LOOP64,
00107 XED_NONTERMINAL_IMMUNE_REXW,
00108 XED_NONTERMINAL_INSTRUCTIONS,
00109 XED_NONTERMINAL_ISA,
00110 XED_NONTERMINAL_MEMDISP,
00111 XED_NONTERMINAL_MEMDISP16,
00112 XED_NONTERMINAL_MEMDISP32,
00113 XED_NONTERMINAL_MEMDISP8,
00114 XED_NONTERMINAL_MEMDISPV,
00115 XED_NONTERMINAL_MMX_B,
00116 XED_NONTERMINAL_MMX_R,
00117 XED_NONTERMINAL_MODRM,
00118 XED_NONTERMINAL_MODRM16,
00119 XED_NONTERMINAL_MODRM32,
00120 XED_NONTERMINAL_MODRM64ALT32,
00121 XED_NONTERMINAL_NEWVEX_PREFIX,
00122 XED_NONTERMINAL_OEAX,
00123 XED_NONTERMINAL_OEBP,
00124 XED_NONTERMINAL_OEBX,
00125 XED_NONTERMINAL_OECX,
00126 XED_NONTERMINAL_OEDI,
00127 XED_NONTERMINAL_OEDX,
00128 XED_NONTERMINAL_OESI,
00129 XED_NONTERMINAL_OESP,
00130 XED_NONTERMINAL_ONE,
00131 XED_NONTERMINAL_OR10,
00132 XED_NONTERMINAL_OR11,
00133 XED_NONTERMINAL_OR12,
00134 XED_NONTERMINAL_OR13,
00135 XED_NONTERMINAL_OR14,
00136 XED_NONTERMINAL_OR15,
00137 XED_NONTERMINAL_OR8,
00138 XED_NONTERMINAL_OR9,
00139 XED_NONTERMINAL_ORAX,
00140 XED_NONTERMINAL_ORBP,
00141 XED_NONTERMINAL_ORBX,
00142 XED_NONTERMINAL_ORCX,
00143 XED_NONTERMINAL_ORDI,
00144 XED_NONTERMINAL_ORDX,
00145 XED_NONTERMINAL_ORSI,
00146 XED_NONTERMINAL_ORSP,
00147 XED_NONTERMINAL_OSZ_NONTERM,
00148 XED_NONTERMINAL_OVERRIDE_SEG0,
00149 XED_NONTERMINAL_OVERRIDE_SEG1,
00150 XED_NONTERMINAL_PREFIXES,
00151 XED_NONTERMINAL_REFINING66,
00152 XED_NONTERMINAL_REMOVE_SEGMENT,
00153 XED_NONTERMINAL_RFLAGS,
00154 XED_NONTERMINAL_RIP,
00155 XED_NONTERMINAL_SEG,
00156 XED_NONTERMINAL_SE_IMM8,
00157 XED_NONTERMINAL_SIB,
00158 XED_NONTERMINAL_SIB_BASE0,
00159 XED_NONTERMINAL_SIMM8,
00160 XED_NONTERMINAL_SIMMZ,
00161 XED_NONTERMINAL_SRBP,
00162 XED_NONTERMINAL_SRSP,
00163 XED_NONTERMINAL_TMP_B,
00164 XED_NONTERMINAL_TMP_R,
00165 XED_NONTERMINAL_UIMM16,
00166 XED_NONTERMINAL_UIMM32,
00167 XED_NONTERMINAL_UIMM8,
00168 XED_NONTERMINAL_UIMM8_1,
00169 XED_NONTERMINAL_UIMMV,
00170 XED_NONTERMINAL_VB2PREFIX,
00171 XED_NONTERMINAL_VEXMAP,
00172 XED_NONTERMINAL_X87,
00173 XED_NONTERMINAL_XB_INVERT,
00174 XED_NONTERMINAL_XMM_B,
00175 XED_NONTERMINAL_XMM_N,
00176 XED_NONTERMINAL_XMM_R,
00177 XED_NONTERMINAL_XMM_SE,
00178 XED_NONTERMINAL_XMM_SE32,
00179 XED_NONTERMINAL_XMM_SE64,
00180 XED_NONTERMINAL_YMM_B,
00181 XED_NONTERMINAL_YMM_N,
00182 XED_NONTERMINAL_YMM_R,
00183 XED_NONTERMINAL_YMM_SE,
00184 XED_NONTERMINAL_YMM_SE32,
00185 XED_NONTERMINAL_YMM_SE64,
00186 XED_NONTERMINAL_LAST
00187 } xed_nonterminal_enum_t;
00188
00189 XED_DLL_EXPORT xed_nonterminal_enum_t str2xed_nonterminal_enum_t(const char* s);
00190 XED_DLL_EXPORT const char* xed_nonterminal_enum_t2str(const xed_nonterminal_enum_t p);
00191
00192 XED_DLL_EXPORT xed_nonterminal_enum_t xed_nonterminal_enum_t_last(void);
00193
00194 #endif