Ignore:
Timestamp:
02/28/2024 04:02:53 PM (7 months ago)
Author:
Xi Ruoyao <xry111@…>
Branches:
xry111/mips64el
Children:
9dafb166
Parents:
e871ed6
git-author:
Xi Ruoyao <xry111@…> (01/04/2024 08:03:08 PM)
git-committer:
Xi Ruoyao <xry111@…> (02/28/2024 04:02:53 PM)
Message:

mips64el: binutils: Rewrite the explanation of --enable-default-hash-style=gnu

On MIPS there are some differences in the classic ELF hash table vs.
GNU-style hash table decision.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • chapter05/binutils-pass1.xml

    re871ed6 r6de49cb  
    137137        <term><parameter>--enable-default-hash-style=gnu</parameter></term>
    138138        <listitem>
    139           <para>By default, the linker would generate both the GNU-style
    140           hash table and the classic ELF hash table for shared libraries and
    141           dynamically linked executables.  The hash tables are only intended
    142           for a dynamic linker to perform symbol lookup.  On LFS the dynamic
    143           linker (provided by the Glibc package) will always use the
    144           GNU-style hash table which is faster to query.  So the classic
    145           ELF hash table is completely useless.  This makes the linker
    146           only generate the GNU-style hash table by default, so we can avoid
    147           wasting time to generate the classic ELF hash table when we build
    148           the packages, or wasting disk space to store it.</para>
     139          <para>By default, the linker would generate the classic ELF hash
     140          table for shared libraries and dynamically linked executables
     141          because the GNU-style hash table is incompatible with the MIPS o32
     142          ABI. The hash tables are only intended for a dynamic linker to
     143          perform symbol lookup.  On LFS the dynamic linker (provided by the
     144          Glibc package) supports the GNU-style hash table, and this LFS
     145          edition does not support the o32 ABI.  So this is used to make the
     146          linker generate the GNU-style hash table instead of the classic
     147          ELF hash table by default, as the GNU-style hash table is faster
     148          to query.</para>
    149149        </listitem>
    150150      </varlistentry>
Note: See TracChangeset for help on using the changeset viewer.