gtpi1m0fSystem Installation Support Reference

Macro Servicing

There are many points in the control program where macro servicing can begin or end. Macro servicing can begin in the following:

Macro servicing can end in one of the following ways:

All of these points in macro servicing have unique user exit points because the system condition at each place is unique.

TPF Macro Processing: Limitations/Restrictions

The user exit points associated with macro processing do not recognize whether a macro has been issued from an E-type program or from the control program. This means that any macro that takes a path through any of the places identified as the beginning of macro servicing can be intercepted. It is, however, assumed that the user will screen out those macros issued from the control program.

The macros which generate inline code are not capable of being intercepted at macro entry or at macro exit because there are no exit points at these locations. The WGTAC and CINFC (fast path) macros are inline macros and, therefore, are not intercepted.

There are some macro service routines that perform a control transfer operation as part of their processing. If a core block cannot be obtained for the control transfer, the macro service routine may temporarily suspend the ECB by directly invoking the DLAYC macro processing routine. If this occurs, the User Exit routine will be invoked next at postinterrupt time for the DLAYC macro (if the SVC macro exit with postinterrupt exit point SVW is active), and then again when the original macro service routine completes its processing (if the associated exit point is active).

Note:
Some macros that issue an implied wait will return via the SVX exit point if no outstanding I/O exists. If outstanding I/O exists, the macro will return using SVW.