Control Hazard

Why do branch instructions cause pipeline stalls?

A

The register file must be flushed before a branch can execute

B

Branch instructions use more ALU cycles than other instructions

C

The pipeline fetches instructions past an unresolved branch, and they may need to be discarded

D

Branches require exclusive access to the memory bus