Compilador C pequeno dispositivo
| Compilador C pequeno dispositivo | |
|---|---|
| Dados básicos
| |
| Versão atual | 4.1.0 (8 de março de 2021) |
| sistema operacional | Linux , Windows , Mac |
| linguagem de programação | C. |
| categoria | Compilador C |
| Licença | GPL ( Software Livre ) |
| sdcc.sourceforge.net | |
O dispositivo de pequeno C Compiler ( SDCC ) é uma fonte aberto C - compilador cruzado para o microcontrolador . Além do compilador, o pacote de software inclui um vinculador , montador , simulador e depurador . Seu design é projetado para adaptação a outros sistemas de destino de 8 bits ( retargetable ). O software está sob a GNU General Public License .
SDCC foi usado para portar o sistema operacional em tempo real do projeto FreeRTOS para a série de microcontroladores baseados em 8051 da Silicon Laboratories .
Arquiteturas de destino com suporte
- Intel 8051 e suas variantes
- Zilog Z80 e variantes binárias compatíveis.
- Zilog Z180
- Rabbit 2000 , bem como a variante binária compatível Rabbit 3000
- Rabbit 3000A, bem como a variante binária compatível Rabbit 4000
- Zilog eZ80 no modo Z80.
- Sharp LR35902 (CPU de Game Boy )
- Freescale HC08
- Freescale S08
- STMicroelectronics STM8
- Toshiba TLCS-90
- Tecnologia Padauk PDK14 e PDK15.
Em andamento:
- Padauk Technology PDK13.
- Variantes do microcontrolador Microchip PIC PIC16 e PIC18
Otimizações
Algumas das arquiteturas suportadas pelo SDCC diferem significativamente de outras comuns, é por isso que o SDCC tem otimizações significativamente diferentes em comparação com outros compiladores, como GCC e LLVM . Por exemplo, a maioria das arquiteturas de destino são CISC com um pequeno número de registros. Para a maioria das arquiteturas de destino, SDCC usa um alocador de registro ideal baseado na decomposição de árvore , o tempo de execução do qual é exponencial no número de registros. A alocação de registro é feita byte a byte (até agora apenas totalmente implementado para STM8).
Evidência individual
- ↑ O projeto de código aberto small_device_c_compiler na página Open Hub: Idiomas . In: Open Hub . (acessado em 26 de setembro de 2018).
- ↑ Rainer Leupers, Peter Marwedel: Tecnologia de Compilador Retargetable para Sistemas Embarcados: Ferramentas e Aplicações. Springer, 2001, página 126.