摘要 |
A method and apparatus are provided for processing far jump-call branch instructions to increase the efficiency of a processor pipeline. The processor includes a far jump-call target buffer which stores the default address/operand size corresponding to each of a plurality of previously executed far jump-call instructions. When a far jump-call instruction is encountered, it is speculatively executed using the corresponding default address/operand size for that instruction as stored in the far jump-call target buffer. This speculative far jump-call instruction is executed and resolved thus determining the actual address/operand size. If the actual address/operand size matches the speculative default address/operand size then the speculation was correct and processing continues. However, if there is no match, then the speculation was wrong and the pipeline is flushed. |