SDCC (Small Device C Compiler)
is free open source, retargettable, optimizing ANSI-C compiler by
Sandeep Dutta designed for 8 bit Microprocessors. The current
version targets Intel MCS51 based Microprocessors (8031, 8032, 8051,
8052, etc.), Dallas DS80C390
variants, Freescale (formerly Motorola) HC08 and Zilog Z80 based MCUs.
It can be retargeted for other microprocessors, support for Microchip
PIC, Atmel AVR is under development. The entire source code for the
compiler is distributed under GPL. SDCC uses ASXXXX
& ASLINK, an open source retargetable assembler &
linker. SDCC has extensive language extensions suitable for utilizing
various microcontrollers and underlying hardware effectively.
The peep hole optimizer uses a rule based substitution mechanism which is MCU independent. Supported data-types are:
The compiler also allows inline assembler code to be embedded anywhere in a function. In addition, routines developed in assembly can also be called. SDCC also provides an option (--cyclomatic) to report the relative complexity of a function. These functions can then be further optimized, or hand coded in assembly if needed. SDCC also comes with a companion source level debugger SDCDB. The debugger currently uses ucSim, a free open source simulator for 8051 and other micro-controllers. The latest SDCC version can be downloaded from http://sdcc.sourceforge.net/snap.php.Please note: the compiler will probably always be some steps ahead of this documentation1.1.
Next: 1.2 Open Source Up: 1. Introduction Previous: 1. Introduction Contents Index 2008-02-29 |