Flag non-modification extension for ISA instructions using prefixes

US9811338B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9811338-B2
Application numberUS-201113976261-A
CountryUS
Kind codeB2
Filing dateNov 4, 2011
Priority dateNov 14, 2011
Publication dateNov 7, 2017
Grant dateNov 7, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In one embodiment, a processor includes an instruction decoder to receive and decode an instruction having a prefix and an opcode, an execution unit to execute the instruction based on the opcode, and flag modification override logic to prevent the execution unit from modifying a flag register of the processor based on the prefix of the instruction.

First claim

Opening claim text (preview).

What is claimed is: 1. A method, comprising: in response to decoding an instruction having a prefix and an opcode received at a processor, wherein the prefix includes a vector length bit when the opcode includes a vector instruction that is supported by the processor, executing, by an execution unit of the processor, the instruction based on the opcode; and preventing the execution unit from modifying a flag register of the processor based on the vector length bit of the prefix of the instruction. 2. The method of claim 1 , further comprising: extracting the prefix from the instruction; and determining whether the instruction is valid based on the prefix in view of a capability of the processor, wherein the execution unit is to execute the instruction only if the instruction is valid. 3. The method of claim 2 , wherein determining whether the instruction is valid comprises examining a value of one or more bits of the prefix in view of a processor identifier that identifies a type of the processor. 4. The method of claim 2 , further comprising generating an exception indicating that the instruction is invalid, if one or more bits of the prefix matches a predetermined bit pattern based on the capability of the processor. 5. The method of claim 1 , further comprising: preventing the execution unit from modifying the flag register if one or more bits of the prefix match a first predetermined bit pattern; and allowing the execution unit to modify the flag register if one or more bits of the prefix match a second predetermined bit pattern. 6. The method of claim 1 , wherein the opcode of the instruction represents an integer operation that when executed would normally modify the flag register. 7. A processor, comprising: an instruction decoder to receive and decode an instruction having a prefix and an opcode, wherein the prefix includes a vector length bit when the opcode includes a vector instruction that is supported by the processor; an execution unit to execute the decoded instruction based on the opcode; and flag modification override logic to prevent the execution unit from modifying a flag register of the processor based on the vector length bit of the prefix of the instruction. 8. The processor of claim 7 , wherein the instruction decoder is to extract the prefix from the instruction and to determine whether the instruction is valid based on the prefix in view of a capability of the processor, wherein the execution unit is to execute the instruction only if the instruction is valid. 9. The processor of claim 8 , wherein the instruction decoder is to examine a value of one or more bits of the prefix in view of a processor identifier that identifies a type of the processor. 10. The processor of claim 8 , wherein the instruction decoder is to generate an exception indicating that the instruction is invalid, if one or more bits of the prefix matches a predetermined bit pattern based on the capability of the processor. 11. The processor of claim 7 , wherein the flag modification override logic is to prevent the execution unit from modifying the flag register if one or more bits of the prefix match a first predetermined bit pattern, and allow the execution unit to modify the flag register if one or more bits of the prefix match a second predetermined bit pattern. 12. The processor of claim 7 , wherein the opcode of the instruction represents an integer operation that when executed would normally modify the flag register. 13. A system, comprising: an interconnect; a processor coupled to the interconnect to: receive and decode, by an instruction decoder of the processor, an instruction having a prefix and an opcode, wherein the prefix includes a vector length bit when the opcode includes a vector instruction that is supported by the processor, execute the decoded instruction based on the opcode, and prevent modification of a flag register of the processor based on the vector length bit of the prefix of the instruction; and a dynamic random access memory (DRAM) coupled to the interconnect. 14. The system of claim 13 , wherein the processor is to extract the prefix from the instruction and to determine whether the instruction is valid based on the prefix in view of a capability of the processor, wherein the processor is to execute the instruction only if the instruction is valid. 15. The system of claim 14 , wherein the processor is to examine a value of one or more bits of the prefix in view of a processor identifier that identifies a type of the processor. 16. The system of claim 14 , wherein the processor is to generate an exception indicating that the instruction is invalid, if one or more bits of the prefix matches a predetermined bit pattern based on the capability of the processor. 17. The system of claim 13 , wherein the processor is to prevent the execution unit from modifying the flag register if one or more bits of the prefix match a first predetermined bit pattern, and allow the execution unit to modify the flag register if one or more bits of the prefix match a second predetermined bit pattern. 18. The system of claim 13 , wherein the opcode of the instruction represents an integer operation that when executed would normally modify the flag register.

Assignees

Inventors

Classifications

  • Condition code generation, e.g. Carry, Zero flag · CPC title

  • Instruction analysis, e.g. decoding, instruction word fields · CPC title

  • according to one or more bits in the instruction, e.g. prefix, sub-opcode · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9811338B2 cover?
In one embodiment, a processor includes an instruction decoder to receive and decode an instruction having a prefix and an opcode, an execution unit to execute the instruction based on the opcode, and flag modification override logic to prevent the execution unit from modifying a flag register of the processor based on the prefix of the instruction.
Who is the assignee on this patent?
Combs Jonathan D, Brandt Jason W, Valentine Robert, and 1 more
What technology area does this patent fall under?
Primary CPC classification G06F9/30145. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 07 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).