The HFZXUFMT load module Formatting user exit
The HFZXUFMT load module Formatting user exit (in the following topics referred to as the HFZXUFMT exit) is a special type of user exit. It does not follow the normal rules that apply to other user exits described in Options, whether in REXX or in load module format.
The HFZXUFMT exit cannot be specified though the Exits option, but is located by load module name. If a load module with the name HFZXUFMT is found in an APF-authorized library during Z Abend Investigator execution, then it is invoked during the formatting of the analysis report. The HFZXUFMT exit is called immediately before any other Formatting user exits specified through the Exits option.
The HFZXUFMT exit:
- Must be LE-compliant.
- Must not contain a "main" function.
- Must be link-edited with the NORENT option.
Z Abend Investigator invokes the HFZXUFMT exit by way of the HCLXMFMT entry point, which is contained within HFZXLFMT, the non-executable load module that is provided with Z Abend Investigator. The exit user code is invoked by way of entry point HFZXUFMT.
Entry specifications
The user code HFZXUFMT entry point is invoked with:
- R1 pointing to two fullwords:
- The first fullword is the address of the ENV data area (see ENV - Common exit environment information).
- The second fullword is the address of the UFM data area (see UFM - Formatting user exit parameter list).
- R13 pointing to save area.
- R14 containing the return address.
- R15 containing the HFZXUFMT entry point address.
Return specifications
On return from the HFZXUFMT entry point:
- R0 and R1 are undefined.
- R2 through R14 must be unchanged.
- R15 is undefined.
Sample HFZXUFMT exits
Two sample HFZXUFMT exits are provided, along with JCL to compile (or Assemble) and link:
- A sample C HFZXUFMT exit is provided in HFZ.SHFZSAM1(HFZXUFMC)
- A sample Asssembler HFZXUFMT exit is provided in HFZ.SHFZSAM1(HFZXUFMA)