.asm. The object_file is the name of the object file that the assembler creates. The
assembler uses the source file's name with the default extension .obj for the object
file unless specified otherwise. The list_file is the name of the list file that the
assembler creates. The assembler will use the source file's name and .lst as the default
extension for the list file. The assembler will not generate list files unless the option -l
is set.
The options identify the assembler options. Some commonly used assembler
options are:
.
The -l option tells the assembler to create a listing file showing where the program
and the variables are allocated.
.
The -s option puts all symbols defined in the source code into the symbol table so
the debugger may access them.
.
The -c option makes the case insignificant in symbolic names. For example, -c
makes the symbols ABC and abc equivalent.
.
The -i option specifies a directory where the assembler can find included files such
as those following the .copy and .include directives.
2.3.3 Linker
The linker is used to combine multiple object files into a single executable program for
the target DSP hardware. It resolves external references and performs code relocation to
create the executable code. The C55x linker handles various requirements of different
object files and libraries as well as target system memory configurations. For a specific
hardware configuration, the system designers need to provide the memory mapping
specifications for the linker. This task can be accomplished by using a linker command
file. The Texas Instruments' visual linker is also a very useful tool that provides memory
usage directly.
The linker commands support expression assignment and evaluation, and provides
the MEMORY and SECTION directives. Using these directives, we can define the
memory configuration for the given target system. We can also combine object file
sections, allocate sections into specific memory areas, and define or redefine global
symbols at link time.
We can use the following command to invoke the C55x linker from the host system:
lnk55 [-options]filename_1, . . . , filename_n
The filename list (filename_1, . . . , filename_n) consists of object files created
by the assembler, linker command files, or achieve libraries. The default extension for
object files is .obj; any other extension must be explicitly specified. The options can
be placed anywhere on the command line to control different linking operations. For
example, the -o filename option can be used to specify the output executable file
name. If we do not provide the output file name, the default executable file name is
a.out. Some of the most common linker options are:
46
INTRODUCTION TO TMS320C55X DIGITAL SIGNAL PROCESSOR