Compiler für M16/32C - IAR,GCC oder Renesas?

Gast #525191
Lesenswert?

Hallo,
ich will mich für einen Compiler für den M32C entscheiden. Ich habe 
jetzt die HEW Umgebung von Renesas mit dem hauseigenen Compiler und dem 
GCC ausprobiert, funktioniert beides auf den ersten Blick einfach und 
die Dokumentation ist aussreichend. Den IAR kenne ich nur vom SAM7.

Hat jemand eine Empfehlung für mich, wenn die Kosten nicht das primäre 
Argument sind, aber eben auch nicht unwichtig.

Wie sind eure Erfahrungen mit diesen Compilern?

Danke!
Gast #526528
Lesenswert?

Ein paar Probleme hat GCC:

- Er kann nur eine Pointer-Grösse für alles, Code, Daten, near, far, 
RAM, ROM, ... alles gleich. Der M16C will aber 16bit für RAM, 20bit für 
Code haben. Da das nicht geht und er mit 20bit-Pointern nur schlecht 
arbeiten kann, sind es immer 16bit. Adressierung von Daten/Strings/... 
im ROM ist daher kein Deut schöner als bei AVR. Leider hat DJ das auch 
beim M32C so gehalten, obwohl der mit 24bit Pointern ganz gut zurecht 
kommt.

- Die Architektur hat für GCCs Geschmack etwas wenig Register. Das 
Ergebnis ist ein eigentümliches Prozessormodell mit Pseudoregistern im 
RAM. Wie sich das in der Praxis auswirkt, weiss ich allerdings nicht.

- Der Laufzeitcode indirekter Funktionsaufrufe ist nicht reentrant, 
jedenfalls nicht im offiziellen GCC-Quellcode. In Interrupts sollte man 
also tunlichst keine Funktionen indirekt aufrufen (sowas macht man gern 
bei Timer-Interrupts). Und premptive RTOS sind folglich tabu.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren