/* ELF support for BFD.
- Copyright (C) 1991-2015 Free Software Foundation, Inc.
+ Copyright (C) 1991-2016 Free Software Foundation, Inc.
Written by Fred Fish @ Cygnus Support, from information published
in "UNIX System V Release 4, Programmers Guide: ANSI C and
#define ELFOSABI_NSK 14 /* Hewlett-Packard Non-Stop Kernel */
#define ELFOSABI_AROS 15 /* AROS */
#define ELFOSABI_FENIXOS 16 /* FenixOS */
+#define ELFOSABI_CLOUDABI 17 /* Nuxi CloudABI */
#define ELFOSABI_C6000_ELFABI 64 /* Bare-metal TMS320C6000 */
#define ELFOSABI_C6000_LINUX 65 /* Linux TMS320C6000 */
#define ELFOSABI_ARM 97 /* ARM */
#define EM_386 3 /* Intel 80386 */
#define EM_68K 4 /* Motorola m68k family */
#define EM_88K 5 /* Motorola m88k family */
-#define EM_486 6 /* Intel 80486 *//* Reserved for future use */
+#define EM_IAMCU 6 /* Intel MCU */
#define EM_860 7 /* Intel 80860 */
#define EM_MIPS 8 /* MIPS R3000 (officially, big-endian only) */
#define EM_S370 9 /* IBM System/370 */
#define EM_MN10200 90 /* Matsushita MN10200 */
#define EM_PJ 91 /* picoJava */
#define EM_OR1K 92 /* OpenRISC 1000 32-bit embedded processor */
-#define EM_ARC_A5 93 /* ARC Cores Tangent-A5 */
+#define EM_ARC_COMPACT 93 /* ARC International ARCompact processor */
#define EM_XTENSA 94 /* Tensilica Xtensa Architecture */
#define EM_VIDEOCORE 95 /* Alphamosaic VideoCore processor */
#define EM_TMM_GPP 96 /* Thompson Multimedia General Purpose Processor */
#define EM_MICROBLAZE 189 /* Xilinx MicroBlaze 32-bit RISC soft processor core */
#define EM_CUDA 190 /* NVIDIA CUDA architecture */
#define EM_TILEGX 191 /* Tilera TILE-Gx multicore architecture family */
+#define EM_ARC_COMPACT2 195 /* Synopsys ARCompact V2 */
#define EM_RL78 197 /* Renesas RL78 family. */
#define EM_78K0R 199 /* Renesas 78K0R. */
#define EM_INTEL205 205 /* Reserved by Intel */
#define SHF_OS_NONCONFORMING (1 << 8) /* OS specific processing required */
#define SHF_GROUP (1 << 9) /* Member of a section group */
#define SHF_TLS (1 << 10) /* Thread local storage section */
+#define SHF_COMPRESSED (1 << 11) /* Section with compressed data */
/* #define SHF_MASKOS 0x0F000000 *//* OS-specific semantics */
#define SHF_MASKOS 0x0FF00000 /* New value, Oct 4, 1999 Draft */
are not to be further
relocated. */
+/* Compression types */
+#define ELFCOMPRESS_ZLIB 1 /* Compressed with zlib. */
+#define ELFCOMPRESS_LOOS 0x60000000 /* OS-specific semantics, lo */
+#define ELFCOMPRESS_HIOS 0x6FFFFFFF /* OS-specific semantics, hi */
+#define ELFCOMPRESS_LOPROC 0x70000000 /* Processor-specific semantics, lo */
+#define ELFCOMPRESS_HIPROC 0x7FFFFFFF /* Processor-specific semantics, hi */
+
/* Values of note segment descriptor types for core files. */
#define NT_PRSTATUS 1 /* Contains copy of prstatus struct */
/* Note segment for SystemTap probes. */
#define NT_STAPSDT 3
+/* Note segments for core files on FreeBSD systems. Note name is
+ "FreeBSD". */
+
+#define NT_FREEBSD_THRMISC 7 /* Thread miscellaneous info. */
+#define NT_FREEBSD_PROCSTAT_PROC 8 /* Procstat proc data. */
+#define NT_FREEBSD_PROCSTAT_FILES 9 /* Procstat files data. */
+#define NT_FREEBSD_PROCSTAT_VMMAP 10 /* Procstat vmmap data. */
+#define NT_FREEBSD_PROCSTAT_GROUPS 11 /* Procstat groups data. */
+#define NT_FREEBSD_PROCSTAT_UMASK 12 /* Procstat umask data. */
+#define NT_FREEBSD_PROCSTAT_RLIMIT 13 /* Procstat rlimit data. */
+#define NT_FREEBSD_PROCSTAT_OSREL 14 /* Procstat osreldate data. */
+#define NT_FREEBSD_PROCSTAT_PSSTRINGS 15 /* Procstat ps_strings data. */
+#define NT_FREEBSD_PROCSTAT_AUXV 16 /* Procstat auxv data. */
+
/* Note segments for core files on NetBSD systems. Note name
must start with "NetBSD-CORE". */
#define GNU_ABI_TAG_SOLARIS 2
#define GNU_ABI_TAG_FREEBSD 3
#define GNU_ABI_TAG_NETBSD 4
+#define GNU_ABI_TAG_SYLLABLE 5
+#define GNU_ABI_TAG_NACL 6
/* Values for NetBSD .note.netbsd.ident notes. Note name is "NetBSD". */
#define NT_NETBSD_IDENT 1
+#define NT_NETBSD_MARCH 5
/* Values for OpenBSD .note.openbsd.ident notes. Note name is "OpenBSD". */
#define DF_1_SYMINTPOSE 0x00800000
#define DF_1_GLOBAUDIT 0x01000000
#define DF_1_SINGLETON 0x02000000
+#define DF_1_STUB 0x04000000
+#define DF_1_PIE 0x08000000
/* Flag values for the DT_FLAGS entry. */
#define DF_ORIGIN (1 << 0)