C2X/C2XX/C5X UNIX C Compiler/Assembler/Linker
TMDS3242555-08

Details  
Tool Type Code Generation Tools - Compilers/Assemblers/Linkers
Current Version v7.0
Release Date  
Host HP/Sun
Operating System UNIX
Supplier Texas Instruments
* Price (US$) 1129.95
* Subscription Service  
* Purchase Tool  


 
DESCRIPTION
Speedy development and code maintenance over the life cycle of a product are concerns that all developers share. TI supports DSP developers with a family of fixed point code generation tools for the TMS320 DSPs. The TI optimizing C compilers translate ANSI-standard, C language files into highly efficient TMS320 assembly language source files, which are then input to the TMS320 assembler/linker.

TI C compilers are complemented by the standard TMS320 programmer's interface for debugging C and assembly source code. The C compilers produce a rich set of debugging information, which allows source-level debugging in C to enhance productivity and shorten the application development cycle.

The TMS320C2x/C2000/C5x Optimizing C Compiler/Assembler/Linker, was designed withthree major efficiency goals in mind:

    ¡@

  • Produce compiled general-purpose C code that approaches the performance of hand-coded assembly language.
  • Provide a simple and accessible programming interface to the C run-time environment so that critical DSP algorithms, demanding extreme performance, can be implemented in assembly language.
  • Establish a comprehensive, easy-to-use tool set for the development of high-performance DSP applications in C.

Additional Requirements
SunOS 4.1.3 or later or Solaris 2.x with binary compatibility package, Open Windows 3


 
FEATURES
Additional key features of the TMS320 C code generation tools include:
  • ANSI standard runtime-support library
  • ROM-able, relocateable, and re-entrant code
  • A C shell program that facilitates one-step translation from C source to executable code



 
CONTENTS

    A shell program that calls the individual programs with the desired options. The shell program can call the parser, the optimizer, the code generator, the interlist utility, the assembler, and the linker.

    The parser reads the C source code file, performs preprocessing functions, verifies the syntax, and produces an intermediate file that is used as an input to the optimizer or code generator.

    The optimizer reads the intermediate file generated by the parser, and performs various general and target specific optimizations to improve the execution speed of the program.

    The code generator reads the intermediate file generated by the parser or the optimizer and converts it to a C2x, C2000, or C5x assembly source code file.

    The interlist utility adds comments containing the C source code within the assembly language source code file.

    The assembler translates assembly language source code into machine language COFF object files. It also supports a macro language that enables users to create their own "instructions".

    The archiver allows you to manage archive files (also called libraries) which consist of a collection of source code files or COFF object files.

    The run-time support archive is a collection of C, C header and assembly language source files that implement ANSI standard runtime-support functions.

    The library-build utility allows you to build a COFF object library from a source code archive.

    The linker allows you to combine COFF object files into a single executable COFF output file. The linker allocates relocatable sections, symbols and resolves external references between input files.

    The hex conversion utility allows you to convert an executable COFF output file into ASCII-Hex, Intel MSC-86, Extended Tektronix, Motorola-S, or TI-Tagged Object file format that can be used as input to an EPROM programmer.

    The cross-reference utility accepts linked object files and produces a listing of all symbols, their definitions, including the names of linked source files where they are defined and referenced.

    The absolute lister accepts linked object files and produces an file that can be used with the assembler to produce an abolute listing file that contains the absolute addresses of all assembled instructions.



 
SPECIFICATIONS
The C Compiler accepts ANSI C source code and produces efficient C2x. C2000, or C5x assembly language source code, performing a wide variety of optimizations to improve the efficiency of the compiled code. The compiler incorporates four levels of state-of-the-art generic and target-specific optimizations. The level of optimizations is selectable. The C compiler was validated with the Perenial, Plum-Hall C Validation Suite and the K&R Test.

Optimizations include:

Specific TMS320C2x/C2000/C5x Optimizations Cost-based register allocation, Autoincrement addressing, Repeat blocks, Delay branches, calls, and returns,

General Optimizations

  • Branch optimizations/control-flow simplification,
  • Algebraic reordering, symbolic simplification, constant folding,
  • Alias disambiguation,
  • Copy propagation,
  • Common subexpression elimination,
  • Redundant assignment elimination,
  • Loop induction variable optimizations/strength reduction,
  • Loop rotation,
  • Loop invariant code motion,
  • Inline expansion of function calls,
  • File level optimizations.

    Works with these Devices:
    TMS320C2000, TMS320C2X, TMS320C5X<