[PATCH] ELF: Updated comments for ET_EXEC and ET_DYN

Fangrui Song i@maskray.me
Tue May 26 17:45:51 GMT 2020


Looks good. Ali in the generic-abi proposed a more generic form:

#define ET_EXEC 2 /* Position-dependent object */
#define ET_DYN 3 /* Position-independent object */


I just filed https://sourceware.org/bugzilla/show_bug.cgi?id=26047 We
may consider disallowing ET_EXEC as linker input.
Happy to know if there are legitimate cases, though.

On Mon, May 25, 2020 at 11:28 AM H.J. Lu via Binutils
<binutils@sourceware.org> wrote:
>
> include/elf/common.h has
>
>  #define ET_EXEC         2       /* Executable file */
>  #define ET_DYN          3       /* Shared object file */
>
> These predate PIE:
>
> https://groups.google.com/forum/#!topic/generic-abi/mBKlSNldFW4
>
> Updated comments to
>
>  #define ET_EXEC         2       /* Position-dependent executable file */
>  #define ET_DYN          3       /* Position-independent executable or
>                                     shared object file */
>
>         * elf/common.h: Update comments for ET_EXEC and ET_DYN.
> ---
>  include/ChangeLog    | 4 ++++
>  include/elf/common.h | 5 +++--
>  2 files changed, 7 insertions(+), 2 deletions(-)
>
> diff --git a/include/ChangeLog b/include/ChangeLog
> index c309780544..53f50e513f 100644
> --- a/include/ChangeLog
> +++ b/include/ChangeLog
> @@ -1,3 +1,7 @@
> +2020-05-25  H.J. Lu  <hongjiu.lu@intel.com>
> +
> +       * elf/common.h: Update comments for ET_EXEC and ET_DYN.
> +
>  2020-05-20  Nelson Chu  <nelson.chu@sifive.com>
>
>         * opcode/riscv.h: Include "bfd.h" to support bfd_boolean.
> diff --git a/include/elf/common.h b/include/elf/common.h
> index 26e6fbc8e6..4d94c4fd5b 100644
> --- a/include/elf/common.h
> +++ b/include/elf/common.h
> @@ -91,8 +91,9 @@
>
>  #define ET_NONE                0       /* No file type */
>  #define ET_REL         1       /* Relocatable file */
> -#define ET_EXEC                2       /* Executable file */
> -#define ET_DYN         3       /* Shared object file */
> +#define ET_EXEC                2       /* Position-dependent executable file */
> +#define ET_DYN         3       /* Position-independent executable or
> +                                  shared object file */
>  #define ET_CORE                4       /* Core file */
>  #define ET_LOOS                0xFE00  /* Operating system-specific */
>  #define ET_HIOS                0xFEFF  /* Operating system-specific */
> --
> 2.26.2
>


More information about the Binutils mailing list