BL51 User's Guide

Directives

BL51 Linker directives are entered on the command line after the output file. Multiple directives must be separated by at least one empty space. Each directive may be entered only once on the command line. If a directive is entered twice, the linker generates an error.

The following table describes all BL51 Linker directives.

DirectiveDescription
BANKxSpecifies the code bank in which to locate the specified segment.
BANKAREASpecifies the address range where code banks are located.
BIT

Locates BIT segments.

CODE

Locates CODE segments.

DATA

Locates DATA segments.

DISABLEWARNINGDisables generation of specified warning numbers.
IBANKINGUses the on-chip code banking hardware of the Mentor M8051EW core, the Infineon SDA30C16x/26x, and the Micronas SDA555x.
IDATA

Locates IDATA segments.

IXREFEnables cross reference details in the listing file.
NAMESpecifies the module name of the output file.
NOAJMPAvoids AJMP instructions in bank switch code.
NOAMAKEExcludes AMAKE information from the object file.
NODEBUGLINESExcludes line number information from the output object file.
NODEBUGPUBLICSExcludes public symbol information from the output object file.
NODEBUGSYMBOLSExcludes local symbol information from the output object file.
NODEFAULTLIBRARYDisables automatic inclusion of run-time library routines.
NOINDIRECTCALLDisables bank switching code for indirectly called functions.
NOJMPTABDisables generation of the code banking jump table.
NOLINESExcludes line number information from the listing file and object file.
NOMAPExcludes the memory map from the listing file.
NOOVERLAYDisables data segment overlaying.
NOPRINTDisables generation of the listing (MAP) file.
NOPUBLICSExcludes public symbols from the listing file and object file.
NOSORTSIZEDisables sorting sections by size prior to locating.
NOSYMBOLSExcludes local symbols from the listing file and object file.
OVERLAYModifies the call tree for overlaying of local bit and data segments.
PAGELENGTHSpecifies the number of lines on a page in the listing file.
PAGEWIDTHSpecifies the number of characters on a line in the listing file.
PDATA

Locates PDATA segments.

PRECEDELocates segments in DATA memory prior to other relocatable BIT, DATA, and IDATA segments.
PRINTSpecifies the name of the listing file.
RAMSIZESpecifies the number of bytes of DATA and IDATA.
RECURSIONSSpecifies the maximum number of recursive calls detected before link failure.
REGFILESpecifies the name of the register definition file for global register coloring.
RTX51Specifies that the RTX51 Real-Time Kernel is used.
RTX51TINYSpecifies that the RTX51 Tiny Real-Time Kernel is used.
SPEEDOVLIgnores references from constant segments to program segments during overlay analysis.
STACKLocates segments in the uppermost IDATA memory space.
XDATA

Locates XDATA segments.

Related Knowledgebase Articles