bug-binutils
[Top][All Lists]
Advanced

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

[Bug gas/25125] relaxation chooses wrong branch size


From: cvs-commit at gcc dot gnu.org
Subject: [Bug gas/25125] relaxation chooses wrong branch size
Date: Fri, 25 Oct 2019 12:53:03 +0000

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

--- Comment #2 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot 
gnu.org> ---
The master branch has been updated by Alan Modra <address@hidden>:

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

commit 37a5888387413a4b787468eff710eefebe134201
Author: Alan Modra <address@hidden>
Date:   Fri Oct 25 19:46:24 2019 +1030

    PR25125, relaxation chooses wrong branch size

    The patch I made for PR12049 didn't test for a "negative" branch
    properly.  "if (target < address)" ought to have been
    "if (target < address + fragP->fr_fix)".  Rather than making that
    change, this patch adds fragP->fr_fix into address earlier.  The patch
    also avoids running into a bad interaction with the m68k
    md_prepare_relax_scan by returning zero growth immediately, since the
    adjusted target expression would result in a zero "aim".

        PR gas/25125
        PR gas/12049
        * write.c (relax_frag): Correct calculation of delta for
        positive branches where "stretch" would make the branch
        negative.  Return zero immediately in that case.  Correct
        TC_PCREL_ADJUST comment.

-- 
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]