Paolo Bonzini schrieb:
> On 09/28/2011 02:14 PM, Georg-Johann Lay wrote:
>> This leads to unpleasant code. The machine can access all RAM
>> locations by
>> direct addressing. However, the resulting code is:
>>
>> foo:
>> ldi r24,lo8(-86) ; 6*movqi/2[length = 1]
>> ldi r30,lo8(
On 09/28/2011 02:14 PM, Georg-Johann Lay wrote:
This leads to unpleasant code. The machine can access all RAM locations by
direct addressing. However, the resulting code is:
foo:
ldi r24,lo8(-86) ; 6 *movqi/2[length = 1]
ldi r30,lo8(-64) ; 34 *movhi/5
Hi, looking into PR50448 there is the following C code:
typedef struct
{
unsigned char a,b,c,d;
} SPI_t;
#define SPIE (*(SPI_t volatile*) 0x0AC0)
void foo (void)
{
SPIE.d = 0xAA;
while (!(SPIE.c & 0x80));
SPIE.d = 0xBB;
while (!(SPIE.c & 0x80));
}
At .optimized, the .c and