??? 02/14/08 11:26 Read: times |
#150807 - 'using' can be counterproductive in SDCC Responding to: ???'s previous message |
If your ISR does not use any Rx register adding a using directive can prove counterproductive. The ISR will needlessly change the register bank and save/restore PSW on stack. It obeys your instruction in this regard.
But SDCC does not simply push/pop all registers on stack for an ISR. Instead it tries to determine which ones were actually used and only saves these. So the optimization opportunity exists to enhance this register usage detection mechanism with ignoring the supplied using directive if no Rx registers were used. SDCC will never put the ISR in the 8 byte slot but always use an LJMP at the vector address. |
Topic | Author | Date |
Minimum ISR time | 01/01/70 00:00 | |
"bible" time? | 01/01/70 00:00 | |
details | 01/01/70 00:00 | |
re-expalin | 01/01/70 00:00 | |
Re: Minimum ISR time | 01/01/70 00:00 | |
what simple ISR? | 01/01/70 00:00 | |
You're right, it is bloody C | 01/01/70 00:00 | |
C and ISRs | 01/01/70 00:00 | |
Know thy tools | 01/01/70 00:00 | |
'using' can be counterproductive in SDCC | 01/01/70 00:00 | |
ISRs in C | 01/01/70 00:00 | |
Good point | 01/01/70 00:00 |