ill effect of <register>+<constant>

Andreas Schwab schwab@suse.de
Fri Sep 21 14:59:00 GMT 2007


"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."



More information about the Binutils mailing list