Symbol value field
The meaning of the value of a symbol depends on its storage class.
This relationship is summarized in
Table 7-21, ``Storage class and value''.
Table 7-21 Storage class and value
Storage Class Meaning of Value ------------------------------------------------------------ C_AUTO stack offset in bytes C_EXT relocatable address C_STAT relocatable address C_REG register number C_LABEL relocatable address C_MOS offset in bytes C_ARG stack offset in bytes C_STRTAG 0 C_MOU 0 C_UNTAG 0 C_TPDEF 0 C_ENTAG 0 C_MOE enumeration value C_REGPARM register number C_FIELD bit displacement C_BLOCK relocatable address C_FCN relocatable address C_EOS size C_FILE (see text below) C_ALIAS tag index C_HIDDEN relocatable address C_WEAKEXT relocatable address
If a symbol has storage class C_FILE, the value of that symbol equals the symbol table entry index of the next .file symbol. That is, the .file entries form a one-way linked list in the symbol table. If there are no more .file entries in the symbol table, the value of the symbol is the index of the first global symbol.
Relocatable symbols have a value equal to the virtual address
of that symbol.
When the section is relocated by the link editor,
the value of these symbols changes.