Kompilator C dla małych urządzeń
| Kompilator C dla małych urządzeń | |
|---|---|
| Podstawowe dane
| |
| Aktualna wersja | 4.1.0 (8 marca 2021) |
| system operacyjny | Linux , Windows , Mac |
| język programowania | DO. |
| Kategoria | Kompilator C. |
| Licencja | GPL ( wolne oprogramowanie ) |
| sdcc.sourceforge.net | |
Urządzenie Małe kompilator C ( SDCC ) jest otwarty źródłem C - przekrój kompilator do mikrokontrolera . Oprócz kompilatora pakiet oprogramowania zawiera konsolidator , asembler , symulator i debugger . Jego konstrukcja jest przeznaczona do adaptacji do innych 8-bitowych systemów docelowych (z możliwością ponownego kierowania ). Oprogramowanie jest objęte Powszechną Licencją Publiczną GNU .
SDCC użyto do portu system operacyjny czasu rzeczywistego z tych FreeRTOS projekt do 8051- bazie mikrokontrolerów serii od Silicon Laboratories .
Obsługiwane architektury docelowe
- Intel 8051 i jego warianty
- Zilog Z80 i warianty kompatybilne z binarnymi.
- Zilog Z180
- Rabbit 2000, a także wariant kompatybilny binarnie Rabbit 3000
- Rabbit 3000A, a także wariant kompatybilny binarnie Rabbit 4000
- Zilog eZ80 w trybie Z80.
- Sharp LR35902 (procesor Game Boya )
- Freescale HC08
- Freescale S08
- STMicroelectronics STM8
- Toshiba TLCS-90
- Technologia Padauk PDK14 i PDK15.
W trakcie:
- Technologia Padauk PDK13.
- Warianty mikrokontrolera Microchip PIC PIC16 i PIC18
Optymalizacje
Niektóre architektury obsługiwane przez SDCC różnią się znacznie od innych popularnych architektur, dlatego SDCC ma znacząco różne optymalizacje w porównaniu z innymi kompilatorami, takimi jak GCC i LLVM . Na przykład większość architektur docelowych to CISC z niewielką liczbą rejestrów. W przypadku większości architektur docelowych SDCC wykorzystuje optymalny alokator rejestrów oparty na dekompozycji drzewa , którego czas wykonania jest wykładniczy pod względem liczby rejestrów. Alokacja rejestru odbywa się bajt po bajcie (jak dotąd w pełni zaimplementowana tylko dla STM8).
Indywidualne dowody
- ↑ Projekt open source small_device_c_compiler na stronie Open Hub: Języki . W: Open Hub . (dostęp 26 września 2018).
- ↑ Rainer Leupers, Peter Marwedel: Retargetable Compiler Technology for Embedded Systems: Tools and Applications. Springer, 2001, s. 126.