We conceived and developed a code optimization technology that was successfully applied to a variety of different hardware architectures and shown consistent great superiority over all existing compilers.

The modern DSP's/CPU's require a tight interface between compiler and hardware architecture in order to achieve high utilization of the available resources. Compilers have not shown the ability to meet the needs of programmers on critical code. As architecture scales up, it is becoming so complex that human programmers can't deal with the scheduling and tracking of so many registers, execution units and cores. The result may be an architecture that can't be programmed to apply most of its resources on real-life algorithms.

To address this problem we developed the Dalsoft Code Optimizer ( dco ) - an optimizing code system for the Digital Signal Processor(s) or CPU ( referred as target ). This is a retargetable software package specifically designed to optimize the code of the target by taking FULL ADVANTAGE of the options and features provided by the target microprocessor.

The dco is used to optimize code generated by a compiler. The programmer uses a compiler (C/C++, FORTRAN etc.) to translate his code into targets assembly code. This code is used as an input to dco. The output, generated by the dco, is a highly optimized target's assembly code that is logically identical to the original one; dco is rearranging the existing code, performing multi-issue optimization, loop unrolling, vectorization, and auto-parallelization reassigning available registers, etc. To create a final object file the generated code should be assembled.

Note that dco does not require preprocessing or any other involvement from the user. It is fully automated and it is possible to incorporate dco into makefiles or other product generation tools.

The use of dco will greatly improve the quality of the generated code. It, therefore, may prove to be a vital contribution to the production of a winning solution for your Digital Signal Processor(s) or CPU.





existing optimizers
| x86 optimizer | retargeting GCC | port to a new processor


All product and company names are trademarks of their respective companies.