LABK Back to Index page
 
Prolog 
Control Block Contents 
   LABK DSECT
Storage Layout 
Cross Reference (Contains links to field and bit definitions)
Programming Interface Information:
This information is NOT intended to be
used as Programming Interfaces of z/VM.


  LABK Prolog Top of page
 
 NAME       : HCPLABK
 DESCRIPTION: Map the Load Anchor Block
 DSECT      : LABK
 LOCATED BY : DLUBK.DLULABK
              LABK.LABFWD
              ESDBK.ESDBLABK
 CREATED BY : HCPCLO while processing CPXLOAD command
 DELETED BY : HCPCLO while processing CPXLOAD command
 REFERENCES : HCPICRBK - Indirect Call Request Block
              HCPSYMTB - Symbol Table Entry
 SERIALIZED : The Load Anchor Block is used to control CPXLOAD
              operations.  CPXLOAD and CPXUNLOAD are serialized
              by the DLUBK.DLUCPXLK lock.
 RELOCATION CONSIDERATIONS : None
 
 
  LABK Control Block Content Top of page
 

 LABK DSECT Top of page
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure LABK Map the Load Anchor Block 0000 0 Dbl-Word 8 LABUSRD1 Reserved for non-IBM use 0008 8 Dbl-Word 8 LABUSRD2 Reserved for non-IBM use 0010 16 Signed 4 LABUSRF1 Reserved for non-IBM use 0014 20 Signed 4 LABUSRF2 Reserved for non-IBM use 0018 24 Signed 2 LABUSRH1 Reserved for non-IBM use 001A 26 Signed 2 LABUSRH2 Reserved for non-IBM use 001C 28 Bitstring 1 LABUSRX1 Reserved for non-IBM use 001D 29 Bitstring 1 LABUSRX2 Reserved for non-IBM use 001E 30 Bitstring 1 LABUSRX3 Reserved for non-IBM use 001F 31 Bitstring 1 LABUSRX4 Reserved for non-IBM use 0020 32 Character 32 LABFID (0) File being loaded 0020 32 Character 8 LABFIDFN File name to start loading 0028 40 Character 8 LABFIDFT File type to start loading 0030 48 Signed 2 LABFIDFM File mode to start loading 0032 50 Signed 2 * Reserved for future IBM use 0034 52 Address 4 * Reserved for future IBM use 0038 56 Character 8 LABFIDMB Member to start loading 0040 64 Address 4 LABFWD Address of the next LABK on the DLULABK chain of successful CPXLOAD operations 0044 68 Address 4 LABCTLEP Address of control ep for TYPE=DIRECT 0048 72 Character 8 LABID ID string for the CPXLOAD operation. This ID string is used in the CPXUNLOAD command to identify this CPXLOAD request. The format of LABID is explained in the descriptions of LABIDH and LABIDL. 0050 80 Character 16 LABCTL The control epname to call during CPXLOAD processing and before CPXUNLOAD processing. This field is defined like ICRBK 0060 96 Dbl-Word 8 LABTOD TOD clock value when the CPXLOAD operation was initiated. 0068 104 Character 8 LABUID Userid (SYSTEM if performed by SYSTEM CONFIG processing) who initiated the CPXLOAD operation 0070 112 Address 4 LABBUFAD Address of I/O buffer. LABBUFAD points to GSDDATA in a GSDBK. Use the contents of LABBUFAD, back up by the value (GSDDATA-GSDBK), and that gives the base address of the GSDBK for passing to HCPSCCFG for parsing. LABBUFAD and LABBUFSZ are copied to their corresponding DRBK fields for each call to HCPZIGET. This may be backed anywhere in storage since format 2 IDAW lists will be used. 0074 116 Address 4 LABBUFSZ Length of I/O buffer, in bytes 0078 120 Signed 4 * Reserved for future IBM use 007C 124 Address 4 LABDRBK Address of DRBK for loading file DRBBUFAD points to GSDDATA in a GSDBK. Use the contents of DRBBUFAD, back up by the value (GSDDATA-GSDBK), and that gives the base address of the GSDBK for passing to HCPSCCFG for parsing. 0080 128 Signed 4 LABMAXID Largest ESDID since last END. If the number of pages gotten for ESDID pointers (indicated by LABESDP#) can't hold this many ESDIDs, then more pages will be obtained. 0084 132 Signed 4 LABMSGNO Error message for HCPCONSL 0088 136 Signed 4 LABRC Final return code 008C 140 Address 4 LABGSDQ Address of 1st GSDBK in chain of error message GSDBKs 0090 144 Address 4 LABGSDQE Address of end GSDBK in chain of error message GSDBKs 0094 148 Address 4 LABWORDP Address of token causing error 0098 152 Signed 4 LABWORDL Length of token causing error 009C 156 Address 4 LABSUBTX Address of substitution text The length of the LABSYMTB field for BLOCKMAP is 20 00A0 160 Bitstring 20 LABSYMTB SYMTB entry when locating an external symbol during ad-con relocation. 00B4 180 Address 4 * Reserved for future IBM use 00B8 184 Address 4 LABESDQ1 Address of chain of ESDBKs built during processing of the present portion of TEXT stmts. 00BC 188 Address 4 LABESDQ2 Address of chain of ESDBKs built during processing of the prior portions of TEXT stmts. 00C0 192 Signed 4 * Reserved for future IBM use 00C4 196 Address 4 LABLDQ Address of chain of LD entries 00C8 200 Address 4 LABCHGQ Address of chain of CHGBKs 00CC 204 Address 4 LABRLDQ Address of chain of RLDBKs 00D0 208 Signed 4 * Reserved for future IBM use 00D4 212 Signed 2 * Reserved for future IBM use 00D6 214 Signed 2 LABESDP# How many pages for LABESDP 00D8 216 Address 4 LABESDP@ Pointer to 1 or more frames of 1024 addresses each, where the n-th pointer (n starts at 0) is the address of the ESDBK for ESDID n. If the ESDID exceeds 1023, then multiple contiguous frames will be obtained to contain all defined ESDIDs. But, 1023 should be enough for all but the must unusual situations. 00DC 220 Signed 4 LAB2PST Start record number for any required 2nd pass. To start the second pass, processing for the .END statement will place this value minus 1 into DRBRECNO of the top DRBK. Hence, the file that started the CSECT must be the same file that ends the CSECT, else DRBRECNO will point to some strange place in a different file. 00E0 224 Signed 4 LABUPBSZ UPB value from .UPB card 00E4 228 Address 4 LABESD0L Addr of ESDBK of 0 length Bit definitions in LABK.LABBF should match the bit definitions in LRBK.LRBBF. This is because these fields are frequently moved from one control block to the other. 00E8 232 Bitstring 4 LABBF (0) Flags 00E8 232 Bitstring 1 LABBF0 Options .1.. .... ICRRLONG X'40' ICRRLONG Caller is LONGREG ..1. .... ICRELONG X'20' ICRELONG Callee is LONGREG ...1 .... ICRESTA X'10' ICRESTA callee uses static savearea .... 1... ICRRMP X'08' ICRRMP caller MP capable .... .1.. ICRERES X'04' ICRERES callee Resident .... ..1. ICREMP X'02' ICREMP callee MP capable .... ...1 ICRTRC X'01' ICRTRC issue TRACE instruction 00E9 233 Bitstring 1 LABBF1 Flags ...1 .... LABBF1TX X'10' LABBF1TX TEXT record encountered .... 1... LABBF12P X'08' LABBF12P 2nd pass required .... .1.. LABBF1OC X'04' LABBF1OC Outside CSECT .... ..1. LABBF1LT X'02' LABBF1LT LDT, or eof, has occurred .... ...1 LABBF1ZZ X'01' LABBF1ZZ fatal error 00EA 234 Bitstring 1 LABBF2 Options copied from LRBK.LRBBF2. These options would typically be from CPXLOAD, but anybody could allocate a Load Request Block (LRBK) and set LRBK.LRBBF2 bits as desired. 1... .... LRBBF2LT X'80' LRBBF2LT LET option .1.. .... LRBBF2NL X'40' LRBBF2NL NOLET option ..1. .... LRBBF2DL X'20' LRBBF2DL DELAY option ...1 .... LRBBF2ND X'10' LRBBF2ND NODELAY option .... 1... LRBBF2MP X'08' LRBBF2MP MP option .... .1.. LRBBF2UP X'04' LRBBF2UP NONMP option 00EB 235 Bitstring 1 LABBF3 Options copied from LRBK.LRBBF3. These options would typically be from CPXLOAD, but anybody could allocate a Load Request Block (LRBK) and set LRBK.LRBBF3 bits as desired. .1.. .... LRBBF3SY X'40' LRBBF3SY SYNC specified ..1. .... LRBBF3LK X'20' LRBBF3LK LOCK specified ...1 .... LRBBF3NL X'10' LRBBF3NL NOLOCK specified .... 1... LRBBF3CN X'08' LRBBF3CN CONTROL specified .... .1.. LRBBF3NC X'04' LRBBF3NC NOCONTROL specified .... ..1. LRBBF3PE X'02' LRBBF3PE PERMANENT specified .... ...1 LRBBF3TE X'01' LRBBF3TE TEMPORARY specified 00EC 236 Character 1 LABPAD Pad character (from .PAD) 00ED 237 Signed 1 LABPASSN In pass number 'n' 00EE 238 Bitstring 1 LABBF4 Options from the OPTIONS directive. These options are the actual values from LRBK.LRBBF2 if specified, or from the OPTIONS statement otherwise. LRBK.LRBBF2 bits will not be changed by anything on the OPTIONS statement. 1... .... LRBBF2LT X'80' LRBBF2LT LET option .1.. .... LRBBF2NL X'40' LRBBF2NL NOLET option ..1. .... LRBBF2DL X'20' LRBBF2DL DELAY option ...1 .... LRBBF2ND X'10' LRBBF2ND NODELAY option .... 1... LRBBF2MP X'08' LRBBF2MP MP option .... .1.. LRBBF2UP X'04' LRBBF2UP NONMP option 00EF 239 Bitstring 1 LABBF5 Options from the OPTIONS directive. These options are the actual values from LRBK.LRBBF3 if specified, or from the OPTIONS statement otherwise. LRBK.LRBBF3 bits will not be changed by anything on the OPTIONS statement. .1.. .... LRBBF3SY X'40' LRBBF3SY SYNC specified ..1. .... LRBBF3LK X'20' LRBBF3LK LOCK specified ...1 .... LRBBF3NL X'10' LRBBF3NL NOLOCK specified .... 1... LRBBF3CN X'08' LRBBF3CN CONTROL specified .... .1.. LRBBF3NC X'04' LRBBF3NC NOCONTROL specified .... ..1. LRBBF3PE X'02' LRBBF3PE PERMANENT specified .... ...1 LRBBF3TE X'01' LRBBF3TE TEMPORARY specified 00F0 240 Address 4 LABBASSD ESDBK addr of current base SD or PC 00F4 244 Signed 4 * Reserved for future IBM use 00F8 248 Dbl-Word 8 LAB$END (0) The end 0048 72 Signed 4 LABIDH If the ID was assigned by CPXLOAD, then this high order word of the ID field LABID will be binary zero. If the ID was assigned by the user, then this high order word of the ID field LABID will be the first 4 characters of the ID. 004C 76 Signed 4 LABIDL If the ID was assigned by CPXLOAD, then this low order word of the ID field LABID will be the binary ID value. If the ID was assigned by the user, then this low order word of the ID field LABID will be the second 4 characters of the ID.
 
 
  LABK Storage Layout Top of page
 
 
*** LABK - Map the Load Anchor Block
*
*     +-------------------------------------------------------+
*   0 |                       LABUSRD1                        |
*     +-------------------------------------------------------+
*   8 |                       LABUSRD2                        |
*     +---------------------------+---------------------------+
*  10 |         LABUSRF1          |         LABUSRF2          |
*     +-------------+-------------+------+------+------+------+
*  18 |  LABUSRH1   |  LABUSRH2   |:USRX1|:USRX2|:USRX3|:USRX4|
*     +-------------+-------------+------+------+------+------+
*  20 |                       LABFIDFN                        |
*     +-------------------------------------------------------+
*  28 |                       LABFIDFT                        |
*     +-------------+-------------+---------------------------+
*  30 |  LABFIDFM   |/////////////|///////////////////////////|
*     +-------------+-------------+---------------------------+
*  38 |                       LABFIDMB                        |
*     +---------------------------+---------------------------+
*  40 |          LABFWD           |         LABCTLEP          |
*     +---------------------------+---------------------------+
*  48 |                        LABID                          |
*     +-------------------------------------------------------+
*  50 |                        LABCTL                         |
*     |                                                       |
*     +-------------------------------------------------------+
*  60 |                        LABTOD                         |
*     +-------------------------------------------------------+
*  68 |                        LABUID                         |
*     +---------------------------+---------------------------+
*  70 |         LABBUFAD          |         LABBUFSZ          |
*     +---------------------------+---------------------------+
*  78 |///////////////////////////|         LABDRBK           |
*     +---------------------------+---------------------------+
*  80 |         LABMAXID          |         LABMSGNO          |
*     +---------------------------+---------------------------+
*  88 |          LABRC            |         LABGSDQ           |
*     +---------------------------+---------------------------+
*  90 |         LABGSDQE          |         LABWORDP          |
*     +---------------------------+---------------------------+
*  98 |         LABWORDL          |         LABSUBTX          |
*     +---------------------------+---------------------------+
*  A0 |                                                       |
*     =                       LABSYMTB                        =
*     |                           +---------------------------+
*  B0 |                           |///////////////////////////|
*     +---------------------------+---------------------------+
*  B8 |         LABESDQ1          |         LABESDQ2          |
*     +---------------------------+---------------------------+
*  C0 |///////////////////////////|          LABLDQ           |
*     +---------------------------+---------------------------+
*  C8 |         LABCHGQ           |         LABRLDQ           |
*     +---------------------------+-------------+-------------+
*  D0 |///////////////////////////|/////////////|  LABESDP#   |
*     +---------------------------+-------------+-------------+
*  D8 |         LABESDP@          |         LAB2PST           |
*     +---------------------------+---------------------------+
*  E0 |         LABUPBSZ          |         LABESD0L          |
*     +------+------+------+------+------+------+------+------+
*  E8 |LABBF0|LABBF1|LABBF2|LABBF3|LABPAD|:PASSN|LABBF4|LABBF5|
*     +------+------+------+------+------+------+------+------+
*  F0 |         LABBASSD          |///////////////////////////|
*     +---------------------------+---------------------------+
*
*** LABK - Map the Load Anchor Block
 
*** Overlay for LABID in LABK
*
*     +---------------------------+---------------------------+
*  48 |          LABIDH           |          LABIDL           |
*     +---------------------------+---------------------------+
*  50
*
*** Overlay for LABID in LABK
 
 
  LABK Cross Reference Top of page
 
 
Symbol         Dspl Value
-------------- ---- -----
ICRELONG       00E8 20
ICREMP         00E8 02
ICRERES        00E8 04
ICRESTA        00E8 10
ICRRLONG       00E8 40
ICRRMP         00E8 08
ICRTRC         00E8 01
LAB$END        00F8
LABBASSD       00F0
LABBF          00E8
LABBF0         00E8
LABBF1         00E9
LABBF1LT       00E9 02
LABBF1OC       00E9 04
LABBF1TX       00E9 10
LABBF1ZZ       00E9 01
LABBF12P       00E9 08
LABBF2         00EA
LABBF3         00EB
LABBF4         00EE
LABBF5         00EF
LABBUFAD       0070
LABBUFSZ       0074
LABCHGQ        00C8
LABCTL         0050
LABCTLEP       0044
LABDRBK        007C
LABESDP#       00D6
LABESDP@       00D8
LABESDQ1       00B8
LABESDQ2       00BC
LABESD0L       00E4
LABFID         0020
LABFIDFM       0030
LABFIDFN       0020
LABFIDFT       0028
LABFIDMB       0038
LABFWD         0040
LABGSDQ        008C
LABGSDQE       0090
LABID          0048
LABIDH         0048
LABIDL         004C
LABLDQ         00C4
LABMAXID       0080
LABMSGNO       0084
LABPAD         00EC
LABPASSN       00ED
LABRC          0088
LABRLDQ        00CC
LABSUBTX       009C
LABSYMTB       00A0
LABTOD         0060
LABUID         0068
LABUPBSZ       00E0
LABUSRD1       0000
LABUSRD2       0008
LABUSRF1       0010
LABUSRF2       0014
LABUSRH1       0018
LABUSRH2       001A
LABUSRX1       001C
LABUSRX2       001D
LABUSRX3       001E
LABUSRX4       001F
LABWORDL       0098
LABWORDP       0094
LAB2PST        00DC
LRBBF2DL       00EA 20
LRBBF2DL       00EE 20
LRBBF2LT       00EA 80
LRBBF2LT       00EE 80
LRBBF2MP       00EA 08
LRBBF2MP       00EE 08
LRBBF2ND       00EA 10
LRBBF2ND       00EE 10
LRBBF2NL       00EA 40
LRBBF2NL       00EE 40
LRBBF2UP       00EA 04
LRBBF2UP       00EE 04
LRBBF3CN       00EB 08
LRBBF3CN       00EF 08
LRBBF3LK       00EB 20
LRBBF3LK       00EF 20
LRBBF3NC       00EB 04
LRBBF3NC       00EF 04
LRBBF3NL       00EB 10
LRBBF3NL       00EF 10
LRBBF3PE       00EB 02
LRBBF3PE       00EF 02
LRBBF3SY       00EB 40
LRBBF3SY       00EF 40
LRBBF3TE       00EB 01
LRBBF3TE       00EF 01
 
This information is based on z/VM 6.4.0 Last updated on 24 Aug 2016 at 09:25:56 EDT.
Copyright IBM Corporation, 1990, 2016