*         CTEXT  CTP$DFT_LOG_ERROR_CHECK_MATCH
 CFM      SPACE  4,10
**        CFM - CHECK FOR MATCH BETWEEN NEW ERROR AND PREVIOUS ERROR AT *FREE*.
*
*         ENTRY  (A) = BUFFER LENGTH TO COMPARE.
*
*         EXIT   (A) <> 0 NO MATCH.
*
*         USES   T1, T2, T3, T4, W0 - W7.
*
*         CALLS  IDA.


 CFM      SUBR               ENTRY/EXIT
          STDL   T4          STORE BUFFER LENGTH
          LDM    FREE
          RJM    IBW         INCREMENT BUFFER CONTROL WORDS
          CRDL   W4          GET BUFFER CONTROL WORD (FREE) OFFSET
          LDN    MRBP
          RJM    IDA
          CRDL   W0          MAINTENANCE REGISTER BUFFER POINTERS
          LDDL   W4+BCDA     INTERLOCKED ANALYSIS CODE
          LPC    0#7FF       CLEAR MULT OCCUR BIT AND PRIORITY
          SBDL   BC+BCDA     CURRENT ANALYSIS CODE
          NJP    CFMX        IF NOT SAME ANALYSIS CODE
          LDD    W4+BCOFF
          ADD    W0
          STD    T1          OFFSET TO (FREE) BUFFER
          LDDL   T4          LOAD BUFFER LENGTH
          SBN    1
          STD    T2
          LRD    W1
 CFM1     LDD    W0
          ADC    RR
          CRML   CFMA,ON     TEMPORARY BUFFER ENTRY
          LDD    T1          LOGGED BUFFER OFFSET
          ADC    RR
          CRML   CFMB,ON     LOGGED BUFFER ENTRY
          LDN    3
          STD    T3          PP WORD COUNT
 CFM2     LDML   CFMA,T3
          SBML   CFMB,T3
          NJP    CFMX        IF THEY DONT MATCH
          SOD    T3
          PJN    CFM2
          AOD    W0          BUMP TEMPORARY OFFSET
          AOD    T1          BUMP LOGGED OFFSET
          SOD    T2
          PJN    CFM1        IF MORE TO COMPARE
          LDN    0           CHECKED OUT OK
          LJM    CFMX        RETURN

 CFMA     BSS    4           TEMPORARY BUFFER SAVE AREA
 CFMB     BSS    4           LOGGED BUFFER SAVE AREA

*         END    CTP$DFT_LOG_ERROR_CHECK_MATCH
