4.9 Assembler Directives

Assembler directives, or pseudo-ops, are used in a similar way to instruction mnemonics. With the exception of PAGESEL and BANKSEL, these directives do not generate instructions. The DB, DW and DDW directives place data bytes into the current psect. The directives are listed in the following sections.

Table 4-6. Assembler Directives
Directive Purpose
ALIGN Aligns output to the specified boundary.
ASMOPT Controls whether subsequent code is optimized by the assembler.
BANKISEL Generates code to select bank of operand for indirect access on some devices.
BANKSEL Generates code to select bank of operand.
CALLSTACK Indicates the call stack depth remaining.
COND Controls inclusion of conditional code in the listing file.
CONFIG Specifies configuration bits.
DABS Defines absolute storage.
DB Defines constant byte(s).
DDW Defines double-width constant word(s).
DEBUG_SOURCE Controls debug information.
DLABS Define linear-memory absolute storage.
DS Reserves storage.
DW Defines constant word(s).
ELSE Alternates conditional assembly.
ELSIF Alternates conditional assembly.
ENDIF Ends conditional assembly.
END Ends assembly.
ENDM Ends macro definition.
EQU Defines symbol value.
ERROR Generates a user-defined error.
EXPAND Controls expansion of assembler macros in the listing file.
EXTRN Links with global symbols defined in other modules.
FILE Indicates the source file that contains the assembly code following.
FNADDR Indicates a routine's address has been taken.
FNARG Indicates calls in a routine's arguments.
FNBREAK Breaks links in the call graph.
FNCALL Indicates call hierarchy.
FNCONF Indicates call stack settings.
FNINDIR Indicates indirect calls made by routines.
FNSIZE Indicates the size of a routines auto and parameter objects.
FNROOT Indicates the root of a call tree.
GLOBAL Makes symbols accessible to other modules or allow reference to other global symbols defined in other modules.
IF Conditional assembly.
INCLUDE Textually includes the content of the specified file.
IRP Repeats a block of code with a list.
IRPC Repeats a block of code with a character list.
LINE Indicates the line number of the current source file that contains the assembly code following.
LIST Defines options for listing file.
LOCAL Defines local tabs.
MACRO Macro definition.
MESSG Generates a user-defined advisory message.
NOCOND Controls inclusion of conditional code in the listing file.
NOEXPAND Controls expansion of assembler macros in the listing file.
NOLIST Disable assembly listing.
ORG Sets location counter within current psect.
PAGELEN Specifies the length of the listing file page.
PAGESEL Generates set/clear instruction to set PCLATH bits for this page.
PAGEWIDTH Specifies the width of the listing file page.
PROCESSOR Defines the particular chip for which this file is to be assembled.
PSECT Declares or resumes program section.
PUBLIC Makes non-EXTRN symbols accessible to other modules or allow reference to other global symbols defined in other modules.
RADIX Specifies radix for numerical constants.
REPT Repeats a block of code n times.
SET Defines or re-defines symbol value.
SIGNAT Defines function signature.
SUBTITLE Specifies the subtitle of the program for the listing file.
TITLE Specifies the title of the program for the listing file.
WARN Generates a user-defined warning.