C Compiler Design for an Industrial Network Processor

  • Authors:
  • Jens Wagner;Rainer Leupers

  • Affiliations:
  • University of Dortmund, Dortmund, Germany;University of Dortmund, Dortmund, Germany

  • Venue:
  • OM '01 Proceedings of the 2001 ACM SIGPLAN workshop on Optimization of middleware and distributed systems
  • Year:
  • 2001

Quantified Score

Hi-index 0.00

Visualization

Abstract

One important problem in code generation for embedded processors is the design of efficient compilers for ASIPs with application specific architectures. This paper outlines the design of a C compiler for an industrial ASIP for telecom applications. The target ASIP is a network processor with special instructions for bit-level access to data registers, which is required for packet-oriented communication protocol processing. From a practical viewpoint, we describe the main challenges in exploiting these application specific features in a C compiler, and we show how a compiler backend has been designed that accomodates these features by means of compiler intrinsics and a dedicated register allocator. The compiler is fully operational, and first experimental results indicate that C-level programming of the ASIP leads to good code quality without the need for time-consuming assembly programming.