The assembler loads the user exits during initialization. The
assembler must be able to locate the user exits as follows:
- z/OS
-
The user exit must be a load module or program object that
is located in a partitioned data set in the standard search sequence.
The user exit can also be located in the Link Pack Area (LPA).
An
exit module can contain more than one entry name if the initially
loaded module executes an IDENTIFY macro to make additional names
available to the assembler as exit names.
If you use the same
exit load module for more than one user exit type, for example as
a SOURCE and LISTING exit, the load module can be loaded more than
once, depending on the link-edit options specified.
- z/VM
-
The user exit must be a MODULE that is located on one of the
accessed disks. You generate the module using the CMS LOAD and GENMOD
commands. When the LOAD command is issued, the RLDSAVE option must
be specified to make the module relocatable. If RLDSAVE is not specified,
it might result in the assembler program or data storage being overlaid.
If
you use the same exit load module for more than one user exit type,
for example as a SOURCE and LISTING exit, only one copy of the module
is loaded.
- z/VSE
-
The user exit must be a relocatable phase that is in a sublibrary
you specify in your JCL LIBDEF phase search chain. The user exit
can also be located in the Shared Virtual Area (SVA).
If you
use the same exit for more than one exit type, for example as a SOURCE
and LISTING exit, only one copy of the phase is loaded.
The user exits can be created in any addressing mode (AMODE) and
residency mode (RMODE).