Skip to content

Commit c8525f4

Browse files
committed
[Hexagon] Hexagon ELF flags cleanup
Define Hexagon processor version based on the ISA version and the Tiny flag. Change EF_HEXAGON_MACH to include all bits that define the processor version. Make minor stylistic changes to related comments.
1 parent b2e2ae8 commit c8525f4

File tree

1 file changed

+33
-27
lines changed
  • llvm/include/llvm/BinaryFormat

1 file changed

+33
-27
lines changed

llvm/include/llvm/BinaryFormat/ELF.h

Lines changed: 33 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -613,33 +613,7 @@ enum {
613613

614614
// Hexagon-specific e_flags
615615
enum {
616-
// Object processor version flags, bits[11:0]
617-
EF_HEXAGON_MACH_V2 = 0x00000001, // Hexagon V2
618-
EF_HEXAGON_MACH_V3 = 0x00000002, // Hexagon V3
619-
EF_HEXAGON_MACH_V4 = 0x00000003, // Hexagon V4
620-
EF_HEXAGON_MACH_V5 = 0x00000004, // Hexagon V5
621-
EF_HEXAGON_MACH_V55 = 0x00000005, // Hexagon V55
622-
EF_HEXAGON_MACH_V60 = 0x00000060, // Hexagon V60
623-
EF_HEXAGON_MACH_V61 = 0x00000061, // Hexagon V61
624-
EF_HEXAGON_MACH_V62 = 0x00000062, // Hexagon V62
625-
EF_HEXAGON_MACH_V65 = 0x00000065, // Hexagon V65
626-
EF_HEXAGON_MACH_V66 = 0x00000066, // Hexagon V66
627-
EF_HEXAGON_MACH_V67 = 0x00000067, // Hexagon V67
628-
EF_HEXAGON_MACH_V67T = 0x00008067, // Hexagon V67T
629-
EF_HEXAGON_MACH_V68 = 0x00000068, // Hexagon V68
630-
EF_HEXAGON_MACH_V69 = 0x00000069, // Hexagon V69
631-
EF_HEXAGON_MACH_V71 = 0x00000071, // Hexagon V71
632-
EF_HEXAGON_MACH_V71T = 0x00008071, // Hexagon V71T
633-
EF_HEXAGON_MACH_V73 = 0x00000073, // Hexagon V73
634-
EF_HEXAGON_MACH_V75 = 0x00000075, // Hexagon V75
635-
EF_HEXAGON_MACH_V77 = 0x00000077, // Hexagon V77
636-
EF_HEXAGON_MACH_V79 = 0x00000079, // Hexagon V79
637-
EF_HEXAGON_MACH_V81 = 0x00000081, // Hexagon V81
638-
EF_HEXAGON_MACH_V83 = 0x00000083, // Hexagon V83
639-
EF_HEXAGON_MACH_V85 = 0x00000085, // Hexagon V85
640-
EF_HEXAGON_MACH = 0x000003ff, // Hexagon V..
641-
642-
// Highest ISA version flags
616+
// Hexagon ISA version, bits[11:0]
643617
EF_HEXAGON_ISA_MACH = 0x00000000, // Same as specified in bits[11:0]
644618
// of e_flags
645619
EF_HEXAGON_ISA_V2 = 0x00000010, // Hexagon V2 ISA
@@ -664,6 +638,38 @@ enum {
664638
EF_HEXAGON_ISA_V83 = 0x00000083, // Hexagon V83 ISA
665639
EF_HEXAGON_ISA_V85 = 0x00000085, // Hexagon V85 ISA
666640
EF_HEXAGON_ISA = 0x000003ff, // Hexagon V.. ISA
641+
642+
// Tiny core flag, bit[15]
643+
EF_HEXAGON_TINY_CORE = 0x00008000, // Hexagon Tiny Core
644+
645+
// Hexagon processor version, bits[15:0]
646+
EF_HEXAGON_MACH_V2 = 0x00000001, // Hexagon V2
647+
EF_HEXAGON_MACH_V3 = 0x00000002, // Hexagon V3
648+
EF_HEXAGON_MACH_V4 = 0x00000003, // Hexagon V4
649+
EF_HEXAGON_MACH_V5 = 0x00000004, // Hexagon V5
650+
EF_HEXAGON_MACH_V55 = 0x00000005, // Hexagon V55
651+
EF_HEXAGON_MACH_V60 = EF_HEXAGON_ISA_V60, // Hexagon V60
652+
EF_HEXAGON_MACH_V61 = EF_HEXAGON_ISA_V61, // Hexagon V61
653+
EF_HEXAGON_MACH_V62 = EF_HEXAGON_ISA_V62, // Hexagon V62
654+
EF_HEXAGON_MACH_V65 = EF_HEXAGON_ISA_V65, // Hexagon V65
655+
EF_HEXAGON_MACH_V66 = EF_HEXAGON_ISA_V66, // Hexagon V66
656+
EF_HEXAGON_MACH_V67 = EF_HEXAGON_ISA_V67, // Hexagon V67
657+
EF_HEXAGON_MACH_V67T =
658+
EF_HEXAGON_ISA_V67 | EF_HEXAGON_TINY_CORE, // Hexagon V67T
659+
EF_HEXAGON_MACH_V68 = EF_HEXAGON_ISA_V68, // Hexagon V68
660+
EF_HEXAGON_MACH_V69 = EF_HEXAGON_ISA_V69, // Hexagon V69
661+
EF_HEXAGON_MACH_V71 = EF_HEXAGON_ISA_V71, // Hexagon V71
662+
EF_HEXAGON_MACH_V71T =
663+
EF_HEXAGON_ISA_V71 | EF_HEXAGON_TINY_CORE, // Hexagon V71T
664+
EF_HEXAGON_MACH_V73 = EF_HEXAGON_ISA_V73, // Hexagon V73
665+
EF_HEXAGON_MACH_V75 = EF_HEXAGON_ISA_V75, // Hexagon V75
666+
EF_HEXAGON_MACH_V77 = EF_HEXAGON_ISA_V77, // Hexagon V77
667+
EF_HEXAGON_MACH_V79 = EF_HEXAGON_ISA_V79, // Hexagon V79
668+
EF_HEXAGON_MACH_V81 = EF_HEXAGON_ISA_V81, // Hexagon V81
669+
EF_HEXAGON_MACH_V83 = EF_HEXAGON_ISA_V83, // Hexagon V83
670+
EF_HEXAGON_MACH_V85 = EF_HEXAGON_ISA_V85, // Hexagon V85
671+
672+
EF_HEXAGON_MACH = 0x0000ffff, // Hexagon V..
667673
};
668674

669675
// Hexagon-specific section indexes for common small data

0 commit comments

Comments
 (0)