Hallo zusammen,
hatte gerade ein upgrade auf avr-g++ 8.1.0 (Arch Linux) durchgeführt.
Nun gibt es bei einigen Projekten für den atmega324pb in den ISRs die
folgende Fehlermeldung des avr-as:
1 | /tmp/ccNSdzR0.s: Assembler messages:
|
2 | /tmp/ccNSdzR0.s:141: Error: pseudo instruction `__gcc_isr' not supported
|
3 | /tmp/ccNSdzR0.s:156: Error: pseudo instruction `__gcc_isr' not supported
|
4 | /tmp/ccNSdzR0.s:158: Error: pseudo instruction `__gcc_isr' not supported
|
Die avr-as Versionen sind: 2.30 und 2.30.51.20180507. Beide produzieren
diesen Fehler.
Bei einem Target atmega328pb etwa gibt es diesen Fehler nicht.
Es lässt sich natürlich mit -mno-gas-isr-prologues beheben, doch dann
habe ich ja die optimierte Gestaltung der push/pop-Sequenzen für die
ISRs nicht mehr.
Hier ist wahrscheinlich Johann gefragt ;-)
Der Fehler passiert auch mit folgendem Minimalbeispiel:
1 | #include <avr/interrupt.h>
|
2 |
|
3 | int main() {
|
4 | }
|
5 |
|
6 | ISR(TIMER0_COMPA_vect) {
|
7 | }
|
Vermutung: da das Target atmege324pb ja nicht beim avr-g++ dabei ist,
habe ich die device-specs aus der Atmel-Distribution (1.2.209)
verwendet. Könnte es damit etwas zu tun haben?