avr-libc-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [avr-libc-dev] Strange asm output


From: Paul Schlie
Subject: Re: [avr-libc-dev] Strange asm output
Date: Thu, 11 Nov 2004 23:37:53 -0500
User-agent: Microsoft-Entourage/11.1.0.040913

Thank you, it appears that the problem is that 3.4.3 optimizes
(or de-optimizes) expressions of the form:

((int)x & 0x800000L) => (((long)x >> 23) & 1) effectively bypassing the
rtl optimizations which knew how to deal with optimizing (x & const) not
((x >> const) & 1), so am trying to encourage the GCC folks to consider
removing this likely misplaced transformation, as it can't be as easily
optimized as it's original form on machines without multi-bit shift
instructions, but believe it will be an uphill battle.

> From: Nicolas Schodet <address@hidden>
> Date: Thu, 11 Nov 2004 20:38:16 +0100
> To: <address@hidden>
> Cc: Paul Schlie <address@hidden>
> Subject: Re: [avr-libc-dev] Strange asm output
> 
> * Paul Schlie <address@hidden> [041111 18:14]:
>> Might someone with a GCC 3.3.x (preferably 3.3.4) avr compiler try:
>> [...]
> 
> Here is the listing with avr-gcc (GCC) 3.3.1:






reply via email to

[Prev in Thread] Current Thread [Next in Thread]