Interprétation d'une référence croisée de symbole
Exemple de référence croisée de symbole pour le programme d'assemblage hello.s .
Voici un exemple de référence croisée de symbole pour le programme d'assemblage hello.s :
Symbol File CSECT Line #
.main hello.s -- 22
.main hello.s .main 28 *
.main hello.s -- 29
.main hello.s .main 43 *
.printf hello.s -- 76
.printf hello.s -- 104
T.data hello.s data 17 *
T.data hello.s data 69
T.hello hello.s .main 28 *
TOC hello.s TOC 23
_helloworld hello.s -- 74
_helloworld hello.s data 113 *
argarea hello.s -- 35 *
argarea hello.s -- 40
data hello.s -- 17
data hello.s data 17 *
data hello.s data 111 *
linkarea hello.s -- 36 *
linkarea hello.s -- 40
locstckarea hello.s -- 37 *
locstckarea hello.s -- 40
main hello.s -- 18
main hello.s main 21 *
main hello.s main 28
nfprs hello.s -- 39 *
nfprs hello.s -- 40
nfprs hello.s -- 59
nfprs hello.s -- 90
ngprs hello.s -- 38 *
ngprs hello.s -- 40
ngprs hello.s -- 59
ngprs hello.s -- 90
szdsa hello.s -- 40 *
szdsa hello.s -- 64
szdsa hello.s -- 82
szdsa hello.s -- 88
La première colonne répertorie les noms de symbole qui apparaissent dans le programme source. La deuxième colonne indique le nom du fichier source dans lequel se trouvent les symboles. La troisième colonne répertorie les noms de csect dans lesquels les symboles sont définis ou localisés.
Dans la colonne répertoriant les noms de csect, un––(double tiret) s'entend de l'un des éléments suivants:
- Le csect du symbole n'a pas encore été défini. Dans l'exemple, les premier et troisième.main(.main[PR]) est défini par la ligne 42.
- Le symbole est un symbole externe. Dans l'exemple,.printfest un symbole externe et, par conséquent, n'est associé à aucun csect.
- Le symbole à définir est une constante symbolique. Lorsque la pseudo-op .set est utilisée pour définir un symbole, le symbole est une constante symbolique et n'est pas associé à une csect. Dans l'exemple,argarea,linkarea,locstckarea,nfprs,ngprsetszdsasont des constantes symboliques.
La quatrième colonne indique le numéro de ligne dans lequel se trouve le symbole. Un astérisque (*) après le numéro de ligne indique que le symbole est défini sur cette ligne. S'il n'y a pas d'astérisque après le numéro de ligne, le symbole est référencé dans la ligne.