Patent ID: 7818551

Claim:
A system to facilitate dynamic predications of indirect jumps in a computing environment, comprising at least one hardware processor coupled to at least one machine-readable storage medium storing instruction executable by the least one hardware processor to implement: a dynamic predication of indirect jumps (DIP) monitoring engine that utilizes data about previously executed jump instructions to direct the computing environment to invoke dynamic predication, a DIP monitoring engine configured to monitor the data stored in the DIP monitoring table, and including a prediction decision mechanism configured to invoke dynamic prediction base on the data; wherein the DIP monitoring table includes a plurality of counters to hold counts of respective classifications of processing events occurring after each occurrence of a dynamic predication mode, for determining whether to invoke dynamic predication for an indirect jump based on conditions applying to a previous indirect jump after the previous indirect jump is resolved, the counters including a first counter to be incremented if the previous indirect jump was mis-predicted and a correct target for the previous indirect jump was predicated using dynamic predication; a second counter to be incremented if the previous indirect jump was mis-predicted and a correct target for the previous indirect jump was predicated using dynamic predication; a third counter to be incremented if the previous indirect jump was mis-predicted and a correct target for the previous indirect jump was predicated using dynamic predication; and a fourth counter to be incremented if the previous indirect jump was mis-predicted and a correct target for the previous indirect jump was predicated using dynamic predication; and wherein the predication decisions mechanism is configured to invoke the dynamic predication based on values of the counters.