USING DFHTRPT_ARG,R1
TRACE_ENTRY DS 0H
L R1,UEPXSTOR Prepare for XPI call
DFHTRPTX CLEAR, X
POINT_ID(TR_ENTRY)
B ISSUE_TRACE
TRACE_EXIT DS 0H
L R1,UEPXSTOR Prepare for XPI call
DFHTRPTX CLEAR, X
POINT_ID(TR_EXIT)
B ISSUE_TRACE
TRACE_ERROR DS 0H
L R1,UEPXSTOR Prepare for XPI call
DFHTRPTX CLEAR, X
POINT_ID(TR_ERROR), X
DATA1(TR_ERROR_N,1)
BAL R6,ISSUE_TRACE
B RETURN
*
*---------------------------------------------------------------------*
* Issue the Trace XPI call *
*---------------------------------------------------------------------*
ISSUE_TRACE DS 0H
L R8,UEPTRACE Address of trace flag
TM 0(R8),UEPTRON Is trace on?
BZ NO_TRACE No - do not issue trace then
LR R12,R13 Save R13 round XPI call
L R13,UEPSTACK
DFHTRPTX CALL, X
IN, X
FUNCTION(TRACE_PUT), X
POINT_ID(*), X
OUT, X
RESPONSE(*), X
REASON(*)
LR R13,R12 Restore R13 (DFHEISTG)
NO_TRACE DS 0H
BR R6 Return to caller
DROP R1
*
*=====================================================================*
* ERRORn *
* Error has occurred during processing *
* Issue a trace point and return to the CICS *
*=====================================================================*
ERROR1 DS 0H
MVI TR_ERROR_N,1
B TRACE_ERROR
ERROR2 DS 0H
MVI TR_ERROR_N,2
B TRACE_ERROR
ERROR3 DS 0H
MVI TR_ERROR_N,3
B TRACE_ERROR
Figure 147. Example exit program for the XTSEREQ exit (part 14)
890 Customization Guide