CPC G06F 9/30101 (2013.01) [G06F 9/30072 (2013.01); G06F 9/30098 (2013.01); G06F 9/3867 (2013.01); G06F 12/0875 (2013.01); G06F 12/1408 (2013.01); G06F 12/1458 (2013.01); G06F 15/78 (2013.01); G06F 21/52 (2013.01); G06F 21/6218 (2013.01); G06F 2212/1052 (2013.01); G06F 2212/402 (2013.01); G06F 2212/452 (2013.01)] | 10 Claims |
1. A method of processing instructions comprising:
establishing a metadata processing domain that is separated and isolated from an associated instruction processing domain;
establishing at least one control/status register (CSR) configured to facilitate an exchange of information between the metadata processing domain and the instruction processing domain;
receiving from the instruction processing domain, for metadata processing, a current instruction with an associated metadata tag, the metadata processing being performed in the metadata processing domain;
determining, in the metadata processing domain and in accordance with the current instruction and metadata tags associated with the current instruction, whether a rule exists in a rule cache for the current instruction, the rule cache including rules on metadata used by said metadata processing to define allowed operations; and
responsive to determining that no rule exists in the rule cache for the current instruction, performing rule cache miss processing in the metadata processing domain, wherein the rule cache miss processing includes performing first rule cache miss processing for a first set of one or more rules using a rule cache miss handler, the rule cache miss handler generating at least one output comprising at least one metadata tag used in forming a new rule for the current instruction.
|