This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH 1.0/4 v2] MIPS/GAS: Fix equated symbols in relaxation


Thanks for perservering with these patches.  I think 1 and 2 are
ready to go in.  However, you're dealing with some very subtle code here,
as the bugs you're fixing show, so please wait until 2.21 has branched
before committing.

"Maciej W. Rozycki" <macro@codesourcery.com> writes:
>  Equated symbols (defined with .eqv) are not yet fully resolved by the 
> time relaxation is made.  As a result, if used in a relaxed expression, 
> they cause a failure as follows:
>
> branch-self.s:30: Error: attempt to get value of unresolved symbol `fnord'
>
>  The fix is to use the result of the resolver function called for the 
> symbol at this point rather than trying to obtain the final value of the 
> symbol itself.  As this final fix actually comes from you, you get the 
> credit in the ChangeLog entry. :)
>
> 2010-10-29  Richard Sandiford  <rdsandiford@googlemail.com>
>
> 	gas/
> 	* config/tc-mips.c (md_convert_frag): Remove a call to
> 	S_GET_VALUE and use the result of resolve_symbol_value as the 
> 	value of the symbol processed in MIPS16 relaxation.
>
>  OK to apply?

OK once 2.21 has branched.

Richard


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]