2. The routine resets a possible WEAK EXTRN flag. The routine next places the REFTBL entry's position-key in the ESID table. If
the entry has already been defined by means of an ESD type 0, 1,
5, or 6, processing continues at operation 4. Otherwise, it
continues at operation 3.
3. The relocated address is placed in the RELFAC entry in the
external name's REFTBL entry.
4. The ESD type 2 card routine then determines (at location ESDOO) whether there is another entry on the ESD card. If there is
another entry, the routine branches to location CA3A1 in the ESD card analysis routine for further processing of this card;
otherwise, the routine branches to location RD in the initial
and resume loading routine.
Exits routine exits to location CA3A1 in the ESD card analysis routine
if there is another entry on the ESD card being processed, and exits to location RD in the initial and resume loading routine if the ESD card requires no further processing. ESD TYPE 4 ROUTINE - PC Function makes loader table and ESIDTAE entries for private code CSECT. The ESD Type 4 Card Routine:
1. The routine LDRSYM is called to generate a unique character
string number of the form 00000001, which is left in the
external data area NITSYM; it is greater in value than
previously generated symbol. 2. The CSECT is then processed as a normal type 0 ESD with the
above assigned name. ESD TYPES 5 AND 6 CARD ROUTINE - PRVESD AND COMESD Function This-routine creates reference table and ESIDTAE entries for common and
pseudo-register ESDs. The ESD type 5 and 6 card routine:
1. Links to ESIDINC in the ESD type 0 card routine, to update the
number of ESIDTB entries.
2. Links to the REFTBL search routine to determine whether a
reference table (REFTBL) entry has already been created. If there
is no entry, the REFTBL search routine places the name of the item in the REFTBL.
3. If the REFTBL search routine had to create an entry for the ite.,
the ESD type 5 and 6 card routine indexes it in the ESIDTB, enters
the length and alignment in the entry, indicates whether it is a PR or common, and branches to ESDOO in the ESD type 2 card routine
to determine whether the card contains additional ESD's to be
2-76 IBM VM/370 System Logic and Program Determination--Volume 2
processed. If the entry is aPR, routine enters its displacement and
branching to ESDOO. the ESD type 5 and 6 card
length in the REFTBL before
4. If the
card
REFTBL already contained an entry, the ESD type 5 and 6
routine indexes it in the ESIDTB, checks alignment and
branches to ESDOO. The PR alignment is coded and placed into the REFTBL. It is an
error to encounter more restrictive alignment PR than previously
defined. A blank alignment factor is translated to fullvord alignment. ESD TYPE 10 ROUTINE - WEAK EITRN The WEAK EXTRN routine calls the search routine to find in the loader table. If not found, set the WEAK EXTRN loader table entry_ Exit to ESDOO. TIT CARD ROUTINE - C4Al1 Function
the BITRi name flag in the new has tvo functions:
in storage.
address inspection and placing text This routine
entered fro a APR1, which
inspection. has three entry points: location C4111, which is
the ESD card analysis routine, and locations REPENT and
are entered from the REP card routine for address 1. This routine begins its operation with a test of card type. If
the card being processed is not a TXT card, the routine branches
to the REP card routine; otherwise, processing continues in this
routine.
2. The routine then determines how many bytes of text are to be
placed in storage, and finds whether the loading process is
absolute or relocating. If the loading Frocess is absolute, the
routine performs operation 4, below; if relocating, the routine perforas operation 3.
3. If the ESIDTB entry was negative, this is a duplicate to CSECT and processing branches to RD. Otherwise, the routine links to
the REFIDR routine to obtain the relocation factor of the
current control segment. The routine then adds the relocation factor (0, if the loading
process is absolute) and the card-specified storage address.
The result is the address at which the text must be stored.
This routine also determines whether the address is such that
the text, when loaded starting at that address, overlays the
loader or the reference table. If a loader overlay or a
reference table overlay is found, the routine branches to the LDRIO routine. If neither condition is detected, the routine
proceeds with address inspection. CftS Method of Operation and Progra. Organization 2-77
Previous Page Next Page