Answer from cs61c-cm (Christopher Marcellino 15775059) for Question 2 Special hardware is rrequired since the value of $t0 is used in the second instruction, but it isn't known until the first has completed. Forwarding could be implement to have the $t0 loaded into the execution stage of the second instruction. In software, the compiler could reorder the instructions, without changing the output, to make pipelining work more efficientl.