Original: ILP allows the compiler and the processor to overlap the execution of multiple instructions or even to change the order in which instructions are executed.
Simplified: Branch prediction is used with speculative execution.