| CPC G06F 9/30149 (2013.01) [G06F 9/30152 (2013.01); G06F 9/3016 (2013.01); G06F 9/382 (2013.01); G06F 12/0875 (2013.01); G06F 2212/452 (2013.01)] | 24 Claims |

|
1. A hardware processor core comprising:
a decoder circuit to decode instructions into decoded instructions;
an execution circuit to execute the decoded instructions;
an instruction cache;
an instruction length decoder circuit;
a predecode cache comprising a predecode bit, for each section of multiple sections of instruction data, that indicates when that section is identified as a boundary of a variable length instruction;
storage for an incomplete decode table comprising a single bit, for each proper subset of the multiple sections of the instruction data, that indicates when that proper subset of the multiple sections has one or more invalid predecode bits in the predecode cache; and
a fetch circuit to, for an incoming address of the instruction data, perform a lookup in the instruction cache and the incomplete decode table, and, when there is a hit in the incomplete decode table that indicates a first proper subset of the multiple sections of the instruction data for the incoming address has the one or more invalid predecode bits in the predecode cache and a hit in the instruction cache for the instruction data at the incoming address, cause the instruction length decoder circuit to generate one or more predecode bits for the first proper subset of the multiple sections of the instruction data for the incoming address that has the one or more invalid predecode bits.
|