Microchip Technology XC8 Standard Compiler (Workstation) SW006021-1 SW006021-1 User Manual

Product codes
SW006021-1
Page of 518
Linker
 2012 Microchip Technology Inc.
DS52053B-page 283
The final link and load address of psects are shown in the map file. See 
Section 7.4.2.2 “Psect Information Listed by Module”.
7.2.20
-Qprocessor
This option allows a device type to be specified. This is purely for information placed in 
the map file. The argument to this option is a string describing the device. There are no 
behavioral changes attributable to the device type.
7.2.21
-S
This option prevents symbol information relating from being included in the symbol file 
produced by the linker. Segment information is still included.
7.2.22
-Sclass
 =
limit[,bound]
A class of psects may have an upper address limit associated with it. The following 
example places a limit on the maximum address of the CODE class of psects to one less 
than 400h.
-SCODE=400h
Note that to set an upper limit to a psect, this must be set in assembler code using the 
psect limit flag, see Section 6.4.9.3.6 “Limit”).
If the bound (boundary) argument is used, the class of psects will start on a multiple of 
the bound address. This example below places the FARCODE class of psects at a 
multiple of 1000h, but with an upper address limit of 6000h.
-SFARCODE=6000h,1000h
7.2.23
-Usymbol
This option will enter the specified symbol into the linker’s symbol table as an undefined 
symbol. This is useful for linking entirely from libraries, or for linking a module from a 
library where the ordering has been arranged so that by default a later module will be 
linked.
7.2.24
-Vavmap
To produce an Avocet format symbol file, the linker needs to be given a map file to allow 
it to map psect names to Avocet memory identifiers. The avmap file will normally be 
supplied with the compiler, or created automatically by the compiler driver as required.
7.2.25
-Wnum
The -W option can be used to set the warning level, in the range -9 to 9, or the width of 
the map file, for values of num >= 10.
-W9
 will suppress all warning messages. -W0 is the default. Setting the warning level 
to -9 (-W-9) will give the most comprehensive warning messages.
7.2.26
-X
Local symbols can be suppressed from a symbol file with this option. Global symbols 
will always appear in the symbol file.
7.2.27
-Z
Some local symbols are compiler generated and not of interest in debugging. This 
option will suppress from the symbol file all local symbols that have the form of a single 
alphabetic character, followed by a digit string. The set of letters that can start a trivial 
symbol is currently “klfLSu“. The -Z option will strip any local symbols starting with 
one of these letters, and followed by a digit string.