@@ -1558,139 +1558,139 @@ const EnumEntry<unsigned> ElfHeaderMipsFlags[] = {
1558
1558
};
1559
1559
1560
1560
const EnumEntry<unsigned > ElfHeaderAMDGPUFlagsABIVersion3[] = {
1561
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_NONE ),
1562
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_R600 ),
1563
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_R630 ),
1564
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_RS880 ),
1565
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_RV670 ),
1566
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_RV710 ),
1567
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_RV730 ),
1568
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_RV770 ),
1569
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_CEDAR ),
1570
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_CYPRESS ),
1571
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_JUNIPER ),
1572
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_REDWOOD ),
1573
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_SUMO ),
1574
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_BARTS ),
1575
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_CAICOS ),
1576
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_CAYMAN ),
1577
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_TURKS ),
1578
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX600 ),
1579
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX601 ),
1580
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX602 ),
1581
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX700 ),
1582
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX701 ),
1583
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX702 ),
1584
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX703 ),
1585
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX704 ),
1586
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX705 ),
1587
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX801 ),
1588
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX802 ),
1589
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX803 ),
1590
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX805 ),
1591
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX810 ),
1592
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX900 ),
1593
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX902 ),
1594
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX904 ),
1595
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX906 ),
1596
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX908 ),
1597
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX909 ),
1598
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX90A ),
1599
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX90C ),
1600
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX940 ),
1601
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX941 ),
1602
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX942 ),
1603
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1010 ),
1604
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1011 ),
1605
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1012 ),
1606
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1013 ),
1607
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1030 ),
1608
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1031 ),
1609
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1032 ),
1610
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1033 ),
1611
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1034 ),
1612
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1035 ),
1613
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1036 ),
1614
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1100 ),
1615
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1101 ),
1616
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1102 ),
1617
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1103 ),
1618
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1150 ),
1619
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1151 ),
1620
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1200 ),
1621
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1201 ),
1622
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_FEATURE_XNACK_V3 ),
1623
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_FEATURE_SRAMECC_V3 ),
1561
+ ENUM_ENT (EF_AMDGPU_MACH_NONE, " none " ),
1562
+ ENUM_ENT (EF_AMDGPU_MACH_R600_R600, " r600 " ),
1563
+ ENUM_ENT (EF_AMDGPU_MACH_R600_R630, " r630 " ),
1564
+ ENUM_ENT (EF_AMDGPU_MACH_R600_RS880, " rs880 " ),
1565
+ ENUM_ENT (EF_AMDGPU_MACH_R600_RV670, " rv670 " ),
1566
+ ENUM_ENT (EF_AMDGPU_MACH_R600_RV710, " rv710 " ),
1567
+ ENUM_ENT (EF_AMDGPU_MACH_R600_RV730, " rv730 " ),
1568
+ ENUM_ENT (EF_AMDGPU_MACH_R600_RV770, " rv770 " ),
1569
+ ENUM_ENT (EF_AMDGPU_MACH_R600_CEDAR, " cedar " ),
1570
+ ENUM_ENT (EF_AMDGPU_MACH_R600_CYPRESS, " cypress " ),
1571
+ ENUM_ENT (EF_AMDGPU_MACH_R600_JUNIPER, " juniper " ),
1572
+ ENUM_ENT (EF_AMDGPU_MACH_R600_REDWOOD, " redwood " ),
1573
+ ENUM_ENT (EF_AMDGPU_MACH_R600_SUMO, " sumo " ),
1574
+ ENUM_ENT (EF_AMDGPU_MACH_R600_BARTS, " barts " ),
1575
+ ENUM_ENT (EF_AMDGPU_MACH_R600_CAICOS, " caicos " ),
1576
+ ENUM_ENT (EF_AMDGPU_MACH_R600_CAYMAN, " cayman " ),
1577
+ ENUM_ENT (EF_AMDGPU_MACH_R600_TURKS, " turks " ),
1578
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX600, " gfx600 " ),
1579
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX601, " gfx601 " ),
1580
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX602, " gfx602 " ),
1581
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX700, " gfx700 " ),
1582
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX701, " gfx701 " ),
1583
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX702, " gfx702 " ),
1584
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX703, " gfx703 " ),
1585
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX704, " gfx704 " ),
1586
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX705, " gfx705 " ),
1587
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX801, " gfx801 " ),
1588
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX802, " gfx802 " ),
1589
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX803, " gfx803 " ),
1590
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX805, " gfx805 " ),
1591
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX810, " gfx810 " ),
1592
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX900, " gfx900 " ),
1593
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX902, " gfx902 " ),
1594
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX904, " gfx904 " ),
1595
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX906, " gfx906 " ),
1596
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX908, " gfx908 " ),
1597
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX909, " gfx909 " ),
1598
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX90A, " gfx90a " ),
1599
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX90C, " gfx90c " ),
1600
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX940, " gfx940 " ),
1601
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX941, " gfx941 " ),
1602
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX942, " gfx942 " ),
1603
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1010, " gfx1010 " ),
1604
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1011, " gfx1011 " ),
1605
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1012, " gfx1012 " ),
1606
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1013, " gfx1013 " ),
1607
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1030, " gfx1030 " ),
1608
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1031, " gfx1031 " ),
1609
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1032, " gfx1032 " ),
1610
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1033, " gfx1033 " ),
1611
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1034, " gfx1034 " ),
1612
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1035, " gfx1035 " ),
1613
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1036, " gfx1036 " ),
1614
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1100, " gfx1100 " ),
1615
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1101, " gfx1101 " ),
1616
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1102, " gfx1102 " ),
1617
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1103, " gfx1103 " ),
1618
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1150, " gfx1150 " ),
1619
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1151, " gfx1151 " ),
1620
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1200, " gfx1200 " ),
1621
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1201, " gfx1201 " ),
1622
+ ENUM_ENT (EF_AMDGPU_FEATURE_XNACK_V3, " xnack " ),
1623
+ ENUM_ENT (EF_AMDGPU_FEATURE_SRAMECC_V3, " sramecc " ),
1624
1624
};
1625
1625
1626
1626
const EnumEntry<unsigned > ElfHeaderAMDGPUFlagsABIVersion4[] = {
1627
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_NONE ),
1628
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_R600 ),
1629
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_R630 ),
1630
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_RS880 ),
1631
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_RV670 ),
1632
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_RV710 ),
1633
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_RV730 ),
1634
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_RV770 ),
1635
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_CEDAR ),
1636
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_CYPRESS ),
1637
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_JUNIPER ),
1638
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_REDWOOD ),
1639
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_SUMO ),
1640
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_BARTS ),
1641
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_CAICOS ),
1642
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_CAYMAN ),
1643
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_R600_TURKS ),
1644
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX600 ),
1645
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX601 ),
1646
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX602 ),
1647
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX700 ),
1648
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX701 ),
1649
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX702 ),
1650
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX703 ),
1651
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX704 ),
1652
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX705 ),
1653
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX801 ),
1654
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX802 ),
1655
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX803 ),
1656
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX805 ),
1657
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX810 ),
1658
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX900 ),
1659
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX902 ),
1660
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX904 ),
1661
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX906 ),
1662
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX908 ),
1663
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX909 ),
1664
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX90A ),
1665
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX90C ),
1666
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX940 ),
1667
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX941 ),
1668
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX942 ),
1669
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1010 ),
1670
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1011 ),
1671
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1012 ),
1672
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1013 ),
1673
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1030 ),
1674
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1031 ),
1675
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1032 ),
1676
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1033 ),
1677
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1034 ),
1678
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1035 ),
1679
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1036 ),
1680
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1100 ),
1681
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1101 ),
1682
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1102 ),
1683
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1103 ),
1684
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1150 ),
1685
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1151 ),
1686
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1200 ),
1687
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_MACH_AMDGCN_GFX1201 ),
1688
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_FEATURE_XNACK_ANY_V4 ),
1689
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_FEATURE_XNACK_OFF_V4 ),
1690
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_FEATURE_XNACK_ON_V4 ),
1691
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_FEATURE_SRAMECC_ANY_V4 ),
1692
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_FEATURE_SRAMECC_OFF_V4 ),
1693
- LLVM_READOBJ_ENUM_ENT (ELF, EF_AMDGPU_FEATURE_SRAMECC_ON_V4 ),
1627
+ ENUM_ENT (EF_AMDGPU_MACH_NONE, " none " ),
1628
+ ENUM_ENT (EF_AMDGPU_MACH_R600_R600, " r600 " ),
1629
+ ENUM_ENT (EF_AMDGPU_MACH_R600_R630, " r630 " ),
1630
+ ENUM_ENT (EF_AMDGPU_MACH_R600_RS880, " rs880 " ),
1631
+ ENUM_ENT (EF_AMDGPU_MACH_R600_RV670, " rv670 " ),
1632
+ ENUM_ENT (EF_AMDGPU_MACH_R600_RV710, " rv710 " ),
1633
+ ENUM_ENT (EF_AMDGPU_MACH_R600_RV730, " rv730 " ),
1634
+ ENUM_ENT (EF_AMDGPU_MACH_R600_RV770, " rv770 " ),
1635
+ ENUM_ENT (EF_AMDGPU_MACH_R600_CEDAR, " cedar " ),
1636
+ ENUM_ENT (EF_AMDGPU_MACH_R600_CYPRESS, " cypress " ),
1637
+ ENUM_ENT (EF_AMDGPU_MACH_R600_JUNIPER, " juniper " ),
1638
+ ENUM_ENT (EF_AMDGPU_MACH_R600_REDWOOD, " redwood " ),
1639
+ ENUM_ENT (EF_AMDGPU_MACH_R600_SUMO, " sumo " ),
1640
+ ENUM_ENT (EF_AMDGPU_MACH_R600_BARTS, " barts " ),
1641
+ ENUM_ENT (EF_AMDGPU_MACH_R600_CAICOS, " caicos " ),
1642
+ ENUM_ENT (EF_AMDGPU_MACH_R600_CAYMAN, " cayman " ),
1643
+ ENUM_ENT (EF_AMDGPU_MACH_R600_TURKS, " turks " ),
1644
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX600, " gfx600 " ),
1645
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX601, " gfx601 " ),
1646
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX602, " gfx602 " ),
1647
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX700, " gfx700 " ),
1648
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX701, " gfx701 " ),
1649
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX702, " gfx702 " ),
1650
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX703, " gfx703 " ),
1651
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX704, " gfx704 " ),
1652
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX705, " gfx705 " ),
1653
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX801, " gfx801 " ),
1654
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX802, " gfx802 " ),
1655
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX803, " gfx803 " ),
1656
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX805, " gfx805 " ),
1657
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX810, " gfx810 " ),
1658
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX900, " gfx900 " ),
1659
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX902, " gfx902 " ),
1660
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX904, " gfx904 " ),
1661
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX906, " gfx906 " ),
1662
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX908, " gfx908 " ),
1663
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX909, " gfx909 " ),
1664
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX90A, " gfx90a " ),
1665
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX90C, " gfx90c " ),
1666
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX940, " gfx940 " ),
1667
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX941, " gfx941 " ),
1668
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX942, " gfx942 " ),
1669
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1010, " gfx1010 " ),
1670
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1011, " gfx1011 " ),
1671
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1012, " gfx1012 " ),
1672
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1013, " gfx1013 " ),
1673
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1030, " gfx1030 " ),
1674
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1031, " gfx1031 " ),
1675
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1032, " gfx1032 " ),
1676
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1033, " gfx1033 " ),
1677
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1034, " gfx1034 " ),
1678
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1035, " gfx1035 " ),
1679
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1036, " gfx1036 " ),
1680
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1100, " gfx1100 " ),
1681
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1101, " gfx1101 " ),
1682
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1102, " gfx1102 " ),
1683
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1103, " gfx1103 " ),
1684
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1150, " gfx1150 " ),
1685
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1151, " gfx1151 " ),
1686
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1200, " gfx1200 " ),
1687
+ ENUM_ENT (EF_AMDGPU_MACH_AMDGCN_GFX1201, " gfx1201 " ),
1688
+ ENUM_ENT (EF_AMDGPU_FEATURE_XNACK_ANY_V4, " xnack " ),
1689
+ ENUM_ENT (EF_AMDGPU_FEATURE_XNACK_OFF_V4, " xnack- " ),
1690
+ ENUM_ENT (EF_AMDGPU_FEATURE_XNACK_ON_V4, " xnack+ " ),
1691
+ ENUM_ENT (EF_AMDGPU_FEATURE_SRAMECC_ANY_V4, " sramecc " ),
1692
+ ENUM_ENT (EF_AMDGPU_FEATURE_SRAMECC_OFF_V4, " sramecc- " ),
1693
+ ENUM_ENT (EF_AMDGPU_FEATURE_SRAMECC_ON_V4, " sramecc+ " ),
1694
1694
};
1695
1695
1696
1696
const EnumEntry<unsigned > ElfHeaderNVPTXFlags[] = {
@@ -3599,7 +3599,18 @@ template <class ELFT> void GNUELFDumper<ELFT>::printFileHeaders() {
3599
3599
if (e.e_version == ELF::EV_CURRENT)
3600
3600
OS << " (current)" ;
3601
3601
OS << " \n " ;
3602
- Str = enumToString (e.e_ident [ELF::EI_OSABI], ArrayRef (ElfOSABI));
3602
+ auto OSABI = ArrayRef (ElfOSABI);
3603
+ if (e.e_ident [ELF::EI_OSABI] >= ELF::ELFOSABI_FIRST_ARCH &&
3604
+ e.e_ident [ELF::EI_OSABI] <= ELF::ELFOSABI_LAST_ARCH) {
3605
+ switch (e.e_machine ) {
3606
+ case ELF::EM_AMDGPU:
3607
+ OSABI = ArrayRef (AMDGPUElfOSABI);
3608
+ break ;
3609
+ default :
3610
+ break ;
3611
+ }
3612
+ }
3613
+ Str = enumToString (e.e_ident [ELF::EI_OSABI], OSABI);
3603
3614
printFields (OS, " OS/ABI:" , Str);
3604
3615
printFields (OS,
3605
3616
" ABI Version:" , std::to_string (e.e_ident [ELF::EI_ABIVERSION]));
@@ -3646,6 +3657,28 @@ template <class ELFT> void GNUELFDumper<ELFT>::printFileHeaders() {
3646
3657
else if (e.e_machine == EM_CUDA)
3647
3658
ElfFlags = printFlags (e.e_flags , ArrayRef (ElfHeaderNVPTXFlags),
3648
3659
unsigned (ELF::EF_CUDA_SM));
3660
+ else if (e.e_machine == EM_AMDGPU) {
3661
+ switch (e.e_ident [ELF::EI_ABIVERSION]) {
3662
+ default :
3663
+ break ;
3664
+ case 0 :
3665
+ // ELFOSABI_AMDGPU_PAL, ELFOSABI_AMDGPU_MESA3D support *_V3 flags.
3666
+ [[fallthrough]];
3667
+ case ELF::ELFABIVERSION_AMDGPU_HSA_V3:
3668
+ ElfFlags =
3669
+ printFlags (e.e_flags , ArrayRef (ElfHeaderAMDGPUFlagsABIVersion3),
3670
+ unsigned (ELF::EF_AMDGPU_MACH));
3671
+ break ;
3672
+ case ELF::ELFABIVERSION_AMDGPU_HSA_V4:
3673
+ case ELF::ELFABIVERSION_AMDGPU_HSA_V5:
3674
+ ElfFlags =
3675
+ printFlags (e.e_flags , ArrayRef (ElfHeaderAMDGPUFlagsABIVersion4),
3676
+ unsigned (ELF::EF_AMDGPU_MACH),
3677
+ unsigned (ELF::EF_AMDGPU_FEATURE_XNACK_V4),
3678
+ unsigned (ELF::EF_AMDGPU_FEATURE_SRAMECC_V4));
3679
+ break ;
3680
+ }
3681
+ }
3649
3682
Str = " 0x" + utohexstr (e.e_flags );
3650
3683
if (!ElfFlags.empty ())
3651
3684
Str = Str + " , " + ElfFlags;
0 commit comments