US 11,861,368 B2
Re-enabling use of prediction table after execution state switch
Houdhaifa Bouzguarrou, Valbonne (FR); Michael Brian Schinzler, Round Rock, TX (US); Yasuo Ishii, Austin, TX (US); Jatin Bhartia, Cambridge (GB); and Sumanth Chengad Raghu, St. Ives (GB)
Assigned to Arm Limited, Cambridge (GB)
Filed by Arm Limited, Cambridge (GB)
Filed on May 24, 2022, as Appl. No. 17/752,060.
Prior Publication US 2023/0385066 A1, Nov. 30, 2023
Int. Cl. G06F 9/38 (2018.01); G06F 21/50 (2013.01); G06F 9/48 (2006.01)
CPC G06F 9/3848 (2013.01) [G06F 9/3844 (2013.01); G06F 9/3806 (2013.01); G06F 9/48 (2013.01); G06F 21/50 (2013.01)] 18 Claims
OG exemplary drawing
 
1. An apparatus comprising:
processing circuitry having a plurality of execution states for execution of instructions;
branch history storage to store branch history information indicative of at least one branch property for a sequence of branches;
prediction circuitry to determine a prediction for controlling execution of at least one instruction by the processing circuitry, where the prediction circuitry is configured to determine a first type of prediction based at least on a first prediction table storing prediction information looked up based on at least a first portion of the branch history information corresponding to a first predetermined number of branches; and
prediction control circuitry to:
in response to detecting an execution state switch of the processing circuitry from a first execution state to a second execution state more privileged than the first execution state, disable use of the first prediction table in determining the first type of prediction; and
in response to detecting that a number of branches causing an update to the branch history storage since the execution state switch is greater than or equal to the first predetermined number, re-enable use of the first prediction table in determining the first type of prediction;
wherein in response to a return to the first execution state occurring after the execution state switch when the number of branches causing an update to the branch history storage since the execution state switch is still less than the first predetermined number of branches, the prediction control circuitry is configured to re-enable use of the first prediction table in determining the first type of prediction.