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

--- Comment #20 from Sourceware Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Alan Modra <[email protected]>:

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

commit 0d22d419a4b60672acf5555f5479fcf6956018a1
Author: Alan Modra <[email protected]>
Date:   Thu Jul 30 15:02:21 2026 +0930

    Re: PR 30308 more unbounded recursion

    Commit 85fb82cc8c had some errors.  The extra places marking and
    clearing syms as resolving didn't take into account that the sym might
    already be so marked and thus should not be cleared.  Fixing that
    cured the first testcase addition, but not the second.  Even worse is
    that fact that marking X_add_symbol when trying to simplify
    X_op_symbol would make it impossible to simplify x==x or other such
    expressions where the symbols are the same (or the same via equates,
    making a test for X_add_symbol != X_op_symbol harder).  So commit
    85fb82cc8c needs reverting.

    When I analysed what was going on with the second testcase addition,
    and reanalysed the testcase added in commit 85fb82cc8c, I decided a
    better fix was to immediately fail on hitting a symbol loop;  It was
    the simplification done in i386_intel_simplify_symbol after hitting a
    symbol loop that made the "resolving" mark set on syms insufficient.

            * config/tc-i386-intel.c (i386_intel_simplify_symbol): Return
            NULL on finding symbol loops.
            (i386_intel_simplify): Revert commit 85fb82cc8c marking and
            clearing "resolved" for X_add_symbol.  For O_add, don't
            simplify after i386_intel_simplify_symbol returns NULL.
            * testsuite/gas/i386/intel-equ-loop.l,
            * testsuite/gas/i386/intel-equ-loop.s: Extend testcase.

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

Reply via email to