#include <syms.h> long st_auxbtadd(bt) long bt; long st_auxbtsize(iaux,width) long iaux; long width; long st_auxisymadd (isym) long isym; long st_auxrndxadd (rfd,index) long rfd; long index; long st_auxrndxadd (idn) long idn; void st_addtq (iaux,tq) long iaux; long tq; long st_tqhigh_aux(iaux) long iaux; void st_shifttq (iaux, tq) int iaux; int tq; long st_iaux_copyty (ifd, psym) long ifd; pSYMR psym; void st_changeaux (iaux, aux) long iaux; AUXU aux; void st_changeauxrndx (iaux, rfd, index) long iaux; long rfd; long index;
Auxiliary entries are unions with a fixed length of four bytes per entry. Much information is packed within the auxiliaries. Rather than have the compiler front-ends handle each type of auxiliary entry directly, the following set of routines provide a high-level scalar interface to the auxiliaries: Adds a type information record (TIR) to the auxiliaries. It sets the basic type (bt) to the argument and all other fields to zero. The index to this auxiliary entry is returned. Sets the bit in the TIR, pointed to by the iaux argument. This argument says the basic type is a bit field and adds an auxiliary with its width in bits. Adds an index into the symbol table (or any other scalar) to the auxiliaries. It sets the value to the argument that will occupy all four bytes. The index to this auxiliary entry is returned. Adds a relative index, RNDXR, to the auxiliaries. It sets the rfd and index to their respective arguments. The index to this auxiliary entry is returned. Works the same as st_auxrndxadd except that RNDXR is referenced by an index into the dense number table. Copies the type from the specified file (ifd) for the specified symbol into the auxiliary table for the current file. It returns the index to the new aux. Shifts in the specified type qualifier, tq, into the auxiliary entry TIR, which is specified by the `iaux' index into the current file. The current type qualifiers shift up one tq so that the first tq (tq0) is free for the new entry. Adds a type qualifier in the highest or most significant non-tqNil type qualifier. Returns the most significant type qualifier given an index into the files aux table. Changes the iauxth aux in the current file's auxiliary table to aux. Converts the relative index (RNDXR) auxiliary, which is specified by iaux, to the specified arguments.
The interface will added to incrementally, as needed.
stfd(3) delim off