Conditional Branches, Calls, and Returns
5-13
Program Control
RETC, like RET, is a single-word instruction. However, because of the poten-
tial PC discontinuity, it operates with the same effective execution time as the
conditional branch (BCND) and the conditional call (CC). By the time the condi-
tions of the conditional return instruction have been tested, the two instruction
words following the return instruction have already been fetched in the pipe-
line. If all the conditions are met, these two instruction words are flushed from
the pipeline so that they are not executed, and then execution of the calling
program continues. If the conditions are
not
met, the two instructions are
executed instead of the return. Because there is a wait cycle for conditions to
become stable, the conditional return takes one more cycle than the uncondi-
tional one.