Hi George, If you define BOOL as unsigned char it will probably all work and it might gain these extra bytes of stack space. But remember that every function that uses more than one BOOL will now require two bytes instead of one on the stack.
Maarten > Hi, Maarten. Thanks for the quick reply. > > Originally, I had many problems with stack overflows but by changing > things here and there I've overcome most of them. So I probably don't need > to squeeze every single byte for the stack. Although I'm pondering > switching to model-huge so I might change my mind on that one. > > I still went and had a look at some sdcc library files. For instance, > _divulong.c declares a variable > BOOL c; > > Then in the respective asm file, c is being allocated to b0 (since BOOL is > __bit as far as I can understand). Am I looking in the right place? So for > example, if I were to recompile libraries with BOOL defined as unsigned > char, would I be breaking everything? Even if that worked, I assume I'd be > putting extra burden on stack during execution so I wonder if the overall > result would be an improvement. > > Thanks again for your time > Regards > geo > > On 3 Nov 2010, at 18:24, Maarten Brock wrote: > >> Hi George, >> >> The T represents the bit bank which contains 8 pseudo bit-registers like >> the regular 4 banks of byte registers. It is used by reentrant functions >> that need bit parameters or local bit variables. There are probably some >> library functions that use it. As it is a bit bank it cannot be moved >> out >> of the bit-addressable area and thus cannot go to address 0x08. Are you >> sure you need to squeeze out those last few bytes for the stack? >> >> Maarten >> >>> Hello all >>> >>> I'm building the Contiki OS for cc2430 (8051 with model-large >>> stack-auto). >>> This is the start of my memory layout after building (rest allocated >>> for >>> stack). What I am trying to achieve is make more room for the stack, >>> without using --xstack. Using sdcc 3.0.0 #6037 >>> >>> I can easily move the a, b, c Data bytes back to external RAM. However, >>> what's causing me hassle is the T byte at 0x20. My map file shows >>> BIT_BANK >>> starting at 0020 with size 1 but nothing listed underneath so I can't >>> understand what's being put there. I've looked at the various asm files >>> and I can't find anything. It can't be the bit-addressable SFRs, >>> surely? >>> sdcc libraries perhaps? >>> >>> Is it possible to remove T altogether or perhaps move it to, say, 0x08? >>> Would this result in the stack starting at a lower address? I've tried >>> --stack-loc, --data-loc, -Wl -bBSEG but no success. >>> >>> Any advice would be appreciated. Thanks a lot >>> geo >>> >>> Internal RAM layout: >>> 0 1 2 3 4 5 6 7 8 9 A B C D E F >>> 0x00:|0|0|0|0|0|0|0|0|a|a|a|a|a|a|a|a| >>> 0x10:|a|a|a|a|b|b|b|b|b|b|b|b|b|c| | | >>> 0x20:|T|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| >>> 0x30:|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S|S| >>> >> >> ------------------------------------------------------------------------------ >> Achieve Improved Network Security with IP and DNS Reputation. >> Defend against bad network traffic, including botnets, malware, >> phishing sites, and compromised hosts - saving your company time, >> money, and embarrassment. Learn More! >> http://p.sf.net/sfu/hpdev2dev-nov >> _______________________________________________ >> Sdcc-user mailing list >> Sdcc-user@lists.sourceforge.net >> https://lists.sourceforge.net/lists/listinfo/sdcc-user > > > ------------------------------------------------------------------------------ > The Next 800 Companies to Lead America's Growth: New Video Whitepaper > David G. Thomson, author of the best-selling book "Blueprint to a > Billion" shares his insights and actions to help propel your > business during the next growth cycle. Listen Now! > http://p.sf.net/sfu/SAP-dev2dev > _______________________________________________ > Sdcc-user mailing list > Sdcc-user@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/sdcc-user > > ------------------------------------------------------------------------------ The Next 800 Companies to Lead America's Growth: New Video Whitepaper David G. Thomson, author of the best-selling book "Blueprint to a Billion" shares his insights and actions to help propel your business during the next growth cycle. Listen Now! http://p.sf.net/sfu/SAP-dev2dev _______________________________________________ Sdcc-user mailing list Sdcc-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sdcc-user