AVR-GCC Jak zablokować używanie przez kompilator rejestru z zakresu r2 - r14

Feb 20, 2006 4 Replies

Witam, AVR-GCC Jak zablokować używanie przez kompilator rejestru z zakresu r2 - r14 ?



Pozdrawiam



Andrzej



In the darkest hour on Mon, 20 Feb 2006 17:56:35 +0100, zwus snipped-for-privacy@op.pl screamed:

IMO nie da sie. Radzilbym przepisac czesc asemblerowa.

Witam,

Generalnie da się to zrobić. Wystarczy zadeklarować zmienną na konkretnych rejestrach. A następnie trzeba wykonanać na niej jakieś działanie żeby optymalizacja kompilatora nie usunęła jej. Tylko że jest to metoda do okoła, a jeśli stosuje się jeszcze moduły *.o to trzeba panować żeby we wszytkich modułach odpowiednie rejestry były poblokowane.

dlatego pytałem czy nie ma czegoś takiego jak " #pragma ..."

Pozdrawiam Andrzej

In the darkest hour on Mon, 20 Feb 2006 19:53:23 +0100, zwus snipped-for-privacy@op.pl screamed:

Zmienne tak. Trzeba dodać tylko __volatile__.

Zawsze możesz do tego użyć #define, ale ręczne dodawania Cię nie ominą.

Dzięki za info Włąsnie z "violatile" kompiluje się tak jak bym chciał

Pozdrawiam Andrzej

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required