# e_machine in the ELF header
ENUM_E_MACHINE = dict(
- EM_NONE=0,
- EM_M32=1,
- EM_SPARC=2,
- EM_386=3,
- EM_68K=4,
- EM_88K=5,
- EM_860=7,
- EM_MIPS=8,
- EM_S370=9,
- EM_MIPS_RS3_LE=10,
- EM_PARISC=15,
- EM_VPP500=17,
- EM_SPARC32PLUS=18,
- EM_960=19,
- EM_PPC=20,
- EM_PPC64=21,
- EM_S390=22,
- EM_V800=36,
- EM_FR20=37,
- EM_RH32=38,
- EM_RCE=39,
- EM_ARM=40,
- EM_ALPHA=41,
- EM_SH=42,
- EM_SPARCV9=43,
- EM_TRICORE=44,
- EM_ARC=45,
- EM_H8_300=46,
- EM_H8_300H=47,
- EM_H8S=48,
- EM_H8_500=49,
- EM_IA_64=50,
- EM_MIPS_X=51,
- EM_COLDFIRE=52,
- EM_68HC12=53,
- EM_MMA=54,
- EM_PCP=55,
- EM_NCPU=56,
- EM_NDR1=57,
- EM_STARCORE=58,
- EM_ME16=59,
- EM_ST100=60,
- EM_TINYJ=61,
- EM_X86_64=62,
- EM_PDSP=63,
- EM_PDP10=64,
- EM_PDP11=65,
- EM_FX66=66,
- EM_ST9PLUS=67,
- EM_ST7=68,
- EM_68HC16=69,
- EM_68HC11=70,
- EM_68HC08=71,
- EM_68HC05=72,
- EM_SVX=73,
- EM_ST19=74,
- EM_VAX=75,
- EM_CRIS=76,
- EM_JAVELIN=77,
- EM_FIREPATH=78,
- EM_ZSP=79,
- EM_MMIX=80,
- EM_HUANY=81,
- EM_PRISM=82,
- EM_AVR=83,
- EM_FR30=84,
- EM_D10V=85,
- EM_D30V=86,
- EM_V850=87,
- EM_M32R=88,
- EM_MN10300=89,
- EM_MN10200=90,
- EM_PJ=91,
- EM_OPENRISC=92,
- EM_ARC_A5=93,
- EM_XTENSA=94,
- EM_VIDEOCORE=95,
- EM_TMM_GPP=96,
- EM_NS32K=97,
- EM_TPC=98,
- EM_SNP1K=99,
- EM_ST200=100,
- EM_IP2K=101,
- EM_MAX=102,
- EM_CR=103,
- EM_F2MC16=104,
- EM_MSP430=105,
- EM_BLACKFIN=106,
- EM_SE_C33=107,
- EM_SEP=108,
- EM_ARCA=109,
- EM_UNICORE=110,
- EM_L10M=180,
- EM_AARCH64=183,
+ EM_NONE = 0, # No machine
+ EM_M32 = 1, # AT&T WE 32100
+ EM_SPARC = 2, # SPARC
+ EM_386 = 3, # Intel 80386
+ EM_68K = 4, # Motorola 68000
+ EM_88K = 5, # Motorola 88000
+ EM_IAMCU = 6, # Intel MCU
+ EM_860 = 7, # Intel 80860
+ EM_MIPS = 8, # MIPS I Architecture
+ EM_S370 = 9, # IBM System/370 Processor
+ EM_MIPS_RS3_LE = 10, # MIPS RS3000 Little-endian
+ EM_PARISC = 15, # Hewlett-Packard PA-RISC
+ EM_VPP500 = 17, # Fujitsu VPP500
+ EM_SPARC32PLUS = 18, # Enhanced instruction set SPARC
+ EM_960 = 19, # Intel 80960
+ EM_PPC = 20, # PowerPC
+ EM_PPC64 = 21, # 64-bit PowerPC
+ EM_S390 = 22, # IBM System/390 Processor
+ EM_SPU = 23, # IBM SPU/SPC
+ EM_V800 = 36, # NEC V800
+ EM_FR20 = 37, # Fujitsu FR20
+ EM_RH32 = 38, # TRW RH-32
+ EM_RCE = 39, # Motorola RCE
+ EM_ARM = 40, # ARM 32-bit architecture (AARCH32)
+ EM_ALPHA = 41, # Digital Alpha
+ EM_SH = 42, # Hitachi SH
+ EM_SPARCV9 = 43, # SPARC Version 9
+ EM_TRICORE = 44, # Siemens TriCore embedded processor
+ EM_ARC = 45, # Argonaut RISC Core, Argonaut Technologies Inc.
+ EM_H8_300 = 46, # Hitachi H8/300
+ EM_H8_300H = 47, # Hitachi H8/300H
+ EM_H8S = 48, # Hitachi H8S
+ EM_H8_500 = 49, # Hitachi H8/500
+ EM_IA_64 = 50, # Intel IA-64 processor architecture
+ EM_MIPS_X = 51, # Stanford MIPS-X
+ EM_COLDFIRE = 52, # Motorola ColdFire
+ EM_68HC12 = 53, # Motorola M68HC12
+ EM_MMA = 54, # Fujitsu MMA Multimedia Accelerator
+ EM_PCP = 55, # Siemens PCP
+ EM_NCPU = 56, # Sony nCPU embedded RISC processor
+ EM_NDR1 = 57, # Denso NDR1 microprocessor
+ EM_STARCORE = 58, # Motorola Star*Core processor
+ EM_ME16 = 59, # Toyota ME16 processor
+ EM_ST100 = 60, # STMicroelectronics ST100 processor
+ EM_TINYJ = 61, # Advanced Logic Corp. TinyJ embedded processor family
+ EM_X86_64 = 62, # AMD x86-64 architecture
+ EM_PDSP = 63, # Sony DSP Processor
+ EM_PDP10 = 64, # Digital Equipment Corp. PDP-10
+ EM_PDP11 = 65, # Digital Equipment Corp. PDP-11
+ EM_FX66 = 66, # Siemens FX66 microcontroller
+ EM_ST9PLUS = 67, # STMicroelectronics ST9+ 8/16 bit microcontroller
+ EM_ST7 = 68, # STMicroelectronics ST7 8-bit microcontroller
+ EM_68HC16 = 69, # Motorola MC68HC16 Microcontroller
+ EM_68HC11 = 70, # Motorola MC68HC11 Microcontroller
+ EM_68HC08 = 71, # Motorola MC68HC08 Microcontroller
+ EM_68HC05 = 72, # Motorola MC68HC05 Microcontroller
+ EM_SVX = 73, # Silicon Graphics SVx
+ EM_ST19 = 74, # STMicroelectronics ST19 8-bit microcontroller
+ EM_VAX = 75, # Digital VAX
+ EM_CRIS = 76, # Axis Communications 32-bit embedded processor
+ EM_JAVELIN = 77, # Infineon Technologies 32-bit embedded processor
+ EM_FIREPATH = 78, # Element 14 64-bit DSP Processor
+ EM_ZSP = 79, # LSI Logic 16-bit DSP Processor
+ EM_MMIX = 80, # Donald Knuth's educational 64-bit processor
+ EM_HUANY = 81, # Harvard University machine-independent object files
+ EM_PRISM = 82, # SiTera Prism
+ EM_AVR = 83, # Atmel AVR 8-bit microcontroller
+ EM_FR30 = 84, # Fujitsu FR30
+ EM_D10V = 85, # Mitsubishi D10V
+ EM_D30V = 86, # Mitsubishi D30V
+ EM_V850 = 87, # NEC v850
+ EM_M32R = 88, # Mitsubishi M32R
+ EM_MN10300 = 89, # Matsushita MN10300
+ EM_MN10200 = 90, # Matsushita MN10200
+ EM_PJ = 91, # picoJava
+ EM_OPENRISC = 92, # OpenRISC 32-bit embedded processor
+ EM_ARC_COMPACT = 93, # ARC International ARCompact processor (old spelling/synonym: EM_ARC_A5)
+ EM_XTENSA = 94, # Tensilica Xtensa Architecture
+ EM_VIDEOCORE = 95, # Alphamosaic VideoCore processor
+ EM_TMM_GPP = 96, # Thompson Multimedia General Purpose Processor
+ EM_NS32K = 97, # National Semiconductor 32000 series
+ EM_TPC = 98, # Tenor Network TPC processor
+ EM_SNP1K = 99, # Trebia SNP 1000 processor
+ EM_ST200 = 100, # STMicroelectronics (www.st.com) ST200 microcontroller
+ EM_IP2K = 101, # Ubicom IP2xxx microcontroller family
+ EM_MAX = 102, # MAX Processor
+ EM_CR = 103, # National Semiconductor CompactRISC microprocessor
+ EM_F2MC16 = 104, # Fujitsu F2MC16
+ EM_MSP430 = 105, # Texas Instruments embedded microcontroller msp430
+ EM_BLACKFIN = 106, # Analog Devices Blackfin (DSP) processor
+ EM_SE_C33 = 107, # S1C33 Family of Seiko Epson processors
+ EM_SEP = 108, # Sharp embedded microprocessor
+ EM_ARCA = 109, # Arca RISC Microprocessor
+ EM_UNICORE = 110, # Microprocessor series from PKU-Unity Ltd. and MPRC of Peking University
+ EM_EXCESS = 111, # eXcess: 16/32/64-bit configurable embedded CPU
+ EM_DXP = 112, # Icera Semiconductor Inc. Deep Execution Processor
+ EM_ALTERA_NIOS2 = 113, # Altera Nios II soft-core processor
+ EM_CRX = 114, # National Semiconductor CompactRISC CRX microprocessor
+ EM_XGATE = 115, # Motorola XGATE embedded processor
+ EM_C166 = 116, # Infineon C16x/XC16x processor
+ EM_M16C = 117, # Renesas M16C series microprocessors
+ EM_DSPIC30F = 118, # Microchip Technology dsPIC30F Digital Signal Controller
+ EM_CE = 119, # Freescale Communication Engine RISC core
+ EM_M32C = 120, # Renesas M32C series microprocessors
+ EM_TSK3000 = 131, # Altium TSK3000 core
+ EM_RS08 = 132, # Freescale RS08 embedded processor
+ EM_SHARC = 133, # Analog Devices SHARC family of 32-bit DSP processors
+ EM_ECOG2 = 134, # Cyan Technology eCOG2 microprocessor
+ EM_SCORE7 = 135, # Sunplus S+core7 RISC processor
+ EM_DSP24 = 136, # New Japan Radio (NJR) 24-bit DSP Processor
+ EM_VIDEOCORE3 = 137, # Broadcom VideoCore III processor
+ EM_LATTICEMICO32 = 138, # RISC processor for Lattice FPGA architecture
+ EM_SE_C17 = 139, # Seiko Epson C17 family
+ EM_TI_C6000 = 140, # The Texas Instruments TMS320C6000 DSP family
+ EM_TI_C2000 = 141, # The Texas Instruments TMS320C2000 DSP family
+ EM_TI_C5500 = 142, # The Texas Instruments TMS320C55x DSP family
+ EM_TI_ARP32 = 143, # Texas Instruments Application Specific RISC Processor, 32bit fetch
+ EM_TI_PRU = 144, # Texas Instruments Programmable Realtime Unit
+ EM_MMDSP_PLUS = 160, # STMicroelectronics 64bit VLIW Data Signal Processor
+ EM_CYPRESS_M8C = 161, # Cypress M8C microprocessor
+ EM_R32C = 162, # Renesas R32C series microprocessors
+ EM_TRIMEDIA = 163, # NXP Semiconductors TriMedia architecture family
+ EM_QDSP6 = 164, # QUALCOMM DSP6 Processor
+ EM_8051 = 165, # Intel 8051 and variants
+ EM_STXP7X = 166, # STMicroelectronics STxP7x family of configurable and extensible RISC processors
+ EM_NDS32 = 167, # Andes Technology compact code size embedded RISC processor family
+ EM_ECOG1 = 168, # Cyan Technology eCOG1X family
+ EM_ECOG1X = 168, # Cyan Technology eCOG1X family
+ EM_MAXQ30 = 169, # Dallas Semiconductor MAXQ30 Core Micro-controllers
+ EM_XIMO16 = 170, # New Japan Radio (NJR) 16-bit DSP Processor
+ EM_MANIK = 171, # M2000 Reconfigurable RISC Microprocessor
+ EM_CRAYNV2 = 172, # Cray Inc. NV2 vector architecture
+ EM_RX = 173, # Renesas RX family
+ EM_METAG = 174, # Imagination Technologies META processor architecture
+ EM_MCST_ELBRUS = 175, # MCST Elbrus general purpose hardware architecture
+ EM_ECOG16 = 176, # Cyan Technology eCOG16 family
+ EM_CR16 = 177, # National Semiconductor CompactRISC CR16 16-bit microprocessor
+ EM_ETPU = 178, # Freescale Extended Time Processing Unit
+ EM_SLE9X = 179, # Infineon Technologies SLE9X core
+ EM_L10M = 180, # Intel L10M
+ EM_K10M = 181, # Intel K10M
+ EM_AARCH64 = 183, # ARM 64-bit architecture (AARCH64)
+ EM_AVR32 = 185, # Atmel Corporation 32-bit microprocessor family
+ EM_STM8 = 186, # STMicroeletronics STM8 8-bit microcontroller
+ EM_TILE64 = 187, # Tilera TILE64 multicore architecture family
+ EM_TILEPRO = 188, # Tilera TILEPro multicore architecture family
+ EM_MICROBLAZE = 189, # Xilinx MicroBlaze 32-bit RISC soft processor core
+ EM_CUDA = 190, # NVIDIA CUDA architecture
+ EM_TILEGX = 191, # Tilera TILE-Gx multicore architecture family
+ EM_CLOUDSHIELD = 192, # CloudShield architecture family
+ EM_COREA_1ST = 193, # KIPO-KAIST Core-A 1st generation processor family
+ EM_COREA_2ND = 194, # KIPO-KAIST Core-A 2nd generation processor family
+ EM_ARC_COMPACT2 = 195, # Synopsys ARCompact V2
+ EM_OPEN8 = 196, # Open8 8-bit RISC soft processor core
+ EM_RL78 = 197, # Renesas RL78 family
+ EM_VIDEOCORE5 = 198, # Broadcom VideoCore V processor
+ EM_78KOR = 199, # Renesas 78KOR family
+ EM_56800EX = 200, # Freescale 56800EX Digital Signal Controller (DSC)
+ EM_BA1 = 201, # Beyond BA1 CPU architecture
+ EM_BA2 = 202, # Beyond BA2 CPU architecture
+ EM_XCORE = 203, # XMOS xCORE processor family
+ EM_MCHP_PIC = 204, # Microchip 8-bit PIC(r) family
+ EM_INTEL205 = 205, # Reserved by Intel
+ EM_INTEL206 = 206, # Reserved by Intel
+ EM_INTEL207 = 207, # Reserved by Intel
+ EM_INTEL208 = 208, # Reserved by Intel
+ EM_INTEL209 = 209, # Reserved by Intel
+ EM_KM32 = 210, # KM211 KM32 32-bit processor
+ EM_KMX32 = 211, # KM211 KMX32 32-bit processor
+ EM_KMX16 = 212, # KM211 KMX16 16-bit processor
+ EM_KMX8 = 213, # KM211 KMX8 8-bit processor
+ EM_KVARC = 214, # KM211 KVARC processor
+ EM_CDP = 215, # Paneve CDP architecture family
+ EM_COGE = 216, # Cognitive Smart Memory Processor
+ EM_COOL = 217, # Bluechip Systems CoolEngine
+ EM_NORC = 218, # Nanoradio Optimized RISC
+ EM_CSR_KALIMBA = 219, # CSR Kalimba architecture family
+ EM_Z80 = 220, # Zilog Z80
+ EM_VISIUM = 221, # Controls and Data Services VISIUMcore processor
+ EM_FT32 = 222, # FTDI Chip FT32 high performance 32-bit RISC architecture
+ EM_MOXIE = 223, # Moxie processor family
+ EM_AMDGPU = 224, # AMD GPU architecture
+ EM_RISCV = 243, # RISC-V
+ # Reservations
+ # reserved 11-14 Reserved for future use
+ # reserved 16 Reserved for future use
+ # reserved 24-35 Reserved for future use
+ # reserved 121-130 Reserved for future use
+ # reserved 145-159 Reserved for future use
+ # reserved 145-159 Reserved for future use
+ # reserved 182 Reserved for future Intel use
+ # reserved 184 Reserved for future ARM use
+ # unknown/reserve? 225 - 242
_default_=Pass,
)