[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [avr-gcc-list] ATmega2560 and gcc __prologue_saves__
From: |
Weddington, Eric |
Subject: |
RE: [avr-gcc-list] ATmega2560 and gcc __prologue_saves__ |
Date: |
Mon, 14 Jul 2008 13:40:59 -0600 |
> -----Original Message-----
> From:
> address@hidden
> [mailto:address@hidden
> org] On Behalf Of Anatoly Sokolov
> Sent: Monday, July 14, 2008 1:36 PM
> To: Stu Bell; address@hidden
> Subject: Re: [avr-gcc-list] ATmega2560 and gcc __prologue_saves__
>
> Hello.
>
> > I've stumbled across another problem with ATmega2560
> support. Although
> > the problem is triggered from avr-libc, I believe this to be a gcc
> > problem.
> >
> > Then the do_rand() calls __prologue_saves__. That function
> saves the
> > appropriate registers, but then assembles an EIJUMP without
> setting the
> > proper value in EIND. This wouldn't matter on anything *but* an
> > ATmega2560. On my code, EIND = 0 (because I've never made
> an EICALL to
> > set EIND = 1) so the code jumps into lower flash and I'm dead.
>
> This bug fixed in GCC mainline:
>
> Patch AVR: fix call prologue saves for avr6 - commited.
> http://gcc.gnu.org/ml/gcc-patches/2008-05/msg01611.html
>
> Anatoly.
>
Ok, so never mind with the bug report, Stu.