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

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

Re: [avr-libc-dev] Re: vargs and ... doesn't work?


From: Björn Haase
Subject: Re: [avr-libc-dev] Re: vargs and ... doesn't work?
Date: Tue, 6 Jun 2006 19:12:08 +0200
User-agent: KMail/1.7.1

Joerg Desch wrote on Dienstag, 6. Juni 2006 09:07 :
> On Fri, 2 Jun 2006 05:53:51 +0200
>
> Björn Haase <address@hidden> wrote:
> > The most recent versions carry the suffix "_6". The header files for
> > 256x should rather be taken from Anatoly's (aesok) post than from my the
> > _5 patch:
>
> Thanks for your new patches.
>
> > > mega_256x_binutils_5.patch.txt
> >
> > There should no longer be any need for patching binutils. It's already
> > commited to mainline cvs.
>
> ok. Thanks again.
>
> > For your printf tests, did you use the pmem variant or the ram variant?
> > It might be that the register responsible for the high byte of the
> > address (RAMPZ ?) for lpm instructions does not contain the correct
> > value.?
>
> I've build the binutils snapshot 060603, the gcc 060603 with your patch6
> and avr-libc with patch6 this morning. It works now. Both printf
> (avr-libc) and rprintf (avr-lib) works like expected. I've used the pmem
> and the ram variants. No more problems. For now ;-)
Fine.

Could you make a brief test wether usage of the >128k memory area works as 
expected?

You could, e.g. add huge functions with lots of nops by using

int
dummy (void)
{ 
   asm volatile (".skip 130000");
   return 42;
}

int
dummy2 (void)
{ 
   asm volatile (".skip 40000");
   return 1;
}

The interesting thing is if you could sucessfully generate pointers to 
functions beyond the 128k boundary.

The gcc option "-Wl,--debug-stubs" could be helpful for debugging. For 
functions behind 128k a jump stub instruction should be generated.

> The headers from Anatoly's post use FLASHEND 0x1FFFF (as for the
> Mega1280). For the Mega2560 it shouldn't it be 0x3FFFF?

Yes.

Bjoern.




reply via email to

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