The library control area (LCA), Figure 1, is a control block that is allocated in the key of the caller when Language Environment is initialized. The LCA is pointed to by CEELAA_LCA64. For mapping information, see the SCEEMAC(CEELCA) data set.
1 CEELCA
OFFSET OFFSET
DECIMAL HEX TYPE LENGTH NAME (DIM) DESCRIPTION
======== ======== ========= ======== ============== ===============================
0 (0) STRUCTURE 864 CEELCA Flags - byte 2
0 (0) STRUCTURE 864 CEELCA LCA mapping
0 (0) CHARACTER 856 CEELCALEN Length used for dwrd filler
0 (0) CHARACTER 4 CEELCAEYE eyecatcher 'LCA '
4 (4) SIGNED 4 CEELCA_VER version
8 (8) ADDRESS 8 CEELCA_CAA +8 ptr to the CAA
16 (10) ADDRESS 4 CEELCA_DIA +16 ptr to the DIA
20 (14) CHARACTER 4 CEELCA_RSVD1B reserved
24 (18) ADDRESS 4 CEELCA_LAA addr of associated LAA
28 (1C) ADDRESS 4 CEELCA_OSSPL@ Ptr to OS call parm list
32 (20) ADDRESS 8 CEELCA_SAVSTACK
Saved Stack Pointer when OS_NOSTACK
linkage routine is called. After the
call returns, the CEELCA_SAVSTACK
field must be set back to zero.
When the value is not zero, condition
management and signal processing
use this value as the current stack
pointer. Asynchronous signals are
put back if the interrupt occurs
outside the bounds of the routine
that owns the stack frame.
40 (28) ADDRESS 256 CEELCA_CELQINIT
ptr to CELQINIT
48 (30) CHARACTER 256 CEELCA_TRT Space for C TRT
304 (130) ADDRESS 8 CEELCA_SHUNT ptr to the shunt routine
312 (138) CHARACTER 4 CEELCA_FDSETFD
Work area used by 64-bit UU version
for 31-bit mode field in CAA
316 (13C) CHARACTER 4 * (reserved)
320 (140) ADDRESS 8 CEELCA_RSVFLD01
Unavailable for use
328 (148) ADDRESS 8 CEELCA_RSVFLD02
Unavailable for use
336 (150) ADDRESS 8 CEELCA_SAVSTACK_ASYNC
When the value is not zero,
CEELCA_SAVSTACK_ASYNC contains the
the address of a 8-byte field
provided by the application that
holds the Saved Stack Pointer
when the register for the stack
pointer is being used for other purposes.
Zero otherwise. When the field exists
and is not zero, Condition Management
and signal processing will use this value
as the current stack pointer. Asynchronous
signals will be processed even if the
interrupt occurs outside the bounds of
the routine that owns the stack frame.
816 (330) ADDRESS 8 CEELCA_CELQ6TLC
ptr to CELQ6TLC
824 (338) CHARACTER 32 CEELCA_RSVD2 (reserved)
856 (358) CHARACTER 8 * Dword boundary filler
Figure 2 provides the cross reference to the LCA.
1 CROSS REFERENCE
HEX HEX
NAME OFFSET VALUE LEVEL
==== ====== ======== =====
CEELCA 0 1
CEELCA_CAA 8 2
CEELCA_CELQINIT 28 2
CEELCA_CELQ6TLC 330 2
CEELCA_DIA 10 2
CEELCA_FDSETFD 138 2
CEELCA_LAA 18 2
CEELCA_LEN 338 358 2
CEELCA_OSSPL@ 1C 2
CEELCA_RSVD1B 14 2
CEELCA_RSVD2 338 2
CEELCA_RSVFLD01 140 2
CEELCA_RSVFLD02 148 2
CEELCA_SAVSTACK 20 2
CEELCA_SAVSTACK_ASYNC 150 2
CEELCA_SHUNT 130 2
CEELCA_TRT 30 2
CEELCA_VER 4 2
CEELCAEYE 0 2
CEELCALEN 0 2