[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
AW: [avr-gcc-list] SIGNAL and INTERRUPT overhead
From: |
Haase Bjoern (PT-BEU/EMT) * |
Subject: |
AW: [avr-gcc-list] SIGNAL and INTERRUPT overhead |
Date: |
Tue, 23 Aug 2005 11:48:31 +0200 |
Benjamin Titzer wrote:
>
>Sounds to me like the design of GCC and the constraints of a particular
>calling convention do not allow it to do something smart here. I think the
>solution that would satisfy most everyone involved would be for the
>compiler to generate code that only saves the state of registers that it
>uses (and overwrites) and then restore them upon exit. This is a simple
>use-def analysis on the registers and would be simple enough to implement.
FYI, I am working on a scheme that GCC remembers for all of the functions that
it has already compiled which registers are actually clobbered so that all
other functions do not need to safe/restore the registers that are preserved by
the respective function. This could then be used also by the
prologues/epilogues for the SIGNAL/INTERRUPT functions to improve efficiency.
This will be, however, a rather tough work, don't expect too much during the
next week.
Yours,
Björn
- AW: [avr-gcc-list] SIGNAL and INTERRUPT overhead,
Haase Bjoern (PT-BEU/EMT) * <=