!*** MODULE $CHFDEF *** CDEC$ OPTIONS /NOALIGN ! ! CONDITION HANDLING ARGUMENT LIST OFFSETS ! THERE ARE THREE CONDITIONAL HANDLING STRUCTURES: THE PRIMARY ARGUMENT ! LIST, AND THE SIGNAL AND MECHANISM ARRAYS. ALL ARE IDENTIFIED BY THE SAME ! BLOCK PREFIX. ! STRUCTURE /CHFDEF/ INTEGER*4 %FILL ! PRIMARY ARGUMENT COUNT INTEGER*4 CHF$L_SIGARGLST ! ADDRESS OF SIGNAL ARGUMENTS INTEGER*4 CHF$L_MCHARGLST ! ADDRESS OF MECHANISM ARGUMENTS END STRUCTURE ! CHFDEF STRUCTURE /CHFDEF1/ UNION MAP INTEGER*4 CHF$IS_SIG_ARGS ! NUMBER OF SIGNAL ARGUMENTS END MAP MAP INTEGER*4 CHF$L_SIG_ARGS ! NUMBER OF SIGNAL ARGUMENTS END MAP END UNION UNION MAP INTEGER*4 CHF$IS_SIG_NAME ! SIGNAL NAME END MAP MAP INTEGER*4 CHF$L_SIG_NAME ! SIGNAL NAME END MAP END UNION UNION MAP INTEGER*4 CHF$IS_SIG_ARG1 ! FIRST SIGNAL SPECIFIC ARGUMENT END MAP MAP INTEGER*4 CHF$L_SIG_ARG1 ! FIRST SIGNAL SPECIFIC ARGUMENT END MAP END UNION END STRUCTURE ! CHFDEF1 STRUCTURE /CHFDEF2/ UNION MAP INTEGER*4 CHF$IS_MCH_ARGS ! NUMBER OF MECHANISM ARGUMENTS END MAP MAP INTEGER*4 CHF$L_MCH_ARGS ! NUMBER OF MECHANISM ARGUMENTS END MAP END UNION UNION MAP INTEGER*4 CHF$PH_MCH_FRAME ! ESTABLISHER FRAME ADDRESS END MAP MAP INTEGER*4 CHF$L_MCH_FRAME ! ESTABLISHER FRAME ADDRESS END MAP END UNION UNION MAP INTEGER*4 CHF$IS_MCH_DEPTH ! FRAME DEPTH OF ESTABLISHER END MAP MAP INTEGER*4 CHF$L_MCH_DEPTH ! FRAME DEPTH OF ESTABLISHER END MAP END UNION UNION MAP INTEGER*4 CHF$IH_MCH_SAVR0 ! SAVED REGISTER R0 END MAP MAP INTEGER*4 CHF$L_MCH_SAVR0 ! SAVED REGISTER R0 END MAP END UNION UNION MAP INTEGER*4 CHF$IH_MCH_SAVR1 ! SAVED REGISTER R1 END MAP MAP INTEGER*4 CHF$L_MCH_SAVR1 ! SAVED REGISTER R1 END MAP END UNION END STRUCTURE ! CHFDEF2 CDEC$ END OPTIONS