forwarding
Passing a result straight from the stage that just produced it to the instruction that needs it, without waiting for it to be written into the register file.
Forwarding (bypassing) routes a result from a later pipeline register back to the ALU inputs of a dependent instruction in an earlier stage, removing the stall for ALU-to-ALU dependences in the five-stage pipeline.
Examples
The
add's result goes straight from the end of its EX stage into the next instruction's EX stage, without waiting for write-back.