Understanding branch delay slot and branch prediction prefetch in instruction pipelining