Bug im AVR Embedded bei ISR - wo melden?

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Benutzeravatar
kupferstecher
Beiträge: 418
Registriert: Do 17. Nov 2016, 11:52

Re: Bug im AVR Embedded bei ISR - wo melden?

Beitrag von kupferstecher »

FPK hat geschrieben:Die Kompatibilität zu gcc ist wichtig, es gibt sicherlich genügend Leute, die mit gcc erzeugte Libraries/Object files linken wollen und dann macht das Erfinden eigener Konventionen nur Probleme.

Du hast Recht, da habe ich gar nicht dran gedacht. D.h. um Kompatibilität zu haben muss man eigentlich zwingend die gleichen Register verwenden.

Aus der Beschreibung für die GCC-Registernutzung:
r1 - assumed to be always zero in any C code, may be used to remember something for a while within one piece of assembler code, but must then be cleared after use (clr r1). This includes any use of the [f]mul[s[u]] instructions, which return their result in r1:r0. Interrupt handlers save and clear r1 on entry, and restore r1 on exit (in case it was non-zero).

http://www.nongnu.org/avr-libc/user-man ... _reg_usage

Antworten