*DECK PURGREG
IDENT PURGREG
ENTRY PURGREG
*#
*1DC PURGREG
*
* 1. PROC NAME AUTHOR DATE
* PURGREG R. M. FARRELL 88/07/29
*
* 2. FUNCTIONAL DESCRIPTION.
* THIS ROUTINE IS CALLED WHEN IT IS NECESSARY TO FORCE A CENTRAL
* MEMORY READ WHERE THE SYMPL COMPILER'S OPTIMIZER MAY HAVE
* OTHERWISE SUPPRESSED THE GENERATION OF ONE. IT IS USED WHERE
* THE LOCATION BEING REFERENCED MAY HAVE BEEN UPDATED BY A PP.
*
* 3. METHOD USED.
* THE PRESENCE OF A SUBROUTINE CALL CAUSES THE SYMPL COMPILER
* TO CONSIDER ALL REGISTER CONTENTS INVALIDATED.
* THE CALLERS RETURN JUMP TO THIS ROUTINE IS REPLACED WITH
* PASS INSTRUCTIONS WHEN IT IS FIRST CALLED AS THE ROUTINE
* PERFORMS NO FUNCTION AT EXECUTION TIME.
*
* 4. ENTRY PARAMETERS. NONE.
*
* 5. EXIT PARAMETERS. NONE.
*
* 6. COMDECKS CALLED. NONE.
*
* 7. ROUTINES CALLED. NONE.
*
* 8. DAYFILE MESSAGES. NONE.
*
*#
PURGREG EQ *+1S17
SA1 PURGREG READ RETURN ADDRESS STORED BY *RJ*
AX1 47-17 RETURN ADDRESS TO LOW ORDER 18 BITS
SX2 X1-1 ADDRESS OF WORD CONTAINING *RJ*
SA3 NOOP READ PASS INSTRUCTION WORD
BX6 X3 MOVE TO STORE REGISTER
SA6 X2 REPLACE *RJ* WITH PASS
EQ PURGREG
NOOP SB0 B0+46000B UPPER 30 BITS OF PASS WORD
SB0 B0+46000B LOWER 30 BITS OF PASS WORD
END