elf-em.h 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. #ifndef _LINUX_ELF_EM_H
  2. #define _LINUX_ELF_EM_H
  3. /* These constants define the various ELF target machines */
  4. #define EM_NONE 0
  5. #define EM_M32 1
  6. #define EM_SPARC 2
  7. #define EM_386 3
  8. #define EM_68K 4
  9. #define EM_88K 5
  10. #define EM_486 6 /* Perhaps disused */
  11. #define EM_860 7
  12. #define EM_MIPS 8 /* MIPS R3000 (officially, big-endian only) */
  13. /* Next two are historical and binaries and
  14. modules of these types will be rejected by
  15. Linux. */
  16. #define EM_MIPS_RS3_LE 10 /* MIPS R3000 little-endian */
  17. #define EM_MIPS_RS4_BE 10 /* MIPS R4000 big-endian */
  18. #define EM_PARISC 15 /* HPPA */
  19. #define EM_SPARC32PLUS 18 /* Sun's "v8plus" */
  20. #define EM_PPC 20 /* PowerPC */
  21. #define EM_PPC64 21 /* PowerPC64 */
  22. #define EM_SPU 23 /* Cell BE SPU */
  23. #define EM_ARM 40 /* ARM 32 bit */
  24. #define EM_SH 42 /* SuperH */
  25. #define EM_SPARCV9 43 /* SPARC v9 64-bit */
  26. #define EM_H8_300 46 /* Renesas H8/300 */
  27. #define EM_IA_64 50 /* HP/Intel IA-64 */
  28. #define EM_X86_64 62 /* AMD x86-64 */
  29. #define EM_S390 22 /* IBM S/390 */
  30. #define EM_CRIS 76 /* Axis Communications 32-bit embedded processor */
  31. #define EM_V850 87 /* NEC v850 */
  32. #define EM_M32R 88 /* Renesas M32R */
  33. #define EM_MN10300 89 /* Panasonic/MEI MN10300, AM33 */
  34. #define EM_OPENRISC 92 /* OpenRISC 32-bit embedded processor */
  35. #define EM_BLACKFIN 106 /* ADI Blackfin Processor */
  36. #define EM_ALTERA_NIOS2 113 /* Altera Nios II soft-core processor */
  37. #define EM_TI_C6000 140 /* TI C6X DSPs */
  38. #define EM_AARCH64 183 /* ARM 64 bit */
  39. #define EM_TILEPRO 188 /* Tilera TILEPro */
  40. #define EM_MICROBLAZE 189 /* Xilinx MicroBlaze */
  41. #define EM_TILEGX 191 /* Tilera TILE-Gx */
  42. #define EM_FRV 0x5441 /* Fujitsu FR-V */
  43. #define EM_AVR32 0x18ad /* Atmel AVR32 */
  44. /*
  45. * This is an interim value that we will use until the committee comes
  46. * up with a final number.
  47. */
  48. #define EM_ALPHA 0x9026
  49. /* Bogus old v850 magic number, used by old tools. */
  50. #define EM_CYGNUS_V850 0x9080
  51. /* Bogus old m32r magic number, used by old tools. */
  52. #define EM_CYGNUS_M32R 0x9041
  53. /* This is the old interim value for S/390 architecture */
  54. #define EM_S390_OLD 0xA390
  55. /* Also Panasonic/MEI MN10300, AM33 */
  56. #define EM_CYGNUS_MN10300 0xbeef
  57. #endif /* _LINUX_ELF_EM_H */