diff --git a/llvm/include/llvm/BinaryFormat/ELF.h b/llvm/include/llvm/BinaryFormat/ELF.h index 1f3cea4bd1ae6..d6d23d9df99de 100644 --- a/llvm/include/llvm/BinaryFormat/ELF.h +++ b/llvm/include/llvm/BinaryFormat/ELF.h @@ -613,33 +613,7 @@ enum { // Hexagon-specific e_flags enum { - // Object processor version flags, bits[11:0] - EF_HEXAGON_MACH_V2 = 0x00000001, // Hexagon V2 - EF_HEXAGON_MACH_V3 = 0x00000002, // Hexagon V3 - EF_HEXAGON_MACH_V4 = 0x00000003, // Hexagon V4 - EF_HEXAGON_MACH_V5 = 0x00000004, // Hexagon V5 - EF_HEXAGON_MACH_V55 = 0x00000005, // Hexagon V55 - EF_HEXAGON_MACH_V60 = 0x00000060, // Hexagon V60 - EF_HEXAGON_MACH_V61 = 0x00000061, // Hexagon V61 - EF_HEXAGON_MACH_V62 = 0x00000062, // Hexagon V62 - EF_HEXAGON_MACH_V65 = 0x00000065, // Hexagon V65 - EF_HEXAGON_MACH_V66 = 0x00000066, // Hexagon V66 - EF_HEXAGON_MACH_V67 = 0x00000067, // Hexagon V67 - EF_HEXAGON_MACH_V67T = 0x00008067, // Hexagon V67T - EF_HEXAGON_MACH_V68 = 0x00000068, // Hexagon V68 - EF_HEXAGON_MACH_V69 = 0x00000069, // Hexagon V69 - EF_HEXAGON_MACH_V71 = 0x00000071, // Hexagon V71 - EF_HEXAGON_MACH_V71T = 0x00008071, // Hexagon V71T - EF_HEXAGON_MACH_V73 = 0x00000073, // Hexagon V73 - EF_HEXAGON_MACH_V75 = 0x00000075, // Hexagon V75 - EF_HEXAGON_MACH_V77 = 0x00000077, // Hexagon V77 - EF_HEXAGON_MACH_V79 = 0x00000079, // Hexagon V79 - EF_HEXAGON_MACH_V81 = 0x00000081, // Hexagon V81 - EF_HEXAGON_MACH_V83 = 0x00000083, // Hexagon V83 - EF_HEXAGON_MACH_V85 = 0x00000085, // Hexagon V85 - EF_HEXAGON_MACH = 0x000003ff, // Hexagon V.. - - // Highest ISA version flags + // Hexagon ISA version, bits[11:0] EF_HEXAGON_ISA_MACH = 0x00000000, // Same as specified in bits[11:0] // of e_flags EF_HEXAGON_ISA_V2 = 0x00000010, // Hexagon V2 ISA @@ -663,7 +637,43 @@ enum { EF_HEXAGON_ISA_V81 = 0x00000081, // Hexagon V81 ISA EF_HEXAGON_ISA_V83 = 0x00000083, // Hexagon V83 ISA EF_HEXAGON_ISA_V85 = 0x00000085, // Hexagon V85 ISA + EF_HEXAGON_ISA_V87 = 0x00000087, // Hexagon V87 ISA + EF_HEXAGON_ISA_V89 = 0x00000089, // Hexagon V89 ISA EF_HEXAGON_ISA = 0x000003ff, // Hexagon V.. ISA + + // Tiny core flag, bit[15] + EF_HEXAGON_TINY_CORE = 0x00008000, // Hexagon Tiny Core + + // Hexagon processor version, bits[15:0] + EF_HEXAGON_MACH_V2 = 0x00000001, // Hexagon V2 + EF_HEXAGON_MACH_V3 = 0x00000002, // Hexagon V3 + EF_HEXAGON_MACH_V4 = 0x00000003, // Hexagon V4 + EF_HEXAGON_MACH_V5 = 0x00000004, // Hexagon V5 + EF_HEXAGON_MACH_V55 = 0x00000005, // Hexagon V55 + EF_HEXAGON_MACH_V60 = EF_HEXAGON_ISA_V60, // Hexagon V60 + EF_HEXAGON_MACH_V61 = EF_HEXAGON_ISA_V61, // Hexagon V61 + EF_HEXAGON_MACH_V62 = EF_HEXAGON_ISA_V62, // Hexagon V62 + EF_HEXAGON_MACH_V65 = EF_HEXAGON_ISA_V65, // Hexagon V65 + EF_HEXAGON_MACH_V66 = EF_HEXAGON_ISA_V66, // Hexagon V66 + EF_HEXAGON_MACH_V67 = EF_HEXAGON_ISA_V67, // Hexagon V67 + EF_HEXAGON_MACH_V67T = + EF_HEXAGON_ISA_V67 | EF_HEXAGON_TINY_CORE, // Hexagon V67T + EF_HEXAGON_MACH_V68 = EF_HEXAGON_ISA_V68, // Hexagon V68 + EF_HEXAGON_MACH_V69 = EF_HEXAGON_ISA_V69, // Hexagon V69 + EF_HEXAGON_MACH_V71 = EF_HEXAGON_ISA_V71, // Hexagon V71 + EF_HEXAGON_MACH_V71T = + EF_HEXAGON_ISA_V71 | EF_HEXAGON_TINY_CORE, // Hexagon V71T + EF_HEXAGON_MACH_V73 = EF_HEXAGON_ISA_V73, // Hexagon V73 + EF_HEXAGON_MACH_V75 = EF_HEXAGON_ISA_V75, // Hexagon V75 + EF_HEXAGON_MACH_V77 = EF_HEXAGON_ISA_V77, // Hexagon V77 + EF_HEXAGON_MACH_V79 = EF_HEXAGON_ISA_V79, // Hexagon V79 + EF_HEXAGON_MACH_V81 = EF_HEXAGON_ISA_V81, // Hexagon V81 + EF_HEXAGON_MACH_V83 = EF_HEXAGON_ISA_V83, // Hexagon V83 + EF_HEXAGON_MACH_V85 = EF_HEXAGON_ISA_V85, // Hexagon V85 + EF_HEXAGON_MACH_V87 = EF_HEXAGON_ISA_V87, // Hexagon V87 + EF_HEXAGON_MACH_V89 = EF_HEXAGON_ISA_V89, // Hexagon V89 + + EF_HEXAGON_MACH = 0x0000ffff, // Hexagon V.. }; // Hexagon-specific section indexes for common small data