You can use directives to control the way the Assembler Compiler behaves. For normal operation you need no more than a few directives. Most of the time, you use the default values.
Note: Setting some directives affects the default setting of other directives. For example, setting one directive might automatically unset another directive, and some directive settings are mutually exclusive.
You can set directives in the IDE simply by making selections on the
Assembler page of your project properties. These appear in
Build Settings at the bottom of the properties page.
You can also enter directives not already set by typing them into
Additional Directives. As you type into
Additional Directives, the directives you add appear in
Build Settings.
Directives set at project level automatically apply to all Assembler programs within the project, unless you override them at program level.
The build settings are distributed over two Assembler tabs on the
Assembler properties page:
Assembler and
Linker.
You can set directives to:
- Create debug information. The Compiler stores the debug information in files
filename.idf and
filename.idx, where
filename is the name of your program.
- Create optimized code. An optimized code compilation fully resolves references to addresses in macro code. If the compilation of your program involves the execution of many macros, you can reduce the total compilation time by specifying this directive.
- Mark the code as serially reusable. This prevents reloading of the module each time it is called.
- Generate a listing file with optional cross-reference listing.
- Link the module automatically; see the topic
Linking Modules for more information.
- Mark the code as re-entrant. This has the same effect as marking code as serially reusable.
- Resolve external calls at link time; see the section
Linking Modules for more information.
- Set addressing mode and residency mode.
- Specify what type of load module is to be produced, an executable code file or a data table.
- Specify whether the module includes
EXEC CICS commands, which require preprocessing. If an Assembler copybook includes
EXEC CICS commands you must perform some additional steps, as described in the topic
Compiling Assembler Copybooks and Macros Containing EXEC CICS Statements.
- Use macros that have been partly pre-compiled, rather than recompiling them from the source file. If a macro source file has changed since the date of pre-compilation, it is recompiled anyway. If you have changed a copybook that is included in a macro file, you should always recompile the macro file from the source file.
- Create Assembler Analysis Tool files. These are files that assist in the analysis of Assembler programs.
- Provide a value for $SYSPARM, which is a variable that can be used within an Assembler module to determine which parts of the code to assemble.
Note: You can also set Compiler and linker directives at the command line, and you can set directives for individual programs from the file properties for each.