Index Index for
Section 3
Index Alphabetical
listing for S
Bottom of page Bottom of
page

staux(3)

NAME

staux - routines that provide scalar interfaces to auxiliaries

SYNOPSIS

#include <syms.h> long st_auxbtadd( long bt ); long st_auxbtsize( long iaux, long width ); long st_auxisymadd( long isym ); long st_auxrndxadd( long rfd, long index ); long st_auxrndxadd( long idn ); void st_addtq( long iaux, long tq ); long st_tqhigh_aux( long iaux ); void st_shifttq( int iaux, int tq ); long st_iaux_copyty( long ifd, pSYMR psym ); void st_changeaux( long iaux, AUXU aux ); void st_changeauxrndx( long iaux, long rfd, long index );

DESCRIPTION

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: st_auxbtadd 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. st_auxbtsize 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. st_auxisymadd 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. st_auxrndxadd 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. st_auxrndxadd_idn Works the same as st_auxrndxadd() except that RNDXR is referenced by an index into the dense number table. st_iaux_copyty 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. st_shifttq 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. st_addtq Adds a type qualifier in the highest or most significant non-tqNil type qualifier. st_tqhigh_iaux Returns the most significant type qualifier given an index into the files aux table. st_changeaux Changes the iauxth aux in the current file's auxiliary table to aux. st_changeauxrndx Converts the relative index (RNDXR) auxiliary, which is specified by iaux, to the specified arguments.

RESTRICTIONS

The interface will be added to incrementally, as needed.

SEE ALSO

stfd(3)

Index Index for
Section 3
Index Alphabetical
listing for S
Top of page Top of
page