Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

ldfcn(5)

syms(5)  —  RISC

Name

syms − MIPS symbol table

Syntax

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

Description

Unlike the COFF symbol table, the MIPS symbol table consists of many tables unbundling information.  The symbol table should be viewed as a 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 descriptors Indirection for interfile symbol access

Optimization 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 Index pairs (file, symbol) for compiler use

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

struct
{
longiss;/* index into string space */
longvalue;/* address, size, etc., depends on sc and st */
unsignedst: 6;/* symbol type (e.g. local, param, etc.) */
unsignedsc: 5;/* storage class (e.g. text, bss, etc.) */
unsignedreserved: 1;
unsignedindex;/* index to symbol or auxiliary tables */
};

See Also

ldfcn(5)

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