From: Sandeep D. <sa...@wi...> - 2001-11-06 00:11:45
|
The first ever release of SDCC (with only mcs51) had this concept of psuedo registers, I killed it very shortly because of various issues that came up, for which I had no good solutions.. Now having had some experience I would like to revive this , this will reduce spillage (those nasty slocs). Here is a brief description of what I plan to do. memory locations 0x8-0xb reserved for these pseudo registers, these registers will be allocated to live-ranges / iTemps that do not cross call boundaries , so no need to push & pop them across function calls (infrastructure for this already exists.. for the AVR port ). And ONLY for the functions that operate on register bank 0. The only problem I see are Interrupt service routines, they will need to save & restore these registers ... which could mean a big overhead. Feedbacks are welcome. Sandeep |