Should I be setting Old_Bits to New_Bits in the 'DoneRotEnc' label for the first 3 of 4 interrupts related to an IOC?

Code:
' ***************************************************************
' [IOC - interrupt handler]
' ***************************************************************
RotEncAdjust:
    New_Bits = PORTA & (%00000011)

    IF New_Bits = Old_Bits Then DoneRotEnc

    ' Increment ISR counter (since quad encoder throws 4 interrupts
    ' for every single detent), only want to update MotorRPM when counter
    ' reaches 4 (i.e. a single detent 'click')
    ISRCounter = ISRCounter + 1
    IF ISRCounter < 4 THEN DoneRotEnc

    RotEncDir = New_Bits.1 ^ Old_Bits.0
    IF RotEncDir = 1 Then
        ; CW rotation - increase speed but only to a max of 'MaxDuty'
        IF MotorRPM < MaxDuty then MotorRPM = MotorRPM + 1
    Else
        ' CCW rotation - decrease speed to a min of 0
        IF MotorRPM > 0 Then MotorRPM = MotorRPM - 1
    EndIF

    ValueDirty = 1                   ; Set dirty flag
    ISRCounter = 0                   ; Reset ISR entry counter
    TimeToSave = 50000               ; Set value to begin countdown to EEPROM save

DoneRotEnc:
    Old_Bits = New_Bits

    IOCAF.0 = 0                     ' Clear interrupt flags
    IOCAF.1 = 0

@ INT_RETURN