Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ucbvax!hplabs!hpl-opus!hpnmdla!hpsad!sdw From: sdw@hpsad.HP.COM (Steve Warwick) Newsgroups: comp.dsp Subject: Re: MC56000 brain dead?? Message-ID: <9520010@hpsad.HP.COM> Date: 2 Jan 90 22:44:14 GMT References: <9520009@hpsad.HP.COM> Organization: HP Signal Analysis Division - Rohnert Park, CA Lines: 18 As indicated by Pete Percosan from Motorola, the C compiler DOES correctly deal with the hardware stack limitation by transferring the return address to the software stack upon subroutine entry, and restoring it upon exit, effectivly bypassing the hardware stack. This has also been verified by simulation. Overhead is two moves per subroutine call. As he correctly asserts, since the processor has a limited number of external interrupts, the 15 level stack is sufficient as long as the `do' construct is not overused. Again, a software stack can be used to buffer nested do loops written in assembler if necessary. I am not shure whether the Motorola C compiler even uses the do loop construction.. Thanks for your replies, Steven Warwick sdw@hpsad