??? 02/21/07 13:04 Read: times |
#133407 - comments Responding to: ???'s previous message |
If the code in function "Shared" decides to use absolute register addressing for any reason (and we have seen that *a++ = *b++ uses it), then this is broken. .... And before anyone says this usage is unsafe, I do take concurrency issues into account and ensure that function Shared is not called from both places at the same time (code not shown in example).
such 'code' would add so much variable interrupt latency that I fail to see the use thereof. I see two cases 1) Shated() is huge and the latency variation will kill you, or Shared() is small so there is no reason to 'share' it. Where non-optimal code is acceptable (and this is more places that you might at first think), Keil is fine. Tell us which OTHER compiler that is 'fine' "Where optimal code is required" I agree with what you say to some extent, but why single out Keil for what is the fact for ALL compilers. Erik |