This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: ill effect of <register>+<constant>
- From: Andreas Schwab <schwab at suse dot de>
- To: "Jan Beulich" <jbeulich at novell dot com>
- Cc: <binutils at sourceware dot org>
- Date: Fri, 21 Sep 2007 16:06:04 +0200
- Subject: Re: ill effect of <register>+<constant>
- References: <46F3DE66.76E4.0078.0@novell.com>
"Jan Beulich" <jbeulich@novell.com> writes:
> Isn't it a bug that, for i386,
>
> .text
> .intel_syntax noprefix
> _start:
> .equ base, edx+4
> .equ idx, edi-1
> mov eax, [base+idx*4]
>
> results in
>
> mov eax, [esi+esi*4]
>
> ? Consequently, shouldn't expr() refrain from doing *any* optimization when
> either side of O_add or the left side of O_subtract is a register?
No, that would disable a useful feature.
Andreas.
--
Andreas Schwab, SuSE Labs, schwab@suse.de
SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany
PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5
"And now for something completely different."