Instructs the compiler to produce a memory allocation map file and optionally specifies the file name for the map using the file-specification argument.
If you do not specify a file name using the optional file-specification argument, the compiler produces a file with the same name as the file in the first input file list, but with a .MAP file extension.
The default map contains five sections:
an object module synopsis
a program section synopsis
a list of global symbols by name
an image synopsis
link run statistics
The most useful sections to the GT.M user are the program section synopsis and the global symbols. The Linker uses program sections (psects) to partition the output image into functional blocks. The compiler produces several psects in its output and assigns them names beginning with "GTM$".
Most users are interested in the psect "GTM$CODE" that contains the M code in compiled form. The map lists executable code in each psect from each object module. By looking at the statistics for GTM$CODE, you may easily identify executable code corresponding to each object module.
The Linker resolves references between object modules using Linker global symbols. The compiler instructs the Linker to create a global symbol with the name "RTN.LAB" for every label LAB in a routine RTN, including a null label at the first line of the routine, with symbol "RTN.". M also constructs a global symbol with the name "RTN", which references the routine header of each routine RTN. The values of these symbols are addresses in the psect GTM$CODE for the corresponding object.
By default, interactive links produce /NOMAP and batch links produce a /MAP.