SSAVE SSAVE is used by DMSITS to saye the value of the SVC old PSi, the caller's registers, and
other necessary control information required to Frocess the SVC and return to the caller. Since SVC calls can be nested, several of these save areas can exist at one time. The system save area is dynamically allocated in protected free storage. SSAVE is invoked via the CMSIVE macro. 0 A* 1 I 1*2 CODE CALLER
8 CALLEE 10 OLDPSW i8 NRIiRET ERRET 20 EGPRO EGPR1 28 EGPR2 EGPR3 30 EGPR4 EGPR5 38 EGPR6 EGPR7 40 EGPR8 EGPR9 48 EGPR10 EGPR11 50 EGPR12 EGPR13 58 EGPR14 EGPR15 60 EFPRO 68 EFPR2 70 EFPR4
78 EFPR6 80 CHKWRD 1 SSAVENXT 88 SSAVEPRV USAVEPTR 90 OSTEMP 1*3 I KEYS 98 KEYS (cant. ) XGPRO 10 XGPR1 XGPR15 A8 XCOUNT CHKiRD2 Section 2. CMS Lata Areas and Contrel Blocks 231
SSAVE Hexadecimal Field Displacement Name o
2
4
8 10 18 1C 20 20 24
28 2C 30 34
38 3C 40 44
48 4C 50 54
58 5C 60 60 68 70 78 80 84
88 8C 90 94
95 9C AO A4
A8 AC OVIND DS TYPFLAG DS TPFERT EQU TPFNS EQU TPFROl EQU TPFUSR EQU TPFACB EQU TPFSV3 EQU TPFSVO EQU CODE DS CALLER DS CAL LEE DS OLDPSlf DS NRftRET DS ERRET DS EGPRS DS EGPRO DS EGPRl DS EGPR2 DS EGPR3 DS EGPR4 DS EGPR5 DS EGPR6 DS EGPR7 DS EGPR8 DS EGPR9 DS EGPR10 DS EGPR11 DS EGPR12 DS EGPR13 DS EGPR14 DS EGPR15 DS EFPRS DS EFPRO DS EFPR2 DS EFPR4 DS EFPR6 DS CHKlfRD1 DC SSAVENIT DS VEPRV DS USAVEPTR DS OSTEftP DS KEYP KEYS DC DS 1.211.2!!ng Subroutine XGPRO----ns IGPR1 DS IGPR15 DS ICOUNT DS CHKlfRD2 DC SSAVESZ EQU I BLl in TYPFLAG --1'80'--- 1'40' 1'20' 1'10' I'OS' 1'02' 1'01' H A D
D
A
A OF F F F F F F F F F F F F F F F F OD D
D
D
D C'ABCD' A A A F Field Description, Contents, A*l Override indicator: 0, 1, 2, and 3
A*2 SVC-type flag byte
Error return desired No save area allocated
Return callee's RO-R1 to User SVC call OS iSAM SVC request SVC 203 OS simulation SiC SVC 203 code value
Address of SVC caller
caller Name of routine being called SVC old PSlf of caller
Address for normal return
Address for error return
General-purpose registers at entry to SVC RO R1
R2
R3
R4
RS
R6
R7 RS R9 R10 R11
R12
R13
R14
R1S
Floating-point registers at entry FPRO FPR2 FPR4 FPR6 Check word one
Address of next SSAVE area
Address of previous SSAVE area
Address of corresponding user save area -see USAVE DSECT Temporary work area fer OS simulation routines Maximu. numter of keys in stack 1'00' A*3 Number of keys in stack
Key stack (KEYMAI) I F F F F C'EFGH' Extra copy of EGPRO Extra copy of EGPR1 Extra copy of EGPR1S Extra copy of SVCOUNT Check word two (*-SSAVE+7)/8 Size of syste. save area in deublewords (1'1S') 232 IBM VM/370 Data Areas and Control Elock Logic
Previous Page Next Page