US 11,789,735 B2
Control transfer termination instructions of an instruction set architecture (ISA)
Vedvyas Shanbhogue, Austin, TX (US); Jason W. Brandt, Austin, TX (US); Uday R. Savagaonkar, Portland, OR (US); and Ravi L. Sahita, Portland, OR (US)
Assigned to Intel Corporation, Santa Clara, CA (US)
Filed by Intel Corporation, Santa Clara, CA (US)
Filed on May 25, 2021, as Appl. No. 17/329,231.
Application 17/329,231 is a continuation of application No. 16/352,051, filed on Mar. 13, 2019, granted, now 11,023,232.
Application 16/352,051 is a continuation of application No. 15/635,294, filed on Jun. 28, 2017, granted, now 10,262,162, issued on Apr. 16, 2019.
Application 15/635,294 is a continuation of application No. 13/690,221, filed on Nov. 30, 2012, granted, now 9,703,567, issued on Jul. 11, 2017.
Prior Publication US 2021/0279058 A1, Sep. 9, 2021
Int. Cl. G06F 9/30 (2018.01); G06F 9/38 (2018.01); G06F 21/52 (2013.01); G06F 21/71 (2013.01)
CPC G06F 9/30054 (2013.01) [G06F 9/30076 (2013.01); G06F 9/30145 (2013.01); G06F 9/3851 (2013.01); G06F 9/3857 (2013.01); G06F 9/3861 (2013.01); G06F 21/52 (2013.01); G06F 9/3005 (2013.01); G06F 9/3012 (2013.01); G06F 21/71 (2013.01)] 8 Claims
OG exemplary drawing
 
1. A processor comprising:
a storage to store state information;
first circuitry to decode instructions, including a first indirect control transfer instruction, a second indirect control transfer instruction of a different type than the first indirect control transfer instruction, and a control transfer termination instruction, wherein the control transfer termination instruction comprises an opcode and has a length of at least four bytes;
second circuitry coupled to the first circuitry and the storage to execute the first indirect control transfer instruction to
perform an indirect control transfer to a target instruction, wherein a two bit field having a first value is to be stored in the storage in response to the first indirect control transfer instruction, and wherein the first value of the two bit field is different than a second value of the two bit field to be stored in the storage in response to the second indirect control transfer instruction; and
third circuitry, responsive to the first indirect control transfer instruction, to:
determine whether the target instruction is a valid control transfer point for the first indirect control transfer instruction, wherein for the control transfer termination instruction to be the valid control transfer point for the first indirect control transfer instruction depends on a value of the two bit field;
in response to a determination the target instruction is not the valid control transfer point, cause a first exception to be raised; and
in response to a determination the target instruction is the valid control transfer point, not cause the first exception to be raised.