123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831 |
- #ifndef CAPSTONE_SYSTEMZ_H
- #define CAPSTONE_SYSTEMZ_H
- /* Capstone Disassembly Engine */
- /* By Nguyen Anh Quynh <aquynh@gmail.com>, 2014-2015 */
- #ifdef __cplusplus
- extern "C" {
- #endif
- #include "platform.h"
- #ifdef _MSC_VER
- #pragma warning(disable:4201)
- #endif
- /// Enums corresponding to SystemZ condition codes
- typedef enum sysz_cc {
- SYSZ_CC_INVALID = 0, ///< invalid CC (default)
- SYSZ_CC_O,
- SYSZ_CC_H,
- SYSZ_CC_NLE,
- SYSZ_CC_L,
- SYSZ_CC_NHE,
- SYSZ_CC_LH,
- SYSZ_CC_NE,
- SYSZ_CC_E,
- SYSZ_CC_NLH,
- SYSZ_CC_HE,
- SYSZ_CC_NL,
- SYSZ_CC_LE,
- SYSZ_CC_NH,
- SYSZ_CC_NO,
- } sysz_cc;
- /// Operand type for instruction's operands
- typedef enum sysz_op_type {
- SYSZ_OP_INVALID = 0, ///< = CS_OP_INVALID (Uninitialized).
- SYSZ_OP_REG, ///< = CS_OP_REG (Register operand).
- SYSZ_OP_IMM, ///< = CS_OP_IMM (Immediate operand).
- SYSZ_OP_MEM, ///< = CS_OP_MEM (Memory operand).
- SYSZ_OP_ACREG = 64, ///< Access register operand.
- } sysz_op_type;
- /// SystemZ registers
- typedef enum sysz_reg {
- SYSZ_REG_INVALID = 0,
- SYSZ_REG_0,
- SYSZ_REG_1,
- SYSZ_REG_2,
- SYSZ_REG_3,
- SYSZ_REG_4,
- SYSZ_REG_5,
- SYSZ_REG_6,
- SYSZ_REG_7,
- SYSZ_REG_8,
- SYSZ_REG_9,
- SYSZ_REG_10,
- SYSZ_REG_11,
- SYSZ_REG_12,
- SYSZ_REG_13,
- SYSZ_REG_14,
- SYSZ_REG_15,
- SYSZ_REG_CC,
- SYSZ_REG_F0,
- SYSZ_REG_F1,
- SYSZ_REG_F2,
- SYSZ_REG_F3,
- SYSZ_REG_F4,
- SYSZ_REG_F5,
- SYSZ_REG_F6,
- SYSZ_REG_F7,
- SYSZ_REG_F8,
- SYSZ_REG_F9,
- SYSZ_REG_F10,
- SYSZ_REG_F11,
- SYSZ_REG_F12,
- SYSZ_REG_F13,
- SYSZ_REG_F14,
- SYSZ_REG_F15,
- SYSZ_REG_R0L,
- SYSZ_REG_ENDING,
- } sysz_reg;
- /// Instruction's operand referring to memory
- /// This is associated with SYSZ_OP_MEM operand type above
- typedef struct sysz_op_mem {
- uint8_t base; ///< base register, can be safely interpreted as
- ///< a value of type `sysz_reg`, but it is only
- ///< one byte wide
- uint8_t index; ///< index register, same conditions apply here
- uint64_t length; ///< BDLAddr operand
- int64_t disp; ///< displacement/offset value
- } sysz_op_mem;
- /// Instruction operand
- typedef struct cs_sysz_op {
- sysz_op_type type; ///< operand type
- union {
- sysz_reg reg; ///< register value for REG operand
- int64_t imm; ///< immediate value for IMM operand
- sysz_op_mem mem; ///< base/disp value for MEM operand
- };
- } cs_sysz_op;
- // Instruction structure
- typedef struct cs_sysz {
- sysz_cc cc; ///< Code condition
- /// Number of operands of this instruction,
- /// or 0 when instruction has no operand.
- uint8_t op_count;
- cs_sysz_op operands[6]; ///< operands for this instruction.
- } cs_sysz;
- /// SystemZ instruction
- typedef enum sysz_insn {
- SYSZ_INS_INVALID = 0,
- SYSZ_INS_A,
- SYSZ_INS_ADB,
- SYSZ_INS_ADBR,
- SYSZ_INS_AEB,
- SYSZ_INS_AEBR,
- SYSZ_INS_AFI,
- SYSZ_INS_AG,
- SYSZ_INS_AGF,
- SYSZ_INS_AGFI,
- SYSZ_INS_AGFR,
- SYSZ_INS_AGHI,
- SYSZ_INS_AGHIK,
- SYSZ_INS_AGR,
- SYSZ_INS_AGRK,
- SYSZ_INS_AGSI,
- SYSZ_INS_AH,
- SYSZ_INS_AHI,
- SYSZ_INS_AHIK,
- SYSZ_INS_AHY,
- SYSZ_INS_AIH,
- SYSZ_INS_AL,
- SYSZ_INS_ALC,
- SYSZ_INS_ALCG,
- SYSZ_INS_ALCGR,
- SYSZ_INS_ALCR,
- SYSZ_INS_ALFI,
- SYSZ_INS_ALG,
- SYSZ_INS_ALGF,
- SYSZ_INS_ALGFI,
- SYSZ_INS_ALGFR,
- SYSZ_INS_ALGHSIK,
- SYSZ_INS_ALGR,
- SYSZ_INS_ALGRK,
- SYSZ_INS_ALHSIK,
- SYSZ_INS_ALR,
- SYSZ_INS_ALRK,
- SYSZ_INS_ALY,
- SYSZ_INS_AR,
- SYSZ_INS_ARK,
- SYSZ_INS_ASI,
- SYSZ_INS_AXBR,
- SYSZ_INS_AY,
- SYSZ_INS_BCR,
- SYSZ_INS_BRC,
- SYSZ_INS_BRCL,
- SYSZ_INS_CGIJ,
- SYSZ_INS_CGRJ,
- SYSZ_INS_CIJ,
- SYSZ_INS_CLGIJ,
- SYSZ_INS_CLGRJ,
- SYSZ_INS_CLIJ,
- SYSZ_INS_CLRJ,
- SYSZ_INS_CRJ,
- SYSZ_INS_BER,
- SYSZ_INS_JE,
- SYSZ_INS_JGE,
- SYSZ_INS_LOCE,
- SYSZ_INS_LOCGE,
- SYSZ_INS_LOCGRE,
- SYSZ_INS_LOCRE,
- SYSZ_INS_STOCE,
- SYSZ_INS_STOCGE,
- SYSZ_INS_BHR,
- SYSZ_INS_BHER,
- SYSZ_INS_JHE,
- SYSZ_INS_JGHE,
- SYSZ_INS_LOCHE,
- SYSZ_INS_LOCGHE,
- SYSZ_INS_LOCGRHE,
- SYSZ_INS_LOCRHE,
- SYSZ_INS_STOCHE,
- SYSZ_INS_STOCGHE,
- SYSZ_INS_JH,
- SYSZ_INS_JGH,
- SYSZ_INS_LOCH,
- SYSZ_INS_LOCGH,
- SYSZ_INS_LOCGRH,
- SYSZ_INS_LOCRH,
- SYSZ_INS_STOCH,
- SYSZ_INS_STOCGH,
- SYSZ_INS_CGIJNLH,
- SYSZ_INS_CGRJNLH,
- SYSZ_INS_CIJNLH,
- SYSZ_INS_CLGIJNLH,
- SYSZ_INS_CLGRJNLH,
- SYSZ_INS_CLIJNLH,
- SYSZ_INS_CLRJNLH,
- SYSZ_INS_CRJNLH,
- SYSZ_INS_CGIJE,
- SYSZ_INS_CGRJE,
- SYSZ_INS_CIJE,
- SYSZ_INS_CLGIJE,
- SYSZ_INS_CLGRJE,
- SYSZ_INS_CLIJE,
- SYSZ_INS_CLRJE,
- SYSZ_INS_CRJE,
- SYSZ_INS_CGIJNLE,
- SYSZ_INS_CGRJNLE,
- SYSZ_INS_CIJNLE,
- SYSZ_INS_CLGIJNLE,
- SYSZ_INS_CLGRJNLE,
- SYSZ_INS_CLIJNLE,
- SYSZ_INS_CLRJNLE,
- SYSZ_INS_CRJNLE,
- SYSZ_INS_CGIJH,
- SYSZ_INS_CGRJH,
- SYSZ_INS_CIJH,
- SYSZ_INS_CLGIJH,
- SYSZ_INS_CLGRJH,
- SYSZ_INS_CLIJH,
- SYSZ_INS_CLRJH,
- SYSZ_INS_CRJH,
- SYSZ_INS_CGIJNL,
- SYSZ_INS_CGRJNL,
- SYSZ_INS_CIJNL,
- SYSZ_INS_CLGIJNL,
- SYSZ_INS_CLGRJNL,
- SYSZ_INS_CLIJNL,
- SYSZ_INS_CLRJNL,
- SYSZ_INS_CRJNL,
- SYSZ_INS_CGIJHE,
- SYSZ_INS_CGRJHE,
- SYSZ_INS_CIJHE,
- SYSZ_INS_CLGIJHE,
- SYSZ_INS_CLGRJHE,
- SYSZ_INS_CLIJHE,
- SYSZ_INS_CLRJHE,
- SYSZ_INS_CRJHE,
- SYSZ_INS_CGIJNHE,
- SYSZ_INS_CGRJNHE,
- SYSZ_INS_CIJNHE,
- SYSZ_INS_CLGIJNHE,
- SYSZ_INS_CLGRJNHE,
- SYSZ_INS_CLIJNHE,
- SYSZ_INS_CLRJNHE,
- SYSZ_INS_CRJNHE,
- SYSZ_INS_CGIJL,
- SYSZ_INS_CGRJL,
- SYSZ_INS_CIJL,
- SYSZ_INS_CLGIJL,
- SYSZ_INS_CLGRJL,
- SYSZ_INS_CLIJL,
- SYSZ_INS_CLRJL,
- SYSZ_INS_CRJL,
- SYSZ_INS_CGIJNH,
- SYSZ_INS_CGRJNH,
- SYSZ_INS_CIJNH,
- SYSZ_INS_CLGIJNH,
- SYSZ_INS_CLGRJNH,
- SYSZ_INS_CLIJNH,
- SYSZ_INS_CLRJNH,
- SYSZ_INS_CRJNH,
- SYSZ_INS_CGIJLE,
- SYSZ_INS_CGRJLE,
- SYSZ_INS_CIJLE,
- SYSZ_INS_CLGIJLE,
- SYSZ_INS_CLGRJLE,
- SYSZ_INS_CLIJLE,
- SYSZ_INS_CLRJLE,
- SYSZ_INS_CRJLE,
- SYSZ_INS_CGIJNE,
- SYSZ_INS_CGRJNE,
- SYSZ_INS_CIJNE,
- SYSZ_INS_CLGIJNE,
- SYSZ_INS_CLGRJNE,
- SYSZ_INS_CLIJNE,
- SYSZ_INS_CLRJNE,
- SYSZ_INS_CRJNE,
- SYSZ_INS_CGIJLH,
- SYSZ_INS_CGRJLH,
- SYSZ_INS_CIJLH,
- SYSZ_INS_CLGIJLH,
- SYSZ_INS_CLGRJLH,
- SYSZ_INS_CLIJLH,
- SYSZ_INS_CLRJLH,
- SYSZ_INS_CRJLH,
- SYSZ_INS_BLR,
- SYSZ_INS_BLER,
- SYSZ_INS_JLE,
- SYSZ_INS_JGLE,
- SYSZ_INS_LOCLE,
- SYSZ_INS_LOCGLE,
- SYSZ_INS_LOCGRLE,
- SYSZ_INS_LOCRLE,
- SYSZ_INS_STOCLE,
- SYSZ_INS_STOCGLE,
- SYSZ_INS_BLHR,
- SYSZ_INS_JLH,
- SYSZ_INS_JGLH,
- SYSZ_INS_LOCLH,
- SYSZ_INS_LOCGLH,
- SYSZ_INS_LOCGRLH,
- SYSZ_INS_LOCRLH,
- SYSZ_INS_STOCLH,
- SYSZ_INS_STOCGLH,
- SYSZ_INS_JL,
- SYSZ_INS_JGL,
- SYSZ_INS_LOCL,
- SYSZ_INS_LOCGL,
- SYSZ_INS_LOCGRL,
- SYSZ_INS_LOCRL,
- SYSZ_INS_LOC,
- SYSZ_INS_LOCG,
- SYSZ_INS_LOCGR,
- SYSZ_INS_LOCR,
- SYSZ_INS_STOCL,
- SYSZ_INS_STOCGL,
- SYSZ_INS_BNER,
- SYSZ_INS_JNE,
- SYSZ_INS_JGNE,
- SYSZ_INS_LOCNE,
- SYSZ_INS_LOCGNE,
- SYSZ_INS_LOCGRNE,
- SYSZ_INS_LOCRNE,
- SYSZ_INS_STOCNE,
- SYSZ_INS_STOCGNE,
- SYSZ_INS_BNHR,
- SYSZ_INS_BNHER,
- SYSZ_INS_JNHE,
- SYSZ_INS_JGNHE,
- SYSZ_INS_LOCNHE,
- SYSZ_INS_LOCGNHE,
- SYSZ_INS_LOCGRNHE,
- SYSZ_INS_LOCRNHE,
- SYSZ_INS_STOCNHE,
- SYSZ_INS_STOCGNHE,
- SYSZ_INS_JNH,
- SYSZ_INS_JGNH,
- SYSZ_INS_LOCNH,
- SYSZ_INS_LOCGNH,
- SYSZ_INS_LOCGRNH,
- SYSZ_INS_LOCRNH,
- SYSZ_INS_STOCNH,
- SYSZ_INS_STOCGNH,
- SYSZ_INS_BNLR,
- SYSZ_INS_BNLER,
- SYSZ_INS_JNLE,
- SYSZ_INS_JGNLE,
- SYSZ_INS_LOCNLE,
- SYSZ_INS_LOCGNLE,
- SYSZ_INS_LOCGRNLE,
- SYSZ_INS_LOCRNLE,
- SYSZ_INS_STOCNLE,
- SYSZ_INS_STOCGNLE,
- SYSZ_INS_BNLHR,
- SYSZ_INS_JNLH,
- SYSZ_INS_JGNLH,
- SYSZ_INS_LOCNLH,
- SYSZ_INS_LOCGNLH,
- SYSZ_INS_LOCGRNLH,
- SYSZ_INS_LOCRNLH,
- SYSZ_INS_STOCNLH,
- SYSZ_INS_STOCGNLH,
- SYSZ_INS_JNL,
- SYSZ_INS_JGNL,
- SYSZ_INS_LOCNL,
- SYSZ_INS_LOCGNL,
- SYSZ_INS_LOCGRNL,
- SYSZ_INS_LOCRNL,
- SYSZ_INS_STOCNL,
- SYSZ_INS_STOCGNL,
- SYSZ_INS_BNOR,
- SYSZ_INS_JNO,
- SYSZ_INS_JGNO,
- SYSZ_INS_LOCNO,
- SYSZ_INS_LOCGNO,
- SYSZ_INS_LOCGRNO,
- SYSZ_INS_LOCRNO,
- SYSZ_INS_STOCNO,
- SYSZ_INS_STOCGNO,
- SYSZ_INS_BOR,
- SYSZ_INS_JO,
- SYSZ_INS_JGO,
- SYSZ_INS_LOCO,
- SYSZ_INS_LOCGO,
- SYSZ_INS_LOCGRO,
- SYSZ_INS_LOCRO,
- SYSZ_INS_STOCO,
- SYSZ_INS_STOCGO,
- SYSZ_INS_STOC,
- SYSZ_INS_STOCG,
- SYSZ_INS_BASR,
- SYSZ_INS_BR,
- SYSZ_INS_BRAS,
- SYSZ_INS_BRASL,
- SYSZ_INS_J,
- SYSZ_INS_JG,
- SYSZ_INS_BRCT,
- SYSZ_INS_BRCTG,
- SYSZ_INS_C,
- SYSZ_INS_CDB,
- SYSZ_INS_CDBR,
- SYSZ_INS_CDFBR,
- SYSZ_INS_CDGBR,
- SYSZ_INS_CDLFBR,
- SYSZ_INS_CDLGBR,
- SYSZ_INS_CEB,
- SYSZ_INS_CEBR,
- SYSZ_INS_CEFBR,
- SYSZ_INS_CEGBR,
- SYSZ_INS_CELFBR,
- SYSZ_INS_CELGBR,
- SYSZ_INS_CFDBR,
- SYSZ_INS_CFEBR,
- SYSZ_INS_CFI,
- SYSZ_INS_CFXBR,
- SYSZ_INS_CG,
- SYSZ_INS_CGDBR,
- SYSZ_INS_CGEBR,
- SYSZ_INS_CGF,
- SYSZ_INS_CGFI,
- SYSZ_INS_CGFR,
- SYSZ_INS_CGFRL,
- SYSZ_INS_CGH,
- SYSZ_INS_CGHI,
- SYSZ_INS_CGHRL,
- SYSZ_INS_CGHSI,
- SYSZ_INS_CGR,
- SYSZ_INS_CGRL,
- SYSZ_INS_CGXBR,
- SYSZ_INS_CH,
- SYSZ_INS_CHF,
- SYSZ_INS_CHHSI,
- SYSZ_INS_CHI,
- SYSZ_INS_CHRL,
- SYSZ_INS_CHSI,
- SYSZ_INS_CHY,
- SYSZ_INS_CIH,
- SYSZ_INS_CL,
- SYSZ_INS_CLC,
- SYSZ_INS_CLFDBR,
- SYSZ_INS_CLFEBR,
- SYSZ_INS_CLFHSI,
- SYSZ_INS_CLFI,
- SYSZ_INS_CLFXBR,
- SYSZ_INS_CLG,
- SYSZ_INS_CLGDBR,
- SYSZ_INS_CLGEBR,
- SYSZ_INS_CLGF,
- SYSZ_INS_CLGFI,
- SYSZ_INS_CLGFR,
- SYSZ_INS_CLGFRL,
- SYSZ_INS_CLGHRL,
- SYSZ_INS_CLGHSI,
- SYSZ_INS_CLGR,
- SYSZ_INS_CLGRL,
- SYSZ_INS_CLGXBR,
- SYSZ_INS_CLHF,
- SYSZ_INS_CLHHSI,
- SYSZ_INS_CLHRL,
- SYSZ_INS_CLI,
- SYSZ_INS_CLIH,
- SYSZ_INS_CLIY,
- SYSZ_INS_CLR,
- SYSZ_INS_CLRL,
- SYSZ_INS_CLST,
- SYSZ_INS_CLY,
- SYSZ_INS_CPSDR,
- SYSZ_INS_CR,
- SYSZ_INS_CRL,
- SYSZ_INS_CS,
- SYSZ_INS_CSG,
- SYSZ_INS_CSY,
- SYSZ_INS_CXBR,
- SYSZ_INS_CXFBR,
- SYSZ_INS_CXGBR,
- SYSZ_INS_CXLFBR,
- SYSZ_INS_CXLGBR,
- SYSZ_INS_CY,
- SYSZ_INS_DDB,
- SYSZ_INS_DDBR,
- SYSZ_INS_DEB,
- SYSZ_INS_DEBR,
- SYSZ_INS_DL,
- SYSZ_INS_DLG,
- SYSZ_INS_DLGR,
- SYSZ_INS_DLR,
- SYSZ_INS_DSG,
- SYSZ_INS_DSGF,
- SYSZ_INS_DSGFR,
- SYSZ_INS_DSGR,
- SYSZ_INS_DXBR,
- SYSZ_INS_EAR,
- SYSZ_INS_FIDBR,
- SYSZ_INS_FIDBRA,
- SYSZ_INS_FIEBR,
- SYSZ_INS_FIEBRA,
- SYSZ_INS_FIXBR,
- SYSZ_INS_FIXBRA,
- SYSZ_INS_FLOGR,
- SYSZ_INS_IC,
- SYSZ_INS_ICY,
- SYSZ_INS_IIHF,
- SYSZ_INS_IIHH,
- SYSZ_INS_IIHL,
- SYSZ_INS_IILF,
- SYSZ_INS_IILH,
- SYSZ_INS_IILL,
- SYSZ_INS_IPM,
- SYSZ_INS_L,
- SYSZ_INS_LA,
- SYSZ_INS_LAA,
- SYSZ_INS_LAAG,
- SYSZ_INS_LAAL,
- SYSZ_INS_LAALG,
- SYSZ_INS_LAN,
- SYSZ_INS_LANG,
- SYSZ_INS_LAO,
- SYSZ_INS_LAOG,
- SYSZ_INS_LARL,
- SYSZ_INS_LAX,
- SYSZ_INS_LAXG,
- SYSZ_INS_LAY,
- SYSZ_INS_LB,
- SYSZ_INS_LBH,
- SYSZ_INS_LBR,
- SYSZ_INS_LCDBR,
- SYSZ_INS_LCEBR,
- SYSZ_INS_LCGFR,
- SYSZ_INS_LCGR,
- SYSZ_INS_LCR,
- SYSZ_INS_LCXBR,
- SYSZ_INS_LD,
- SYSZ_INS_LDEB,
- SYSZ_INS_LDEBR,
- SYSZ_INS_LDGR,
- SYSZ_INS_LDR,
- SYSZ_INS_LDXBR,
- SYSZ_INS_LDXBRA,
- SYSZ_INS_LDY,
- SYSZ_INS_LE,
- SYSZ_INS_LEDBR,
- SYSZ_INS_LEDBRA,
- SYSZ_INS_LER,
- SYSZ_INS_LEXBR,
- SYSZ_INS_LEXBRA,
- SYSZ_INS_LEY,
- SYSZ_INS_LFH,
- SYSZ_INS_LG,
- SYSZ_INS_LGB,
- SYSZ_INS_LGBR,
- SYSZ_INS_LGDR,
- SYSZ_INS_LGF,
- SYSZ_INS_LGFI,
- SYSZ_INS_LGFR,
- SYSZ_INS_LGFRL,
- SYSZ_INS_LGH,
- SYSZ_INS_LGHI,
- SYSZ_INS_LGHR,
- SYSZ_INS_LGHRL,
- SYSZ_INS_LGR,
- SYSZ_INS_LGRL,
- SYSZ_INS_LH,
- SYSZ_INS_LHH,
- SYSZ_INS_LHI,
- SYSZ_INS_LHR,
- SYSZ_INS_LHRL,
- SYSZ_INS_LHY,
- SYSZ_INS_LLC,
- SYSZ_INS_LLCH,
- SYSZ_INS_LLCR,
- SYSZ_INS_LLGC,
- SYSZ_INS_LLGCR,
- SYSZ_INS_LLGF,
- SYSZ_INS_LLGFR,
- SYSZ_INS_LLGFRL,
- SYSZ_INS_LLGH,
- SYSZ_INS_LLGHR,
- SYSZ_INS_LLGHRL,
- SYSZ_INS_LLH,
- SYSZ_INS_LLHH,
- SYSZ_INS_LLHR,
- SYSZ_INS_LLHRL,
- SYSZ_INS_LLIHF,
- SYSZ_INS_LLIHH,
- SYSZ_INS_LLIHL,
- SYSZ_INS_LLILF,
- SYSZ_INS_LLILH,
- SYSZ_INS_LLILL,
- SYSZ_INS_LMG,
- SYSZ_INS_LNDBR,
- SYSZ_INS_LNEBR,
- SYSZ_INS_LNGFR,
- SYSZ_INS_LNGR,
- SYSZ_INS_LNR,
- SYSZ_INS_LNXBR,
- SYSZ_INS_LPDBR,
- SYSZ_INS_LPEBR,
- SYSZ_INS_LPGFR,
- SYSZ_INS_LPGR,
- SYSZ_INS_LPR,
- SYSZ_INS_LPXBR,
- SYSZ_INS_LR,
- SYSZ_INS_LRL,
- SYSZ_INS_LRV,
- SYSZ_INS_LRVG,
- SYSZ_INS_LRVGR,
- SYSZ_INS_LRVR,
- SYSZ_INS_LT,
- SYSZ_INS_LTDBR,
- SYSZ_INS_LTEBR,
- SYSZ_INS_LTG,
- SYSZ_INS_LTGF,
- SYSZ_INS_LTGFR,
- SYSZ_INS_LTGR,
- SYSZ_INS_LTR,
- SYSZ_INS_LTXBR,
- SYSZ_INS_LXDB,
- SYSZ_INS_LXDBR,
- SYSZ_INS_LXEB,
- SYSZ_INS_LXEBR,
- SYSZ_INS_LXR,
- SYSZ_INS_LY,
- SYSZ_INS_LZDR,
- SYSZ_INS_LZER,
- SYSZ_INS_LZXR,
- SYSZ_INS_MADB,
- SYSZ_INS_MADBR,
- SYSZ_INS_MAEB,
- SYSZ_INS_MAEBR,
- SYSZ_INS_MDB,
- SYSZ_INS_MDBR,
- SYSZ_INS_MDEB,
- SYSZ_INS_MDEBR,
- SYSZ_INS_MEEB,
- SYSZ_INS_MEEBR,
- SYSZ_INS_MGHI,
- SYSZ_INS_MH,
- SYSZ_INS_MHI,
- SYSZ_INS_MHY,
- SYSZ_INS_MLG,
- SYSZ_INS_MLGR,
- SYSZ_INS_MS,
- SYSZ_INS_MSDB,
- SYSZ_INS_MSDBR,
- SYSZ_INS_MSEB,
- SYSZ_INS_MSEBR,
- SYSZ_INS_MSFI,
- SYSZ_INS_MSG,
- SYSZ_INS_MSGF,
- SYSZ_INS_MSGFI,
- SYSZ_INS_MSGFR,
- SYSZ_INS_MSGR,
- SYSZ_INS_MSR,
- SYSZ_INS_MSY,
- SYSZ_INS_MVC,
- SYSZ_INS_MVGHI,
- SYSZ_INS_MVHHI,
- SYSZ_INS_MVHI,
- SYSZ_INS_MVI,
- SYSZ_INS_MVIY,
- SYSZ_INS_MVST,
- SYSZ_INS_MXBR,
- SYSZ_INS_MXDB,
- SYSZ_INS_MXDBR,
- SYSZ_INS_N,
- SYSZ_INS_NC,
- SYSZ_INS_NG,
- SYSZ_INS_NGR,
- SYSZ_INS_NGRK,
- SYSZ_INS_NI,
- SYSZ_INS_NIHF,
- SYSZ_INS_NIHH,
- SYSZ_INS_NIHL,
- SYSZ_INS_NILF,
- SYSZ_INS_NILH,
- SYSZ_INS_NILL,
- SYSZ_INS_NIY,
- SYSZ_INS_NR,
- SYSZ_INS_NRK,
- SYSZ_INS_NY,
- SYSZ_INS_O,
- SYSZ_INS_OC,
- SYSZ_INS_OG,
- SYSZ_INS_OGR,
- SYSZ_INS_OGRK,
- SYSZ_INS_OI,
- SYSZ_INS_OIHF,
- SYSZ_INS_OIHH,
- SYSZ_INS_OIHL,
- SYSZ_INS_OILF,
- SYSZ_INS_OILH,
- SYSZ_INS_OILL,
- SYSZ_INS_OIY,
- SYSZ_INS_OR,
- SYSZ_INS_ORK,
- SYSZ_INS_OY,
- SYSZ_INS_PFD,
- SYSZ_INS_PFDRL,
- SYSZ_INS_RISBG,
- SYSZ_INS_RISBHG,
- SYSZ_INS_RISBLG,
- SYSZ_INS_RLL,
- SYSZ_INS_RLLG,
- SYSZ_INS_RNSBG,
- SYSZ_INS_ROSBG,
- SYSZ_INS_RXSBG,
- SYSZ_INS_S,
- SYSZ_INS_SDB,
- SYSZ_INS_SDBR,
- SYSZ_INS_SEB,
- SYSZ_INS_SEBR,
- SYSZ_INS_SG,
- SYSZ_INS_SGF,
- SYSZ_INS_SGFR,
- SYSZ_INS_SGR,
- SYSZ_INS_SGRK,
- SYSZ_INS_SH,
- SYSZ_INS_SHY,
- SYSZ_INS_SL,
- SYSZ_INS_SLB,
- SYSZ_INS_SLBG,
- SYSZ_INS_SLBR,
- SYSZ_INS_SLFI,
- SYSZ_INS_SLG,
- SYSZ_INS_SLBGR,
- SYSZ_INS_SLGF,
- SYSZ_INS_SLGFI,
- SYSZ_INS_SLGFR,
- SYSZ_INS_SLGR,
- SYSZ_INS_SLGRK,
- SYSZ_INS_SLL,
- SYSZ_INS_SLLG,
- SYSZ_INS_SLLK,
- SYSZ_INS_SLR,
- SYSZ_INS_SLRK,
- SYSZ_INS_SLY,
- SYSZ_INS_SQDB,
- SYSZ_INS_SQDBR,
- SYSZ_INS_SQEB,
- SYSZ_INS_SQEBR,
- SYSZ_INS_SQXBR,
- SYSZ_INS_SR,
- SYSZ_INS_SRA,
- SYSZ_INS_SRAG,
- SYSZ_INS_SRAK,
- SYSZ_INS_SRK,
- SYSZ_INS_SRL,
- SYSZ_INS_SRLG,
- SYSZ_INS_SRLK,
- SYSZ_INS_SRST,
- SYSZ_INS_ST,
- SYSZ_INS_STC,
- SYSZ_INS_STCH,
- SYSZ_INS_STCY,
- SYSZ_INS_STD,
- SYSZ_INS_STDY,
- SYSZ_INS_STE,
- SYSZ_INS_STEY,
- SYSZ_INS_STFH,
- SYSZ_INS_STG,
- SYSZ_INS_STGRL,
- SYSZ_INS_STH,
- SYSZ_INS_STHH,
- SYSZ_INS_STHRL,
- SYSZ_INS_STHY,
- SYSZ_INS_STMG,
- SYSZ_INS_STRL,
- SYSZ_INS_STRV,
- SYSZ_INS_STRVG,
- SYSZ_INS_STY,
- SYSZ_INS_SXBR,
- SYSZ_INS_SY,
- SYSZ_INS_TM,
- SYSZ_INS_TMHH,
- SYSZ_INS_TMHL,
- SYSZ_INS_TMLH,
- SYSZ_INS_TMLL,
- SYSZ_INS_TMY,
- SYSZ_INS_X,
- SYSZ_INS_XC,
- SYSZ_INS_XG,
- SYSZ_INS_XGR,
- SYSZ_INS_XGRK,
- SYSZ_INS_XI,
- SYSZ_INS_XIHF,
- SYSZ_INS_XILF,
- SYSZ_INS_XIY,
- SYSZ_INS_XR,
- SYSZ_INS_XRK,
- SYSZ_INS_XY,
- SYSZ_INS_ENDING, // <-- mark the end of the list of instructions
- } sysz_insn;
- /// Group of SystemZ instructions
- typedef enum sysz_insn_group {
- SYSZ_GRP_INVALID = 0, ///< = CS_GRP_INVALID
- // Generic groups
- // all jump instructions (conditional+direct+indirect jumps)
- SYSZ_GRP_JUMP, ///< = CS_GRP_JUMP
- // Architecture-specific groups
- SYSZ_GRP_DISTINCTOPS = 128,
- SYSZ_GRP_FPEXTENSION,
- SYSZ_GRP_HIGHWORD,
- SYSZ_GRP_INTERLOCKEDACCESS1,
- SYSZ_GRP_LOADSTOREONCOND,
- SYSZ_GRP_ENDING, // <-- mark the end of the list of groups
- } sysz_insn_group;
- #ifdef __cplusplus
- }
- #endif
- #endif
|