Hi, Dmitry ! Thank you for the answer.
> 1. Are you sure that registers do not have to be pushed onto stack? Yes. I used SOS with 'naked' task functions and it worked fine (more than a year of use) until I added to one project task which allocates some local variables on the stack and so FrameSize!=0. Adding "sub #FrameSize,r1" cured this problem, but 'task' attribute much more elegant solution. Task functions never return in usual way (they behave like the main() do), so why do we need to waste the stack ? > 2. Could you please make diff with '-c3p' flags (this looks more informative)? The attached (to the previous post) patch was made with those flags. (Maybe MinGW works a bit different then UNIX?). If you want tell me where to send the whole msp430.c file (I do not think list is a good place for such posts ;). > Actually I'm going to switch to 3.4 and going to commit it to 3.4 tree. Does 3.4 really better then 3.2.1 ? All the best ! Oleg