8.1. Linker Overview

The C29x linker, c29lnk, is the proprietary linker provided by Texas Instruments.

This is the same proprietary linker use for the Texas Instruments C28x compiler. Linker commands files that were created for applications on C28x devices can generally be adapted easily for use on C29x devices.

The linker allows you to allocate output sections efficiently in the memory map. As the linker combines object files, it performs the following tasks:

  • Allocates sections into the target system’s configured memory

  • Relocates symbols and sections to assign them to final addresses

  • Resolves undefined external references between input files

The linker command language controls memory configuration, output section definition, and address binding. The language supports expression assignment and evaluation. You configure system memory by defining and creating a memory model that you design. Two powerful directives, MEMORY and SECTIONS, allow you to:

  • Allocate sections into specific areas of memory

  • Combine object file sections

  • Define or redefine global symbols at link time