|
Code Compressor, the first Post-Linker Optimizer
for 8051, reduces the OVERALL size of your application by 10% to 20% (typically),
by applying three extra optimization passes on the binary image of your program.
|

|
|
CodeCompressor is fully integrated into RIDE.
View
CodeCompressor animated presentation (requires Microsoft Internet Explorer,
use the Full Screen Presentation option for the best result)
Download CodeCompressor description
and preliminary benchmarks as a pdf file
(62 Kb)
How does it work ?
CodeCompressor is a complement to traditional optimization tools (that act in the
compiler): CodeCompressor acts after the linker, when all the standard
optimizations have already been performed.
|
|
|
What does it do ?
CodeCompressor acts in 3 passes, each of which can be automatically or manually controlled.
|
|
|
InLining
In this phase the CodeCompressor will look for functions that are only called once in
the application and will move them to the place where they are called, thus saving the
CALL and RET instructions.
Factorization
In this phase the CodeCompressor will look everywhere in the binary file for identical blocks of
code and will put them in subroutines when they are big enough.
Local Optimizations (Peephole)
In this phase the CodeCompressor will rescan the whole code for the last time looking for
local optimizations such as long jumps and calls replacement for the equivalent shorter
version where possible.
|
|
Benchmarks
The table below shows the code size reduction obtained with CodeCompressor on some typical
8051 demo and test programs. The results without CodeCompressor are obtained with
the latest revision of Standard Raisonance Tools. Note that the programs used are quite
small and were already very well optimized before CodeCompressor: Raisonance expects typical
user applications to be shrunk anywhere between 10% and 20%.
|
|
|
Compatibility
CodeCompressor works only with Raisonance tools. Note however, that because Raisonance
tools are compatible with existing C51 applications, it's easy to test CodeCompressor
on applications generated with this toolset.
For more information about CodeCompressor please email support@raisonance.com
|