staux(3) [osf1 man page]
staux(3) Library Functions Manual staux(3) NAME
staux - Routines that provide scalar interfaces to auxiliaries SYNOPSIS
#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; 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 inter- face 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 argu- ment 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 spec- ified by iaux, to the specified arguments. RESTRICTIONS
The interface will added to incrementally, as needed. RELATED INFORMATION
stfd(3) delim off staux(3)
Check Out this Related Man Page
staux(3) Library Functions Manual staux(3) Name st_auxbtadd, st_auxbtsize, st_auxisymadd, st_auxrndxadd, st_auxrndxadd, st_addtq, st_tqhigh_aux, st_shifttq, st_iaux_copyty, st_changeaux, st_changeauxrndx - routines that provide scalar interfaces to auxiliaries Syntax #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; 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 inter- face 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 (see sym.h), 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. See Also stfd(3) RISC staux(3)