From: Andrew Waterman Date: Mon, 9 Jan 2017 09:22:33 +0000 (+0000) Subject: RISC-V/GAS: Correct branch relaxation for weak symbols. X-Git-Tag: gdb-8.0-branchpoint~921 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=011561117eeaff00862eb5f465c3470f29e8a9a9;p=thirdparty%2Fbinutils-gdb.git RISC-V/GAS: Correct branch relaxation for weak symbols. * config/tc-riscv.c (relaxed_branch_length): Use the long sequence when the target is a weak symbol. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index c93a61bc19d..00f6d1aa8e3 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2017-01-09 Andrew Waterman + + * config/tc-riscv.c (relaxed_branch_length): Use the long + sequence when the target is a weak symbol. + 2017-01-04 Szabolcs Nagy * config/tc-aarch64.c (aarch64_features): Add rcpc. diff --git a/gas/config/tc-riscv.c b/gas/config/tc-riscv.c index 1f617303493..b8da6ce390b 100644 --- a/gas/config/tc-riscv.c +++ b/gas/config/tc-riscv.c @@ -360,6 +360,7 @@ relaxed_branch_length (fragS *fragp, asection *sec, int update) if (fragp->fr_symbol != NULL && S_IS_DEFINED (fragp->fr_symbol) + && !S_IS_WEAK (fragp->fr_symbol) && sec == S_GET_SEGMENT (fragp->fr_symbol)) { offsetT val = S_GET_VALUE (fragp->fr_symbol) + fragp->fr_offset;