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: PR gas/10704: as segfault in memory lookup intel syntax


>>> Alan Modra <amodra@bigpond.net.au> 06.10.09 00:12 >>>
>On Mon, Oct 05, 2009 at 01:59:08PM +0200, Tristan Gingold wrote:
>> So, for the release you propose to revert PR2127 and to add .cfi_sections 
>> patch.
>> I will do a new pre-release with that.
>
>I have applied the following to mainline, which fixes PR10704 and the
>wrong use of expression_and_evaluate I found in s_reloc.  I don't
>think this is acceptable for a release, unless you don't care about
>ia64.  Jan, do you have any comments on
>http://sourceware.org/ml/binutils/2009-10/msg00093.html ?

I agree with your analysis, and based on that it's quite obvious that
parse_operand() needs an extra parameter indicating whether the
expression dealt with is to be resolved immediately. Basically, all
uses outside of parse_operands() appear to need immediate
resolution. But the uses inside parse_operands() are perhaps more
difficult: Register and certain immediate operands (at least those
which can't be encoded in a relocation) should be resolved
immediately, while symbol references shouldn't.

The immediates are what appears most problematic: In certain cases
you can't easily tell whether the operand is symbolic or constant, and
for non-forward-ref equates you want to resolve the latter, but
not touch the former (based on your responses to the respective
thread a couple of weeks back - though that's a backend independent
problem I think, it just appears that ia64 is most obviously affected
by it).

Jan


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