Software Serial Research and Questions

Is the following summary adequately describing the sequence of events on the serialEvent() issue?
1. The MCU is waiting in the loop() function.
2. Character arrives at the receiver of UART. (USART)
3. The MCU is interrupted and it goes to ISR due to USART_RX_vect. Here, the character is saved in the 64-byte wide FIFO.

4. From the ISR of Step-3, the MCU calls upon the serialEvent() SUR.
5. After finishing the serialEvent() SUR, the MCU goes back to ISR.
6. After finishing the ISR, the control goes back to loop() function.

//--------------------------------------------------------------------------
There are two places for data/string processing : void serialEvent(){} SUR or the loop() function.

A: If using void serialEvent() SUR

void serialEvent()
}
   byte x = Serial.read();
   if (x == end-of-string marker)
   {
       //do string processing
   }
       //making return to ISR
}

B: If using loop() function

void loop()
{
    if(Serial.avialable()>0)
    {
        byte x = Serial.read();
        if (x == end-of-string marker)
        {
            //data string processing
        }

    }
}

Question: Assume that the user is not doing any data processing in the serialEvent() SUR, that means that the user has not explicitly declared the serialEvent() SUR by the statement void serialEvent(){ //codes }; does the MCU still make a jump from ISR to the empty serialEvent() SUR?