Zum Inhalt springen

„Small Device C Compiler“ – Versionsunterschied

aus Wikipedia, der freien Enzyklopädie
[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K Doppelten Parameter entfernt
KKeine Bearbeitungszusammenfassung
Zeile 8: Zeile 8:
|Hersteller =
|Hersteller =
|Erscheinungsjahr =
|Erscheinungsjahr =
|AktuelleVersion = 3.9.0
|AktuelleVersion = 4.0.0
|AktuelleVersionFreigabeDatum = 15. April 2019
|AktuelleVersionFreigabeDatum = 30. Januar 2020
|AktuelleVorabVersion =
|AktuelleVorabVersion =
|AktuelleVorabVersionFreigabeDatum =
|AktuelleVorabVersionFreigabeDatum =

Version vom 30. Januar 2020, 19:59 Uhr

Small Device C Compiler
Basisdaten

Aktuelle Version 4.0.0
(30. Januar 2020)
Betriebssystem Linux, Windows, Mac
Programmier­sprache C[1]
Kategorie C Compiler
Lizenz GPL (Freie Software)
sdcc.sourceforge.net

Der Small Device C Compiler (SDCC) ist ein quelloffener C-Cross-Compiler für Mikrokontroller. Die Software-Suite umfasst neben dem Compiler einen Linker, Assembler, Simulator und Debugger. Sein Design ist für eine Anpassung an weitere 8-Bit-Zielsysteme ausgelegt (engl. retargetable).[2] Die Software steht unter der GNU General Public License.

SDCC wurde eingesetzt, um das Echtzeit-Betriebssystem des FreeRTOS-Projekts auf die 8051-basierte Mikrocontroller-Serie der Silicon Laboratories zu portieren.

Unterstützte Zielarchitekturen

In Arbeit:

Optimierungen

Die von SDCC unterstützen Architekturen unterscheiden sich teils deutlich von anderen üblichen, weshalb SDCC im Vergleich zu anderen Compilern wie GCC und LLVM teils deutlich andere Optimierungen aufweist. Beispielsweise sind die meisten Zielarchitekturen CISC mit einer geringen Anzahl an Registern. SDCC verwendet für die meisten Zielarchitekturen einen auf Baumzerlegungen basierenden optimalen Registerallokator, dessen Laufzeit exponentiell in der Anzahl der Register ist. Die Registerallokation erfolgt byteweise (bisher nur für STM8 vollständig implementiert).

Einzelnachweise

  1. The small_device_c_compiler Open Source Project on Open Hub: Languages Page. In: Open Hub. (abgerufen am 26. September 2018).
  2. Rainer Leupers, Peter Marwedel: Retargetable Compiler Technology for Embedded Systems: Tools and Applications. Springer, 2001, S. 126.