[ANN] SDCC-Version 2.1.0 Retargettable, Optimizing ANSI-C Compiler (8051)

3 Apr 1999 22:00:06 -0500

          From comp.compilers

Related articles
[ANN] SDCC-Version 2.1.0 Retargettable, Optimizing ANSI-C Compiler (80 sandeep.dutta@usa.net (1999-04-03)
| List of all articles for this month |

From: sandeep.dutta@usa.net
Newsgroups: comp.compilers,comp.realtime
Date: 3 Apr 1999 22:00:06 -0500
Organization: Deja News - The Leader in Internet Discussion
Keywords: C, available

SDCC is a Free ware , retargettable, optimizing ANSI - C compiler. The
current version targets Intel 8051 based MCUs,it can be retargeted for
other 8 bit MCUs or PICs. Full source code for the compiler and all
its components are distributed under GPL.

SDCC uses ASXXXX & ASLINK a Free ware, retargettable assembler &
linker. SDCC has extensive MCU(8051) specific language
extensions,which lets it utilize the underlying hardware
effectively. The front end (parser) will be enhanced to handle
language extensions for other MCUs as and when they are targeted. In
addition to the MCU Specific optimizations SDCC also does a host of
standard optimizations like global sub expression elimination, loop
optimizations (loop invariant & strength reduction of induction
variables), constant folding & propagation, copy propagation, dead
code elimination and jump tables for 'switch' statements. For the Back
end SDCC uses a global register allocation scheme which should be well
suited for other 8 bit MCUs, the peep hole optimizer uses a rule based
substitution mechanism which is MCU independent. Supported data types
are short(8 bits, 1 byte), char (8 bits, 1 byte),int (16 bits, 2 bytes
),long (32 bit, 4 bytes) & float(4 byte IEEE). 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 to report the relative complexity of a function,
these functions can then be further optimized , or hand coded in
assembly if need be.

The Latest version can be downloaded from


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.