Advertisement

FlexCC2: An Optimizing Retargetable C Compiler for DSP Processors

  • Valérie Bertin
  • Jean-Marc Daveau
  • Philippe Guillaume
  • Thierry Lepley
  • Denis Pilat
  • Claire Richard
  • Miguel Santana
  • Thomas Thery
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2491)

Abstract

The design of efficient compilers for embedded processors has emerged with the growing importance of embedded application-specific processors and DSPs in consumer, multimedia and communication applications. We present in this paper the FlexCC2 compiler. FlexCC2 is a retargetable compiler for embedded processors, part of the FlexWare embedded software development environment. Application specific processors often contain specific and dedicated features like specific instructions that traditional compilers hardly accommodate. In this context, compilers able to produce high quality code, both in size and performance while being easily retargetable and able to use processor specific instructions represent a particular competitive differentiation. FlexCC2 offers such a differentiation to its users.

Keywords

Intermediate Representation Register Allocation Embed Processor Software Pipeline Reservation Table 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    ACE Associated Compiler Expert bv. The CoSy Framework, a Compiler Construction System. Ref. CoSy-8006-fw, 2000.Google Scholar
  2. 2.
    A. Appel, J. Davidson, and N. Ramsey. The Zephyr compiler infrastructure. Internal Report, http://www.RCS.virginia.edu/zephyr, 1998.
  3. 3.
    D. Callahan, B. Koblenz. Register Allocation via Hierarchical Graph Coloring. Proceedings of the ACM SIGPLAN’91 Conference on Programming Languages Design and Implementation, Volume 26, June 1991, Pages 192–202.Google Scholar
  4. 4.
    Z. Chamski, C. Eisenbeis, E. Rohou. Flexible Issue Slot Assignment for VLIW Architectures. Proceedings of the Software and Compilers for Embedded Systems Symposium, S COP ES’99, September 1999.Google Scholar
  5. 5.
    L. George, A. Appel. Iterated Register Coalescing. ACM Transactions on Programming Languages and Systems, Vol 18, No 3, May 1996, Pages 300–324.CrossRefGoogle Scholar
  6. 6.
    P. Guillaume. Contribution aux Aspects Dorsaux de la Synthèse de Systèmes Monopuces. Ph.D thesis. University of Grenoble, June 1999.Google Scholar
  7. 7.
    W-M. Hwu & all. The Superblock: An effective Technique for VLIW and Superscalar Compilation. Journal of supercomputing A:229–248, 1993.Google Scholar
  8. 8.
    R. Leupers. Code Optimization Techniques for Embedded Processors, Methods, Algorithms and Tools. Kluwer Academic Publishers, 2000.Google Scholar
  9. 9.
    S. Liao, Code Generation and Optimization for Embedded Digital Signal Processors. Ph.D. thesis, Massachusetts Institute of Technology, 1996 Google Scholar
  10. 10.
    C. Liem. Retargetable Compilers for Embedded Core Processors. Kluwer Academic Publishers, 1997.Google Scholar
  11. 11.
    C. Liem, P. Paulin. ”Compilation Techniques and Tools for Embedded Processor Architectures”, in “Hardware/Software Co-Design: Principles and Practice, ” J. Staunstrup, W. Wolf (editors), Kluwer Academic Publishers, 1997.Google Scholar
  12. 12.
    P. Paulin, M. Santana. FlexWare: A Retargetable Embedded Software Development Environment for Application-Specific Instruction-set Processors. IEEE Design & Test Magazine, Special Issue on Embedded Processors, Summer 2002.Google Scholar
  13. 13.
    G. Pokam, F. Bodin. A Retargetable Preprocessor for Multimedia Instructions. Proceedings of the 9th workshop on Compilers for Parallel Computers (CPC’2001), June 2001.Google Scholar
  14. 14.
    B. Ramakrishna Rau. Iterative Modulo Scheduling. Hewlett Packard HP:-94-115 research report, November 1995.Google Scholar
  15. 15.
    E. Rohou, F. Bodin, A. Seznec. SALTO: System for assembly language transformation and optimization. Technical report 1032, IRISA, September 1996.Google Scholar
  16. 16.
    M.D. Smith and G. Holloway. The Machine-SUIF Documentation Set. Technical report, Harvard University, 2000.Google Scholar
  17. 17.
    P.H. Sweany. Inter-Block Code Motion Without Copies. Ph.D thesis, Colorado State University, 1992.Google Scholar
  18. 18.
    R. Wilson & all. SUIF: An Infrastructure for Research on Parallelizing and Optimizing Compilers. ACM SIGPLAN Notices, 29(12), Dec. 1996 Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Valérie Bertin
    • 1
  • Jean-Marc Daveau
    • 1
  • Philippe Guillaume
    • 1
  • Thierry Lepley
    • 1
  • Denis Pilat
    • 1
  • Claire Richard
    • 1
  • Miguel Santana
    • 1
  • Thomas Thery
    • 1
  1. 1.STMicroelectronics, Central R&D Embedded System TechnologyCrollesFrance

Personalised recommendations