Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ldfcn(4)



SYMS(4-SysV)        RISC/os Reference Manual         SYMS(4-SysV)



NAME
     syms - MIPS symbol table

SYNOPSIS
     #include < sym.h>
     #include < symconst.h>

DESCRIPTION
     The MIPS symbol table departs from the standard COFF symbol
     table. The symbol table consists of many tables unbundling
     information usually found in the one COFF symbol table.  The
     symbol table should be viewed as a hand-crafted, network-
     style database designed for space and access efficiency.

     The following structures or tables appear in the MIPS symbol
     table:

          TABLE                 CONTENTS
          symbolic header       sizes and locations of all other tables.
          file descriptors      per file locations for other tables.
          procedure descriptors frame information and location of procedure info.
          local symbols         local type, local variable, and scoping info.
          local strings         string space for local symbols.
          line numbers          compacted by encoding, contains a line per instruction.
          relative file desc.   indirection for inter-file symbol access.
          optimzation symbols   to be defined.
          auxiliary symbols     variable data type information for each local symbol.
          external symbols      loader symbols (global text and data).
          external strings      string space for external symbols.
          dense numbers         (file, symbol) index pairs for compiler use.

     External and local symbols contain the standard concept of a
     ``symbol'' as follows:

     struct
     {
             long      iss;    /* index into string space */
             long      value;  /* address, size, etc., depends on sc and st */
             unsigned  st: 6;  /* symbol type (e.g. local, param, etc.) */
             unsigned  sc: 5;  /* storage class (e.g. text, bss, etc.) */
             unsigned  reserved: 1;
             unsigned  index;  /* index to symbol or auxiliary tables */
     };

SEE ALSO
     The chapter on ``The Symbol Table'' in the MIPS Assembly
     Language Programmer's Guide.
     ldfcn(4).







                         Printed 1/15/91                   Page 1



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026