bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug ld/30367] Performance regression after updating to 2.40


From: cvs-commit at gcc dot gnu.org
Subject: [Bug ld/30367] Performance regression after updating to 2.40
Date: Tue, 25 Apr 2023 12:58:36 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=30367

--- Comment #4 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
The master branch has been updated by Michael Matz <matz@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=8f5cd47bee6c07c33aeda758d8d8db5f81ae03e7

commit 8f5cd47bee6c07c33aeda758d8d8db5f81ae03e7
Author: Michael Matz <matz@suse.de>
Date:   Tue Apr 18 16:16:01 2023 +0200

    section-select: Fix performance problem (PR30367)

    when using many wild-statements with non-wildcard filenames we
    were running into quadraticness via repeatedly using lookup_name
    on a long list of loaded files.  I've originally retained using
    lookup_name because that preserved existing behaviour most obviously.
    In particular in matching wild-statements when using a non-wildcard
    filename it matches against local_sym_name, not the filename member.
    If the wildspec would have an archive-spec or a wildcard it would use
    the filename member, though.  Also it would load the named file
    (and ignore it, as being not equal to the currently considered
    input-statement).

    Rewrite this to not use lookup_name but retain the comparison
    against local_sym_name with a comment to that effect.

            PR 30367
            * ldlang.c (walk_wild_section_match): Don't use lookup_name
            but directly compare spec and local_sym_name.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]