Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ syms(4) — 4D1 2.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ldfcn(2)



     SYMS(4)                                                   SYMS(4)



     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 Assembly Language
          Programmers Guide.
          ldfcn(2).

     ORIGIN
          MIPS Computer Systems




     Page 1                                        (last mod. 8/20/87)



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