summaryrefslogtreecommitdiffstats
path: root/devel/sdcc/DETAILS
diff options
context:
space:
mode:
Diffstat (limited to 'devel/sdcc/DETAILS')
-rwxr-xr-xdevel/sdcc/DETAILS42
1 files changed, 42 insertions, 0 deletions
diff --git a/devel/sdcc/DETAILS b/devel/sdcc/DETAILS
new file mode 100755
index 0000000000..b2f28b6f5d
--- /dev/null
+++ b/devel/sdcc/DETAILS
@@ -0,0 +1,42 @@
+ SPELL=sdcc
+ VERSION=3.4.0
+ SOURCE="${SPELL}-src-${VERSION}.tar.bz2"
+ SOURCE_URL[0]=http://sourceforge.net/projects/${SPELL}/files/${SPELL}/${VERSION}/${SOURCE}
+ SOURCE_HASH=sha512:551d393ef30e4ea653d5130b52df1e9560fc9a0e59cc674ab20a79f5d1da9a1ae7e33d283e88b7abfd8648116178813aef62859f021cd3fbb56d06fd9899ba10
+SOURCE_DIRECTORY="${BUILD_DIRECTORY}/${SPELL}-${VERSION}"
+ WEB_SITE="http://sdcc.sourceforge.net/"
+ LICENSE[0]="GPLv2+"
+ ENTERED=20140831
+ KEYWORDS=""
+ SHORT="Small Device C Compiler"
+cat << EOF
+SDCC is a retargettable, optimizing ANSI - C compiler suite that targets
+the Intel MCS51 based microprocessors (8031, 8032, 8051, 8052, etc.), Maxim
+(formerly Dallas) DS80C390 variants, Freescale (formerly Motorola) HC08
+based (hc08, s08), Zilog Z80 based MCUs (z80, z180, gbz80, Rabbit 2000/3000,
+Rabbit 3000A, TLCS-90) and STMicroelectronics STM8. Work is in progress on
+supporting the Microchip PIC16 and PIC18 targets. It can be retargeted for
+other microprocessors.
+
+The package also includes simulators, debugger, and run-time libraries.
+
+Features:
+* extensive MCU specific language extensions, allowing effective use of the
+ underlying hardware.
+* a host of standard optimizations such as global sub expression elimination,
+ loop optimizations (loop invariant, strength reduction of induction variables
+ and loop reversing), constant folding and propagation, copy propagation, dead
+ code elimination and jump tables for 'switch' statements.
+* MCU specific optimizations, including a global register allocator.
+* adaptable MCU specific backend that should be well suited for other 8 bit MCUs
+* independent rule based peep hole optimizer.
+* a full range of data types: char (8 bits, 1 byte), short (16 bits, 2 bytes),
+ int (16 bits, 2 bytes), long (32 bit, 4 bytes), float (4 byte IEEE) and
+ _Bool/bool;
+* basic (no integer constants) support for long long (64 bit, 8 bytes) data
+ types for the z80, z180, r2k, r3ka, gbz80, hc08 and s08 targets.
+* the ability to add inline assembler code anywhere in a function.
+* the ability to report on the complexity of a function to help decide what
+ should be re-written in assembler.
+* a good selection of automated regression tests.
+EOF