1*9880d681SAndroid Build Coastguard Worker //===-- HexagonBaseInfo.h - Top level definitions for Hexagon --*- C++ -*--===// 2*9880d681SAndroid Build Coastguard Worker // 3*9880d681SAndroid Build Coastguard Worker // The LLVM Compiler Infrastructure 4*9880d681SAndroid Build Coastguard Worker // 5*9880d681SAndroid Build Coastguard Worker // This file is distributed under the University of Illinois Open Source 6*9880d681SAndroid Build Coastguard Worker // License. See LICENSE.TXT for details. 7*9880d681SAndroid Build Coastguard Worker // 8*9880d681SAndroid Build Coastguard Worker //===----------------------------------------------------------------------===// 9*9880d681SAndroid Build Coastguard Worker // 10*9880d681SAndroid Build Coastguard Worker // This file contains small standalone helper functions and enum definitions for 11*9880d681SAndroid Build Coastguard Worker // the Hexagon target useful for the compiler back-end and the MC libraries. 12*9880d681SAndroid Build Coastguard Worker // As such, it deliberately does not include references to LLVM core 13*9880d681SAndroid Build Coastguard Worker // code gen types, passes, etc.. 14*9880d681SAndroid Build Coastguard Worker // 15*9880d681SAndroid Build Coastguard Worker //===----------------------------------------------------------------------===// 16*9880d681SAndroid Build Coastguard Worker 17*9880d681SAndroid Build Coastguard Worker #ifndef LLVM_LIB_TARGET_HEXAGON_MCTARGETDESC_HEXAGONBASEINFO_H 18*9880d681SAndroid Build Coastguard Worker #define LLVM_LIB_TARGET_HEXAGON_MCTARGETDESC_HEXAGONBASEINFO_H 19*9880d681SAndroid Build Coastguard Worker 20*9880d681SAndroid Build Coastguard Worker #include "HexagonMCTargetDesc.h" 21*9880d681SAndroid Build Coastguard Worker #include "llvm/Support/ErrorHandling.h" 22*9880d681SAndroid Build Coastguard Worker #include <stdint.h> 23*9880d681SAndroid Build Coastguard Worker 24*9880d681SAndroid Build Coastguard Worker namespace llvm { 25*9880d681SAndroid Build Coastguard Worker 26*9880d681SAndroid Build Coastguard Worker /// HexagonII - This namespace holds all of the target specific flags that 27*9880d681SAndroid Build Coastguard Worker /// instruction info tracks. 28*9880d681SAndroid Build Coastguard Worker /// 29*9880d681SAndroid Build Coastguard Worker namespace HexagonII { 30*9880d681SAndroid Build Coastguard Worker // *** The code below must match HexagonInstrFormat*.td *** // 31*9880d681SAndroid Build Coastguard Worker 32*9880d681SAndroid Build Coastguard Worker // Insn types. 33*9880d681SAndroid Build Coastguard Worker // *** Must match HexagonInstrFormat*.td *** 34*9880d681SAndroid Build Coastguard Worker enum Type { 35*9880d681SAndroid Build Coastguard Worker TypePSEUDO = 0, 36*9880d681SAndroid Build Coastguard Worker TypeALU32 = 1, 37*9880d681SAndroid Build Coastguard Worker TypeCR = 2, 38*9880d681SAndroid Build Coastguard Worker TypeJR = 3, 39*9880d681SAndroid Build Coastguard Worker TypeJ = 4, 40*9880d681SAndroid Build Coastguard Worker TypeLD = 5, 41*9880d681SAndroid Build Coastguard Worker TypeST = 6, 42*9880d681SAndroid Build Coastguard Worker TypeSYSTEM = 7, 43*9880d681SAndroid Build Coastguard Worker TypeXTYPE = 8, 44*9880d681SAndroid Build Coastguard Worker TypeMEMOP = 9, 45*9880d681SAndroid Build Coastguard Worker TypeNV = 10, 46*9880d681SAndroid Build Coastguard Worker TypeDUPLEX = 11, 47*9880d681SAndroid Build Coastguard Worker TypeCOMPOUND = 12, 48*9880d681SAndroid Build Coastguard Worker TypeCVI_FIRST = 13, 49*9880d681SAndroid Build Coastguard Worker TypeCVI_VA = TypeCVI_FIRST, 50*9880d681SAndroid Build Coastguard Worker TypeCVI_VA_DV = 14, 51*9880d681SAndroid Build Coastguard Worker TypeCVI_VX = 15, 52*9880d681SAndroid Build Coastguard Worker TypeCVI_VX_DV = 16, 53*9880d681SAndroid Build Coastguard Worker TypeCVI_VP = 17, 54*9880d681SAndroid Build Coastguard Worker TypeCVI_VP_VS = 18, 55*9880d681SAndroid Build Coastguard Worker TypeCVI_VS = 19, 56*9880d681SAndroid Build Coastguard Worker TypeCVI_VINLANESAT= 20, 57*9880d681SAndroid Build Coastguard Worker TypeCVI_VM_LD = 21, 58*9880d681SAndroid Build Coastguard Worker TypeCVI_VM_TMP_LD = 22, 59*9880d681SAndroid Build Coastguard Worker TypeCVI_VM_CUR_LD = 23, 60*9880d681SAndroid Build Coastguard Worker TypeCVI_VM_VP_LDU = 24, 61*9880d681SAndroid Build Coastguard Worker TypeCVI_VM_ST = 25, 62*9880d681SAndroid Build Coastguard Worker TypeCVI_VM_NEW_ST = 26, 63*9880d681SAndroid Build Coastguard Worker TypeCVI_VM_STU = 27, 64*9880d681SAndroid Build Coastguard Worker TypeCVI_HIST = 28, 65*9880d681SAndroid Build Coastguard Worker TypeCVI_LAST = TypeCVI_HIST, 66*9880d681SAndroid Build Coastguard Worker TypePREFIX = 30, // Such as extenders. 67*9880d681SAndroid Build Coastguard Worker TypeENDLOOP = 31 // Such as end of a HW loop. 68*9880d681SAndroid Build Coastguard Worker }; 69*9880d681SAndroid Build Coastguard Worker 70*9880d681SAndroid Build Coastguard Worker enum SubTarget { 71*9880d681SAndroid Build Coastguard Worker HasV2SubT = 0xf, 72*9880d681SAndroid Build Coastguard Worker HasV2SubTOnly = 0x1, 73*9880d681SAndroid Build Coastguard Worker NoV2SubT = 0x0, 74*9880d681SAndroid Build Coastguard Worker HasV3SubT = 0xe, 75*9880d681SAndroid Build Coastguard Worker HasV3SubTOnly = 0x2, 76*9880d681SAndroid Build Coastguard Worker NoV3SubT = 0x1, 77*9880d681SAndroid Build Coastguard Worker HasV4SubT = 0xc, 78*9880d681SAndroid Build Coastguard Worker NoV4SubT = 0x3, 79*9880d681SAndroid Build Coastguard Worker HasV5SubT = 0x8, 80*9880d681SAndroid Build Coastguard Worker NoV5SubT = 0x7 81*9880d681SAndroid Build Coastguard Worker }; 82*9880d681SAndroid Build Coastguard Worker 83*9880d681SAndroid Build Coastguard Worker enum AddrMode { 84*9880d681SAndroid Build Coastguard Worker NoAddrMode = 0, // No addressing mode 85*9880d681SAndroid Build Coastguard Worker Absolute = 1, // Absolute addressing mode 86*9880d681SAndroid Build Coastguard Worker AbsoluteSet = 2, // Absolute set addressing mode 87*9880d681SAndroid Build Coastguard Worker BaseImmOffset = 3, // Indirect with offset 88*9880d681SAndroid Build Coastguard Worker BaseLongOffset = 4, // Indirect with long offset 89*9880d681SAndroid Build Coastguard Worker BaseRegOffset = 5, // Indirect with register offset 90*9880d681SAndroid Build Coastguard Worker PostInc = 6 // Post increment addressing mode 91*9880d681SAndroid Build Coastguard Worker }; 92*9880d681SAndroid Build Coastguard Worker 93*9880d681SAndroid Build Coastguard Worker // MemAccessSize is represented as 1+log2(N) where N is size in bits. 94*9880d681SAndroid Build Coastguard Worker enum class MemAccessSize { 95*9880d681SAndroid Build Coastguard Worker NoMemAccess = 0, // Not a memory acces instruction. 96*9880d681SAndroid Build Coastguard Worker ByteAccess = 1, // Byte access instruction (memb). 97*9880d681SAndroid Build Coastguard Worker HalfWordAccess = 2, // Half word access instruction (memh). 98*9880d681SAndroid Build Coastguard Worker WordAccess = 3, // Word access instruction (memw). 99*9880d681SAndroid Build Coastguard Worker DoubleWordAccess = 4, // Double word access instruction (memd) 100*9880d681SAndroid Build Coastguard Worker // 5, // We do not have a 16 byte vector access. 101*9880d681SAndroid Build Coastguard Worker Vector64Access = 7, // 64 Byte vector access instruction (vmem). 102*9880d681SAndroid Build Coastguard Worker Vector128Access = 8 // 128 Byte vector access instruction (vmem). 103*9880d681SAndroid Build Coastguard Worker }; 104*9880d681SAndroid Build Coastguard Worker 105*9880d681SAndroid Build Coastguard Worker // MCInstrDesc TSFlags 106*9880d681SAndroid Build Coastguard Worker // *** Must match HexagonInstrFormat*.td *** 107*9880d681SAndroid Build Coastguard Worker enum { 108*9880d681SAndroid Build Coastguard Worker // This 5-bit field describes the insn type. 109*9880d681SAndroid Build Coastguard Worker TypePos = 0, 110*9880d681SAndroid Build Coastguard Worker TypeMask = 0x1f, 111*9880d681SAndroid Build Coastguard Worker 112*9880d681SAndroid Build Coastguard Worker // Solo instructions. 113*9880d681SAndroid Build Coastguard Worker SoloPos = 5, 114*9880d681SAndroid Build Coastguard Worker SoloMask = 0x1, 115*9880d681SAndroid Build Coastguard Worker // Packed only with A or X-type instructions. 116*9880d681SAndroid Build Coastguard Worker SoloAXPos = 6, 117*9880d681SAndroid Build Coastguard Worker SoloAXMask = 0x1, 118*9880d681SAndroid Build Coastguard Worker // Only A-type instruction in first slot or nothing. 119*9880d681SAndroid Build Coastguard Worker SoloAin1Pos = 7, 120*9880d681SAndroid Build Coastguard Worker SoloAin1Mask = 0x1, 121*9880d681SAndroid Build Coastguard Worker 122*9880d681SAndroid Build Coastguard Worker // Predicated instructions. 123*9880d681SAndroid Build Coastguard Worker PredicatedPos = 8, 124*9880d681SAndroid Build Coastguard Worker PredicatedMask = 0x1, 125*9880d681SAndroid Build Coastguard Worker PredicatedFalsePos = 9, 126*9880d681SAndroid Build Coastguard Worker PredicatedFalseMask = 0x1, 127*9880d681SAndroid Build Coastguard Worker PredicatedNewPos = 10, 128*9880d681SAndroid Build Coastguard Worker PredicatedNewMask = 0x1, 129*9880d681SAndroid Build Coastguard Worker PredicateLatePos = 11, 130*9880d681SAndroid Build Coastguard Worker PredicateLateMask = 0x1, 131*9880d681SAndroid Build Coastguard Worker 132*9880d681SAndroid Build Coastguard Worker // New-Value consumer instructions. 133*9880d681SAndroid Build Coastguard Worker NewValuePos = 12, 134*9880d681SAndroid Build Coastguard Worker NewValueMask = 0x1, 135*9880d681SAndroid Build Coastguard Worker // New-Value producer instructions. 136*9880d681SAndroid Build Coastguard Worker hasNewValuePos = 13, 137*9880d681SAndroid Build Coastguard Worker hasNewValueMask = 0x1, 138*9880d681SAndroid Build Coastguard Worker // Which operand consumes or produces a new value. 139*9880d681SAndroid Build Coastguard Worker NewValueOpPos = 14, 140*9880d681SAndroid Build Coastguard Worker NewValueOpMask = 0x7, 141*9880d681SAndroid Build Coastguard Worker // Stores that can become new-value stores. 142*9880d681SAndroid Build Coastguard Worker mayNVStorePos = 17, 143*9880d681SAndroid Build Coastguard Worker mayNVStoreMask = 0x1, 144*9880d681SAndroid Build Coastguard Worker // New-value store instructions. 145*9880d681SAndroid Build Coastguard Worker NVStorePos = 18, 146*9880d681SAndroid Build Coastguard Worker NVStoreMask = 0x1, 147*9880d681SAndroid Build Coastguard Worker // Loads that can become current-value loads. 148*9880d681SAndroid Build Coastguard Worker mayCVLoadPos = 19, 149*9880d681SAndroid Build Coastguard Worker mayCVLoadMask = 0x1, 150*9880d681SAndroid Build Coastguard Worker // Current-value load instructions. 151*9880d681SAndroid Build Coastguard Worker CVLoadPos = 20, 152*9880d681SAndroid Build Coastguard Worker CVLoadMask = 0x1, 153*9880d681SAndroid Build Coastguard Worker 154*9880d681SAndroid Build Coastguard Worker // Extendable insns. 155*9880d681SAndroid Build Coastguard Worker ExtendablePos = 21, 156*9880d681SAndroid Build Coastguard Worker ExtendableMask = 0x1, 157*9880d681SAndroid Build Coastguard Worker // Insns must be extended. 158*9880d681SAndroid Build Coastguard Worker ExtendedPos = 22, 159*9880d681SAndroid Build Coastguard Worker ExtendedMask = 0x1, 160*9880d681SAndroid Build Coastguard Worker // Which operand may be extended. 161*9880d681SAndroid Build Coastguard Worker ExtendableOpPos = 23, 162*9880d681SAndroid Build Coastguard Worker ExtendableOpMask = 0x7, 163*9880d681SAndroid Build Coastguard Worker // Signed or unsigned range. 164*9880d681SAndroid Build Coastguard Worker ExtentSignedPos = 26, 165*9880d681SAndroid Build Coastguard Worker ExtentSignedMask = 0x1, 166*9880d681SAndroid Build Coastguard Worker // Number of bits of range before extending operand. 167*9880d681SAndroid Build Coastguard Worker ExtentBitsPos = 27, 168*9880d681SAndroid Build Coastguard Worker ExtentBitsMask = 0x1f, 169*9880d681SAndroid Build Coastguard Worker // Alignment power-of-two before extending operand. 170*9880d681SAndroid Build Coastguard Worker ExtentAlignPos = 32, 171*9880d681SAndroid Build Coastguard Worker ExtentAlignMask = 0x3, 172*9880d681SAndroid Build Coastguard Worker 173*9880d681SAndroid Build Coastguard Worker // Valid subtargets 174*9880d681SAndroid Build Coastguard Worker validSubTargetPos = 34, 175*9880d681SAndroid Build Coastguard Worker validSubTargetMask = 0xf, 176*9880d681SAndroid Build Coastguard Worker 177*9880d681SAndroid Build Coastguard Worker // Addressing mode for load/store instructions. 178*9880d681SAndroid Build Coastguard Worker AddrModePos = 40, 179*9880d681SAndroid Build Coastguard Worker AddrModeMask = 0x7, 180*9880d681SAndroid Build Coastguard Worker // Access size for load/store instructions. 181*9880d681SAndroid Build Coastguard Worker MemAccessSizePos = 43, 182*9880d681SAndroid Build Coastguard Worker MemAccesSizeMask = 0xf, 183*9880d681SAndroid Build Coastguard Worker 184*9880d681SAndroid Build Coastguard Worker // Branch predicted taken. 185*9880d681SAndroid Build Coastguard Worker TakenPos = 47, 186*9880d681SAndroid Build Coastguard Worker TakenMask = 0x1, 187*9880d681SAndroid Build Coastguard Worker 188*9880d681SAndroid Build Coastguard Worker // Floating-point instructions. 189*9880d681SAndroid Build Coastguard Worker FPPos = 48, 190*9880d681SAndroid Build Coastguard Worker FPMask = 0x1, 191*9880d681SAndroid Build Coastguard Worker 192*9880d681SAndroid Build Coastguard Worker // New-Value producer-2 instructions. 193*9880d681SAndroid Build Coastguard Worker hasNewValuePos2 = 50, 194*9880d681SAndroid Build Coastguard Worker hasNewValueMask2 = 0x1, 195*9880d681SAndroid Build Coastguard Worker 196*9880d681SAndroid Build Coastguard Worker // Which operand consumes or produces a new value. 197*9880d681SAndroid Build Coastguard Worker NewValueOpPos2 = 51, 198*9880d681SAndroid Build Coastguard Worker NewValueOpMask2 = 0x7, 199*9880d681SAndroid Build Coastguard Worker 200*9880d681SAndroid Build Coastguard Worker // Accumulator instructions. 201*9880d681SAndroid Build Coastguard Worker AccumulatorPos = 54, 202*9880d681SAndroid Build Coastguard Worker AccumulatorMask = 0x1, 203*9880d681SAndroid Build Coastguard Worker 204*9880d681SAndroid Build Coastguard Worker // Complex XU, prevent xu competition by prefering slot3 205*9880d681SAndroid Build Coastguard Worker PrefersSlot3Pos = 55, 206*9880d681SAndroid Build Coastguard Worker PrefersSlot3Mask = 0x1, 207*9880d681SAndroid Build Coastguard Worker }; 208*9880d681SAndroid Build Coastguard Worker 209*9880d681SAndroid Build Coastguard Worker // *** The code above must match HexagonInstrFormat*.td *** // 210*9880d681SAndroid Build Coastguard Worker 211*9880d681SAndroid Build Coastguard Worker // Hexagon specific MO operand flag mask. 212*9880d681SAndroid Build Coastguard Worker enum HexagonMOTargetFlagVal { 213*9880d681SAndroid Build Coastguard Worker //===------------------------------------------------------------------===// 214*9880d681SAndroid Build Coastguard Worker // Hexagon Specific MachineOperand flags. 215*9880d681SAndroid Build Coastguard Worker MO_NO_FLAG, 216*9880d681SAndroid Build Coastguard Worker 217*9880d681SAndroid Build Coastguard Worker HMOTF_ConstExtended = 1, 218*9880d681SAndroid Build Coastguard Worker 219*9880d681SAndroid Build Coastguard Worker /// MO_PCREL - On a symbol operand, indicates a PC-relative relocation 220*9880d681SAndroid Build Coastguard Worker /// Used for computing a global address for PIC compilations 221*9880d681SAndroid Build Coastguard Worker MO_PCREL, 222*9880d681SAndroid Build Coastguard Worker 223*9880d681SAndroid Build Coastguard Worker /// MO_GOT - Indicates a GOT-relative relocation 224*9880d681SAndroid Build Coastguard Worker MO_GOT, 225*9880d681SAndroid Build Coastguard Worker 226*9880d681SAndroid Build Coastguard Worker // Low or high part of a symbol. 227*9880d681SAndroid Build Coastguard Worker MO_LO16, MO_HI16, 228*9880d681SAndroid Build Coastguard Worker 229*9880d681SAndroid Build Coastguard Worker // Offset from the base of the SDA. 230*9880d681SAndroid Build Coastguard Worker MO_GPREL, 231*9880d681SAndroid Build Coastguard Worker 232*9880d681SAndroid Build Coastguard Worker // MO_GDGOT - indicates GOT relative relocation for TLS 233*9880d681SAndroid Build Coastguard Worker // GeneralDynamic method 234*9880d681SAndroid Build Coastguard Worker MO_GDGOT, 235*9880d681SAndroid Build Coastguard Worker 236*9880d681SAndroid Build Coastguard Worker // MO_GDPLT - indicates PLT relative relocation for TLS 237*9880d681SAndroid Build Coastguard Worker // GeneralDynamic method 238*9880d681SAndroid Build Coastguard Worker MO_GDPLT, 239*9880d681SAndroid Build Coastguard Worker 240*9880d681SAndroid Build Coastguard Worker // MO_IE - indicates non PIC relocation for TLS 241*9880d681SAndroid Build Coastguard Worker // Initial Executable method 242*9880d681SAndroid Build Coastguard Worker MO_IE, 243*9880d681SAndroid Build Coastguard Worker 244*9880d681SAndroid Build Coastguard Worker // MO_IEGOT - indicates PIC relocation for TLS 245*9880d681SAndroid Build Coastguard Worker // Initial Executable method 246*9880d681SAndroid Build Coastguard Worker MO_IEGOT, 247*9880d681SAndroid Build Coastguard Worker 248*9880d681SAndroid Build Coastguard Worker // MO_TPREL - indicates relocation for TLS 249*9880d681SAndroid Build Coastguard Worker // local Executable method 250*9880d681SAndroid Build Coastguard Worker MO_TPREL 251*9880d681SAndroid Build Coastguard Worker }; 252*9880d681SAndroid Build Coastguard Worker 253*9880d681SAndroid Build Coastguard Worker // Hexagon Sub-instruction classes. 254*9880d681SAndroid Build Coastguard Worker enum SubInstructionGroup { 255*9880d681SAndroid Build Coastguard Worker HSIG_None = 0, 256*9880d681SAndroid Build Coastguard Worker HSIG_L1, 257*9880d681SAndroid Build Coastguard Worker HSIG_L2, 258*9880d681SAndroid Build Coastguard Worker HSIG_S1, 259*9880d681SAndroid Build Coastguard Worker HSIG_S2, 260*9880d681SAndroid Build Coastguard Worker HSIG_A, 261*9880d681SAndroid Build Coastguard Worker HSIG_Compound 262*9880d681SAndroid Build Coastguard Worker }; 263*9880d681SAndroid Build Coastguard Worker 264*9880d681SAndroid Build Coastguard Worker // Hexagon Compound classes. 265*9880d681SAndroid Build Coastguard Worker enum CompoundGroup { 266*9880d681SAndroid Build Coastguard Worker HCG_None = 0, 267*9880d681SAndroid Build Coastguard Worker HCG_A, 268*9880d681SAndroid Build Coastguard Worker HCG_B, 269*9880d681SAndroid Build Coastguard Worker HCG_C 270*9880d681SAndroid Build Coastguard Worker }; 271*9880d681SAndroid Build Coastguard Worker 272*9880d681SAndroid Build Coastguard Worker enum InstParseBits { 273*9880d681SAndroid Build Coastguard Worker INST_PARSE_MASK = 0x0000c000, 274*9880d681SAndroid Build Coastguard Worker INST_PARSE_PACKET_END = 0x0000c000, 275*9880d681SAndroid Build Coastguard Worker INST_PARSE_LOOP_END = 0x00008000, 276*9880d681SAndroid Build Coastguard Worker INST_PARSE_NOT_END = 0x00004000, 277*9880d681SAndroid Build Coastguard Worker INST_PARSE_DUPLEX = 0x00000000, 278*9880d681SAndroid Build Coastguard Worker INST_PARSE_EXTENDER = 0x00000000 279*9880d681SAndroid Build Coastguard Worker }; 280*9880d681SAndroid Build Coastguard Worker 281*9880d681SAndroid Build Coastguard Worker enum InstIClassBits : unsigned { 282*9880d681SAndroid Build Coastguard Worker INST_ICLASS_MASK = 0xf0000000, 283*9880d681SAndroid Build Coastguard Worker INST_ICLASS_EXTENDER = 0x00000000, 284*9880d681SAndroid Build Coastguard Worker INST_ICLASS_J_1 = 0x10000000, 285*9880d681SAndroid Build Coastguard Worker INST_ICLASS_J_2 = 0x20000000, 286*9880d681SAndroid Build Coastguard Worker INST_ICLASS_LD_ST_1 = 0x30000000, 287*9880d681SAndroid Build Coastguard Worker INST_ICLASS_LD_ST_2 = 0x40000000, 288*9880d681SAndroid Build Coastguard Worker INST_ICLASS_J_3 = 0x50000000, 289*9880d681SAndroid Build Coastguard Worker INST_ICLASS_CR = 0x60000000, 290*9880d681SAndroid Build Coastguard Worker INST_ICLASS_ALU32_1 = 0x70000000, 291*9880d681SAndroid Build Coastguard Worker INST_ICLASS_XTYPE_1 = 0x80000000, 292*9880d681SAndroid Build Coastguard Worker INST_ICLASS_LD = 0x90000000, 293*9880d681SAndroid Build Coastguard Worker INST_ICLASS_ST = 0xa0000000, 294*9880d681SAndroid Build Coastguard Worker INST_ICLASS_ALU32_2 = 0xb0000000, 295*9880d681SAndroid Build Coastguard Worker INST_ICLASS_XTYPE_2 = 0xc0000000, 296*9880d681SAndroid Build Coastguard Worker INST_ICLASS_XTYPE_3 = 0xd0000000, 297*9880d681SAndroid Build Coastguard Worker INST_ICLASS_XTYPE_4 = 0xe0000000, 298*9880d681SAndroid Build Coastguard Worker INST_ICLASS_ALU32_3 = 0xf0000000 299*9880d681SAndroid Build Coastguard Worker }; 300*9880d681SAndroid Build Coastguard Worker 301*9880d681SAndroid Build Coastguard Worker } // End namespace HexagonII. 302*9880d681SAndroid Build Coastguard Worker 303*9880d681SAndroid Build Coastguard Worker } // End namespace llvm. 304*9880d681SAndroid Build Coastguard Worker 305*9880d681SAndroid Build Coastguard Worker #endif 306