libelf: Update SH_ENTSIZE_HASH comment.
authorMark Wielaard <mark@klomp.org>
Fri, 6 Nov 2020 17:16:24 +0000 (18:16 +0100)
committerMark Wielaard <mark@klomp.org>
Mon, 9 Nov 2020 17:10:06 +0000 (18:10 +0100)
The elf-knowledge.h contains various macros to deal with specific ELF
knowledge needed to interpret some ELF constructs that can be ambigious
depending on architecture ABI. Update the comment of SH_ENTSIZE_HASH
to add a more technical description of why it is needed.

Signed-off-by: Mark Wielaard <mark@klomp.org>
libelf/ChangeLog
libelf/elf-knowledge.h

index db3eed0..d685872 100644 (file)
@@ -1,3 +1,7 @@
+2020-11-06  Mark Wielaard  <mark@klomp.org>
+
+       * elf-knowledge.h (SH_ENTSIZE_HASH): Update comment.
+
 2020-11-01  Mark Wielaard  <mark@klomp.org>
 
        * elf_strptr.c (elf_strptr): Check shdr is not NULL.
index 9d3be0f..6e005fa 100644 (file)
@@ -69,9 +69,9 @@
 
    Several years later the ABI for the 64-bit S390s was developed.
    Many things were copied from the IA-64 ABI (which uses the correct
-   32-bit entry size) but what do these people do?  They use 64-bit
-   entries.  It is really shocking to see what kind of morons are out
-   there.  And even worse: they are allowed to design ABIs.  */
+   32-bit entry size) but it does get the SHT_HASH entry size wrong by
+   using a 64-bit entry size.  So now we need this macro to special
+   case both the alpha and s390x ABIs.  */
 #define SH_ENTSIZE_HASH(Ehdr) \
   ((Ehdr)->e_machine == EM_ALPHA                                             \
    || ((Ehdr)->e_machine == EM_S390                                          \