From: Wojciech Z. <wz...@is...> - 2000-04-04 10:44:39
|
Hi All, Yet another comment. I think, that the improvement of overlying mechanizm could also help there. AFAIR now only the local (or auto or compiler's internal) variables declared inside of procedures not calling other ones are overlayed. However this could be probably improved by analysis of procedure calls. Something like: If procedure A can call (directly or indirectly) the procedure B, then their variables shouldn't share the same memory area, but if another procedure D calls procedure E, then the two blocks (A+B and D+E) can be overlayed. There is however problem with pointers to functions/procedures :-(. Wojciech M. Zabolotny http://www.ise.pw.edu.pl/~wzab <--> wz...@is... On Mon, Apr 03, 2000 at 07:36:09AM -0700, Sandeep Dutta wrote: > Hi michal > > Kevin Vigor is working on a way to make the _sloc_1 variables goto > xternal RAM this would be very useful for large projects. Please follow > up wth him regarding avdance (pre-release) copies. He is on the > developer list > > Sandeep > > > sdcc - http://www.geocities.com/ResearchTriangle/Forum/1353 > > > > Hi, > > I have very huge project and have to put everything in XRAM. But it won't help, because (looking in .map file) I see that I have in internal RAM about 200 bytes (which is physicly inposiible for 51). These data are variable not declared by me, it has names like this > > .. > > func1_sloc_1, > > func1_sloc_2, > > .. > > > > So I think it is temp variable for long expressions in C code. > > > > I tried to compile it with external stack (--xstack) but it didn't help. So I used pragma NODCSE before function which leads to overfill but it didn't help either. > > > > So what should I try next? > > > > I have no others tips! > > > > Help me please. > > > > Mikee > > |