z/OS TSO/E REXX Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Initialization routine - IRXINIT

z/OS TSO/E REXX Reference
SA32-0972-00

Use IRXINIT to either initialize a new language processor environment or obtain the address of the environment block for the current non-reentrant environment. The "current" environment is the last non-reentrant environment created on this task control block (TCB) or a parent TCB. A non-reentrant environment found on a parent TCB is only considered "current" if it is integrated into TSO/E (TSOFL='1'B).

Tip: To permit FORTRAN programs to call IRXINIT, TSO/E provides an alternate entry point for the IRXINIT routine. The alternate entry point name is IRXINT.

If you use IRXINIT to obtain the address of the current environment block, IRXINIT returns the address in register 0 and also in the sixth parameter.

If you use IRXINIT to initialize a language processor environment, the characteristics for the new environment are based on parameters that you pass on the call and values that are defined for the previous environment. Generally, if you do not pass a specific parameter on the call, IRXINIT uses the value from the previous environment.

IRXINIT always locates a previous environment as follows. On the call to IRXINIT, you can pass the address of an environment block in register 0. IRXINIT then uses this environment as the previous environment if the environment is valid. If register 0 does not contain the address of an environment block, IRXINIT locates the previous environment. If IRXINIT locates a previous environment, IRXINIT uses that environment as the previous environment. If IRXINIT cannot locate an environment, IRXINIT uses the load module IRXPARMS as the previous environment.

Chains of environments and how environments are located describes in detail how IRXINIT locates a previous environment. A previous environment is always identified regardless of the parameters you specify on the call to IRXINIT.

Using IRXINIT, you can initialize a reentrant or a non-reentrant environment, which is determined by the setting of the RENTRANT flag bit. If you use IRXINIT to initialize a reentrant environment and you want to chain the new environment to a previous reentrant environment, you must pass the address of the environment block for the previous reentrant environment in register 0.

If you use IRXINIT to locate a previous environment, you can locate only the current non-reentrant environment. IRXINIT does not locate a reentrant environment.

You can use IRXINIT CHEKENVB to verify that an address is a valid ENVBLOCK:
  • under the current task
  • under a parent task
  • is not under the current task or under a parent task.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014