See
BPX1GTH (__getthent) example for an example of the __getthent service,
which uses reentrant code. Compare this example with an example of
nonreentrant code for the same service in
Example of nonreentrant entry linkage—AMODE 31, and
note the following:
- Placement of the standard 18-word register save area
- Use of program and dynamic storage base registers
- @DYNAM DSECT in the reentrant version
- Different forms of the CALL macro
- Several variables (such as PGPSCONTTYBLEN) that are initialized
by the assembler in the nonreentrant version (see BPXYPGPS — Map the response structure for w_getpsent for
the DCs), and at execution time with moves and stores in the reentrant version.