Adds ELFCOMPRESS_ZSTD, NT_S390_PV_CPU_DATA and NT_LOONGARCH_*.

Signed-off-by: Mark Wielaard <m...@klomp.org>
---
 libelf/ChangeLog |  4 ++++
 libelf/elf.h     | 18 +++++++++++++-----
 2 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/libelf/ChangeLog b/libelf/ChangeLog
index aefb31b3..8107c71e 100644
--- a/libelf/ChangeLog
+++ b/libelf/ChangeLog
@@ -1,3 +1,7 @@
+2022-10-28  Mark Wielaard  <m...@klomp.org>
+
+       * elf.h: Update from glibc.
+
 2022-10-21  Yonggang Luo  <luoyongg...@gmail.com>
 
        * libelf_crc32.c: Remove LIB_SYSTEM_H define.
diff --git a/libelf/elf.h b/libelf/elf.h
index 02a1b3f5..f51300bc 100644
--- a/libelf/elf.h
+++ b/libelf/elf.h
@@ -506,6 +506,7 @@ typedef struct
 
 /* Legal values for ch_type (compression algorithm).  */
 #define ELFCOMPRESS_ZLIB       1          /* ZLIB/DEFLATE algorithm.  */
+#define ELFCOMPRESS_ZSTD       2          /* Zstandard algorithm.  */
 #define ELFCOMPRESS_LOOS       0x60000000 /* Start of OS-specific.  */
 #define ELFCOMPRESS_HIOS       0x6fffffff /* End of OS-specific.  */
 #define ELFCOMPRESS_LOPROC     0x70000000 /* Start of processor-specific.  */
@@ -808,6 +809,7 @@ typedef struct
 #define NT_S390_GS_BC  0x30c           /* s390 guarded storage
                                           broadcast control block.  */
 #define NT_S390_RI_CB  0x30d           /* s390 runtime instrumentation.  */
+#define NT_S390_PV_CPU_DATA    0x30e   /* s390 protvirt cpu dump data.  */
 #define NT_ARM_VFP     0x400           /* ARM VFP/NEON registers */
 #define NT_ARM_TLS     0x401           /* ARM TLS register */
 #define NT_ARM_HW_BREAK        0x402           /* ARM hardware breakpoint 
registers */
@@ -829,6 +831,15 @@ typedef struct
 #define NT_MIPS_DSP    0x800           /* MIPS DSP ASE registers.  */
 #define NT_MIPS_FP_MODE        0x801           /* MIPS floating-point mode.  */
 #define NT_MIPS_MSA    0x802           /* MIPS SIMD registers.  */
+#define NT_LOONGARCH_CPUCFG    0xa00   /* LoongArch CPU config registers.  */
+#define NT_LOONGARCH_CSR       0xa01   /* LoongArch control and
+                                          status registers.  */
+#define NT_LOONGARCH_LSX       0xa02   /* LoongArch Loongson SIMD
+                                          Extension registers.  */
+#define NT_LOONGARCH_LASX      0xa03   /* LoongArch Loongson Advanced
+                                          SIMD Extension registers.  */
+#define NT_LOONGARCH_LBT       0xa04   /* LoongArch Loongson Binary
+                                          Translation registers.  */
 
 /* Legal values for the note segment descriptor types for object files.  */
 
@@ -1054,7 +1065,8 @@ typedef struct
 
 /* Legal values for vd_flags (version information flags).  */
 #define VER_FLG_BASE   0x1             /* Version definition of file itself */
-#define VER_FLG_WEAK   0x2             /* Weak version identifier */
+#define VER_FLG_WEAK   0x2             /* Weak version identifier.  Also
+                                          used by vna_flags below.  */
 
 /* Versym symbol index values.  */
 #define        VER_NDX_LOCAL           0       /* Symbol is local.  */
@@ -1132,10 +1144,6 @@ typedef struct
 } Elf64_Vernaux;
 
 
-/* Legal values for vna_flags.  */
-#define VER_FLG_WEAK   0x2             /* Weak version identifier */
-
-
 /* Auxiliary vector.  */
 
 /* This vector is normally only used by the program interpreter.  The
-- 
2.30.2

Reply via email to