Programming Interface Information:
This information is NOT intended to be used as Programming Interfaces of z/VM. |
SZVHB
Control Block Contents
SZVHB DSECT
SZVSB DSECT
SZVMA DSECT
Cross Reference (Contains links to field and bit definitions)
SZVHB Prolog
NAME : HCPSZVBK DESCRIPTION: Save area header and linkage used for CP C assembler prolog/eplilog macros. Also added "dummy" dsect for C malloc storage. DSECT : SZVHB FUNCTION : This copy file describes the stack header and savearea used by the CP C code and Dignus compiler. There is also a dummy dsect for C mallocs. This is so that we can put an id on the storage. LOCATED BY : R13 points to the header when running C code in the SCSI container. CREATED BY : C code that specifies #pragma prolkey(VMSIC,"YES") . This #pragma is required for the first C module that is called by assembler CP modules. DELETED BY : This control block is only deleted by the stack epilog code in the C module with #pragma epilkey(VMSIC,"YES") REFERENCES : N/A SERIALIZED : N/A NOTES : Changes will probably require a recompile of all C modules using this copy file. NOTES : N/A
SZVHB Control Block Content
SZVHB DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure SZVHB Save area header and linkage used for CP C assembler ---------------------------------------------------------- Stack header layout for a stack extension area | Note ! Any changes to the stack header which modify the | available size must update HCPDCCPL MACRO contant.| offset| | x'00' |x'00DCCDCC' | flags |reserved (3 bytes) | x'08' | ptr->previous stack extension | x'10' | ptr->next stack extension area | x'18' | address of last byte of this stack extension | x'20' | VMDBK ptr | x'28' | Container thread context ptr | x'30' | next available save area ptr | x'38' | reserved | x'40'-end function saveareas | ---------------------------------------------------------- 0000 0 Bitstring 1 SZVHEAD (0) Stack area header 0000 0 Character 4 SZVHEYE Eyecatcher 0004 4 Bitstring 1 SZVHFLG Flags 00000001 SZVHTOP X'01' First stack area 00000002 SZVHBIG X'02' Large stack area(not GETST) 0005 5 Bitstring 3 * reserved 0008 8 Dbl-Word 8 SZVHPRE Previous stack area ptr 0010 16 Dbl-Word 8 SZVHNXT Next stack area ptr 0018 24 Dbl-Word 8 SZVHEND Address of last byte of stack area 0020 32 Dbl-Word 8 SZVHVMD Ptr to VMDBK 0028 40 Dbl-Word 8 SZVHTX Container thead context pointer 0030 48 Dbl-Word 8 SZVHSNA Next available save area pointer 0038 56 Dbl-Word 8 * Reserved 0040 64 Dbl-Word 8 SZVHSV1 (0) First save area SZVHSIZ=4095 If storage obtained by HCPSZU01 is a full page SZVHSIZ=4071 If storage obtained is FREMX 00000FE7 SZVHSIZ 4071 Current stack area end size
SZVSB DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure SZVSB Save area header and linkage used for CP C assembler ---------------------------------------------------------- Individual save area layout | offset| | x'00' | ptr->stack extension (see above) | x'08' | ptr->previous save area | x'10' | ptr->next save area | x'18' | registers 14-12 | x'90' | 3 double words extra | x'A8' | dynamic storage start | ---------------------------------------------------------- 0000 0 Dbl-Word 8 SZVSHDR Ptr->stack area header 0008 8 Dbl-Word 8 SZVSPREV Ptr->previous save area 0010 16 Dbl-Word 8 SZVSNEXT Ptr->next save area or 0 0018 24 Dbl-Word 8 SZVSREGS (0) Callers registers 0018 24 Dbl-Word 8 SZVSR14 Callers reg 14 0020 32 Dbl-Word 8 SZVSR15 Callers reg 15 0028 40 Dbl-Word 8 SZVSR0 Callers reg 0 0030 48 Dbl-Word 8 SZVSR1 Callers reg 1 0038 56 Dbl-Word 8 SZVSR2 Callers reg 2 0040 64 Dbl-Word 8 SZVSR3 Callers reg 3 0048 72 Dbl-Word 8 SZVSR4 Callers reg 4 0050 80 Dbl-Word 8 SZVSR5 Callers reg 5 0058 88 Dbl-Word 8 SZVSR6 Callers reg 6 0060 96 Dbl-Word 8 SZVSR7 Callers reg 7 0068 104 Dbl-Word 8 SZVSR8 Callers reg 8 0070 112 Dbl-Word 8 SZVSR9 Callers reg 9 0078 120 Dbl-Word 8 SZVSR10 Callers reg 10 0080 128 Dbl-Word 8 SZVSR11 Callers reg 11 0088 136 Dbl-Word 8 SZVSR12 Callers reg 12 0090 144 Character 24 SZVSXTRA Open area by compiler 0090 144 Signed 4 SZVSRRET Move RC to here before trace 0094 148 Signed 4 SZVSRRSN Move RSN to here before trace 0098 152 Signed 4 SZVSREID Move EID to here before trace 009C 156 Signed 4 * reserved 00A0 160 Dbl-Word 8 SZVSFNCH Function header address 00A8 168 Dbl-Word 8 SZVSDYN (0) Dynamic storage start ---------------------------------------------------------- This DSECT is just a dummy placeholder so that we can | have storage management put an id in the trailer. | This ID will be used by SZX when it does the malloc and | free's. | ----------------------------------------------------------
SZVMA DSECT
Hex Dec Type/Val Lng Label (dup) Comments ---- ---- --------- ---- -------------- -------- 0000 0 Structure SZVMA Save area header and linkage used for CP C assembler 0000 0 Dbl-Word 8 SZVMALLO
SZVHB Storage Layout
*** SZVHB - Save area header and linkage used for CP C assembler * * +---------------------------+------+--------------------+ * 0 | SZVHEYE |:HFLG |////////////////////| * +---------------------------+------+--------------------+ * 8 | SZVHPRE | * +-------------------------------------------------------+ * 10 | SZVHNXT | * +-------------------------------------------------------+ * 18 | SZVHEND | * +-------------------------------------------------------+ * 20 | SZVHVMD | * +-------------------------------------------------------+ * 28 | SZVHTX | * +-------------------------------------------------------+ * 30 | SZVHSNA | * +-------------------------------------------------------+ * 38 |///////////////////////////////////////////////////////| * +-------------------------------------------------------+ * *** SZVHB - Save area header and linkage used for CP C assembler *** SZVSB - Save area header and linkage used for CP C assembler * * +-------------------------------------------------------+ * 0 | SZVSHDR | * +-------------------------------------------------------+ * 8 | SZVSPREV | * +-------------------------------------------------------+ * 10 | SZVSNEXT | * +-------------------------------------------------------+ * 18 | SZVSR14 | * +-------------------------------------------------------+ * 20 | SZVSR15 | * +-------------------------------------------------------+ * 28 | SZVSR0 | * +-------------------------------------------------------+ * 30 | SZVSR1 | * +-------------------------------------------------------+ * 38 | SZVSR2 | * +-------------------------------------------------------+ * 40 | SZVSR3 | * +-------------------------------------------------------+ * 48 | SZVSR4 | * +-------------------------------------------------------+ * 50 | SZVSR5 | * +-------------------------------------------------------+ * 58 | SZVSR6 | * +-------------------------------------------------------+ * 60 | SZVSR7 | * +-------------------------------------------------------+ * 68 | SZVSR8 | * +-------------------------------------------------------+ * 70 | SZVSR9 | * +-------------------------------------------------------+ * 78 | SZVSR10 | * +-------------------------------------------------------+ * 80 | SZVSR11 | * +-------------------------------------------------------+ * 88 | SZVSR12 | * +-------------------------------------------------------+ * 90 | | * = SZVSXTRA = * | | * +-------------------------------------------------------+ * A8 * *** SZVSB - Save area header and linkage used for CP C assembler *** Overlay for SZVSXTRA in SZVSB * * +---------------------------+---------------------------+ * 90 | SZVSRRET | SZVSRRSN | * +---------------------------+---------------------------+ * 98 | SZVSREID |///////////////////////////| * +---------------------------+---------------------------+ * A0 | SZVSFNCH | * +-------------------------------------------------------+ * *** Overlay for SZVSXTRA in SZVSB *** SZVMA - Save area header and linkage used for CP C assembler * * +-------------------------------------------------------+ * 0 | SZVMALLO | * +-------------------------------------------------------+ * 8 * *** SZVMA - Save area header and linkage used for CP C assembler
SZVHB Cross Reference
Symbol Dspl Value -------------- ---- ----- SZVHBIG 0004 00000002 SZVHEAD 0000 SZVHEND 0018 SZVHEYE 0000 SZVHFLG 0004 SZVHNXT 0010 SZVHPRE 0008 SZVHSIZ 0040 00000FE7 SZVHSNA 0030 SZVHSV1 0040 SZVHTOP 0004 00000001 SZVHTX 0028 SZVHVMD 0020 SZVMALLO 0000 SZVSDYN 00A8 SZVSFNCH 00A0 SZVSHDR 0000 SZVSNEXT 0010 SZVSPREV 0008 SZVSREGS 0018 SZVSREID 0098 SZVSRRET 0090 SZVSRRSN 0094 SZVSR0 0028 SZVSR1 0030 SZVSR10 0078 SZVSR11 0080 SZVSR12 0088 SZVSR14 0018 SZVSR15 0020 SZVSR2 0038 SZVSR3 0040 SZVSR4 0048 SZVSR5 0050 SZVSR6 0058 SZVSR7 0060 SZVSR8 0068 SZVSR9 0070 SZVSXTRA 0090
This information is based on z/VM V5R2.0. Last updated on 12 Apr 2006 at 17:32:13 EDT.
Copyright IBM Corporation, 1990, 2005