|
enum | Type {
TypeALU32_2op = 0
, TypeALU32_3op = 1
, TypeALU32_ADDI = 2
, TypeALU64 = 3
,
TypeCJ = 4
, TypeCR = 5
, TypeCVI_4SLOT_MPY = 6
, TypeCVI_GATHER = 7
,
TypeCVI_GATHER_DV = 8
, TypeCVI_GATHER_RST = 9
, TypeCVI_HIST = 10
, TypeCVI_SCATTER = 11
,
TypeCVI_SCATTER_DV = 12
, TypeCVI_SCATTER_NEW_RST = 13
, TypeCVI_SCATTER_NEW_ST = 14
, TypeCVI_SCATTER_RST = 15
,
TypeCVI_VA = 16
, TypeCVI_VA_DV = 17
, TypeCVI_VM_LD = 18
, TypeCVI_VM_NEW_ST = 19
,
TypeCVI_VM_ST = 20
, TypeCVI_VM_STU = 21
, TypeCVI_VM_TMP_LD = 22
, TypeCVI_VM_VP_LDU = 23
,
TypeCVI_VP = 24
, TypeCVI_VP_VS = 25
, TypeCVI_VS = 26
, TypeCVI_VS_VX = 27
,
TypeCVI_VX = 28
, TypeCVI_VX_DV = 29
, TypeCVI_VX_LATE = 30
, TypeCVI_ZW = 31
,
TypeDUPLEX = 32
, TypeENDLOOP = 33
, TypeEXTENDER = 34
, TypeJ = 35
,
TypeLD = 36
, TypeM = 37
, TypeMAPPING = 38
, TypeNCJ = 39
,
TypePSEUDO = 40
, TypeST = 41
, TypeSUBINSN = 42
, TypeS_2op = 43
,
TypeS_3op = 44
, TypeV2LDST = 47
, TypeV4LDST = 48
} |
|
enum | AddrMode {
NoAddrMode = 0
, Absolute = 1
, AbsoluteSet = 2
, BaseImmOffset = 3
,
BaseLongOffset = 4
, BaseRegOffset = 5
, PostInc = 6
} |
|
enum | MemAccessSize {
NoMemAccess = 0
, ByteAccess
, HalfWordAccess
, WordAccess
,
DoubleWordAccess
, HVXVectorAccess
} |
|
enum | {
TypePos = 0
, TypeMask = 0x7f
, SoloPos = 7
, SoloMask = 0x1
,
SoloAXPos = 8
, SoloAXMask = 0x1
, RestrictSlot1AOKPos = 9
, RestrictSlot1AOKMask = 0x1
,
PredicatedPos = 10
, PredicatedMask = 0x1
, PredicatedFalsePos = 11
, PredicatedFalseMask = 0x1
,
PredicatedNewPos = 12
, PredicatedNewMask = 0x1
, PredicateLatePos = 13
, PredicateLateMask = 0x1
,
NewValuePos = 14
, NewValueMask = 0x1
, hasNewValuePos = 15
, hasNewValueMask = 0x1
,
NewValueOpPos = 16
, NewValueOpMask = 0x7
, mayNVStorePos = 19
, mayNVStoreMask = 0x1
,
NVStorePos = 20
, NVStoreMask = 0x1
, mayCVLoadPos = 21
, mayCVLoadMask = 0x1
,
CVLoadPos = 22
, CVLoadMask = 0x1
, ExtendablePos = 23
, ExtendableMask = 0x1
,
ExtendedPos = 24
, ExtendedMask = 0x1
, ExtendableOpPos = 25
, ExtendableOpMask = 0x7
,
ExtentSignedPos = 28
, ExtentSignedMask = 0x1
, ExtentBitsPos = 29
, ExtentBitsMask = 0x1f
,
ExtentAlignPos = 34
, ExtentAlignMask = 0x3
, CofMax1Pos = 36
, CofMax1Mask = 0x1
,
CofRelax1Pos = 37
, CofRelax1Mask = 0x1
, CofRelax2Pos = 38
, CofRelax2Mask = 0x1
,
RestrictNoSlot1StorePos = 39
, RestrictNoSlot1StoreMask = 0x1
, AddrModePos = 40
, AddrModeMask = 0x7
,
MemAccessSizePos = 43
, MemAccesSizeMask = 0xf
, TakenPos = 47
, TakenMask = 0x1
,
FPPos = 48
, FPMask = 0x1
, hasNewValuePos2 = 50
, hasNewValueMask2 = 0x1
,
NewValueOpPos2 = 51
, NewValueOpMask2 = 0x7
, AccumulatorPos = 54
, AccumulatorMask = 0x1
,
PrefersSlot3Pos = 55
, PrefersSlot3Mask = 0x1
, HasHvxTmpPos = 56
, HasHvxTmpMask = 0x1
,
CVINewPos = 58
, CVINewMask = 0x1
, isCVIPos = 59
, isCVIMask = 0x1
,
isHVXALUPos = 60
, isHVXALUMask = 0x1
, isHVXALU2SRCPos = 61
, isHVXALU2SRCMask = 0x1
,
hasUnaryRestrictionPos = 62
, hasUnaryRestrictionMask = 0x1
} |
|
enum | HexagonMOTargetFlagVal {
MO_NO_FLAG
, MO_PCREL
, MO_GOT
, MO_LO16
,
MO_HI16
, MO_GPREL
, MO_GDGOT
, MO_GDPLT
,
MO_IE
, MO_IEGOT
, MO_TPREL
, HMOTF_ConstExtended = 0x80
,
MO_Bitmasks = HMOTF_ConstExtended
} |
|
enum | SubInstructionGroup {
HSIG_None = 0
, HSIG_L1
, HSIG_L2
, HSIG_S1
,
HSIG_S2
, HSIG_A
, HSIG_Compound
} |
|
enum | CompoundGroup { HCG_None = 0
, HCG_A
, HCG_B
, HCG_C
} |
|
enum | InstParseBits {
INST_PARSE_MASK = 0x0000c000
, INST_PARSE_PACKET_END = 0x0000c000
, INST_PARSE_LOOP_END = 0x00008000
, INST_PARSE_NOT_END = 0x00004000
,
INST_PARSE_DUPLEX = 0x00000000
, INST_PARSE_EXTENDER = 0x00000000
} |
|
enum | InstIClassBits : unsigned {
INST_ICLASS_MASK = 0xf0000000
, INST_ICLASS_EXTENDER = 0x00000000
, INST_ICLASS_J_1 = 0x10000000
, INST_ICLASS_J_2 = 0x20000000
,
INST_ICLASS_LD_ST_1 = 0x30000000
, INST_ICLASS_LD_ST_2 = 0x40000000
, INST_ICLASS_J_3 = 0x50000000
, INST_ICLASS_CR = 0x60000000
,
INST_ICLASS_ALU32_1 = 0x70000000
, INST_ICLASS_XTYPE_1 = 0x80000000
, INST_ICLASS_LD = 0x90000000
, INST_ICLASS_ST = 0xa0000000
,
INST_ICLASS_ALU32_2 = 0xb0000000
, INST_ICLASS_XTYPE_2 = 0xc0000000
, INST_ICLASS_XTYPE_3 = 0xd0000000
, INST_ICLASS_XTYPE_4 = 0xe0000000
,
INST_ICLASS_ALU32_3 = 0xf0000000
} |
|
HexagonII - This namespace holds all of the target specific flags that instruction info tracks.