Hi Philipp,

I only use sdcc for the 8051 series of microcontrollers.

On Wed, 2015-07-29 at 09:28 +0200, Philipp Klaus Krause wrote:
> * Do they contain divisions ?

Usually not


> * Do they contain multiplications ?

Usually not


> * Do they contain pointer arithmetic ?

Do you mean stuff like this (I do not really know what you
mean by "pointer arithmetic") :

i2cdat = i2cmsg.buffer[datacount];

or

serial_rbuf[(serial_rpos + serial_rcnt++) % serial_rbuflen] = c;

Then yes.


> * Do they contain array accesses ?

See above.


> * Do they contain shifts ?

On occasion.


> * Do they call other functions ?

No, and I do my best to keep it like that.
I think it is a bad programming practice to call another function
from a interrupt service routine.

> * Are those other called functions static ?
> * Do those other called functions contain divisions ?

Not relevant, see above.


For my I2C bus interrupt routine I use a switch case.
And in my timer interrupt routines I use multiple semaphores
controlled by global variables which count down to zero every
time the interrupt routine is entered.
And further the usual comparisons of a variable to a value and
so on.

roelof



------------------------------------------------------------------------------
_______________________________________________
Sdcc-user mailing list
Sdcc-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sdcc-user

Reply via email to