CPC G06F 9/30145 (2013.01) [G06F 9/3001 (2013.01); G06F 9/30014 (2013.01); G06F 9/30025 (2013.01); G06F 9/30032 (2013.01); G06F 9/30036 (2013.01); G06F 9/30047 (2013.01); G06F 9/30149 (2013.01); G06F 9/30181 (2013.01); G06F 9/30185 (2013.01); G06F 9/30192 (2013.01); G06F 9/34 (2013.01); H01L 29/66553 (2013.01); H01L 29/775 (2013.01); H01L 29/7831 (2013.01); H01L 29/78696 (2013.01); G06F 9/30018 (2013.01); H01L 29/66 (2013.01)] | 23 Claims |
1. An apparatus comprising:
a processor to execute an instruction set, wherein the instruction set includes a first instruction format, wherein the first instruction format includes a first plurality of templates, wherein the first instruction format has a plurality of fields including a base operation field, a data element width field, and a write mask field, wherein the first instruction format supports, through different values in the base operation field, specification of different vector operations, wherein each of the vector operations is to generate a destination vector operand including a plurality of data elements at different data element positions, wherein the first instruction format supports, through different values in the data element width field, specification of different data element widths, wherein the base operation field, the data element width field, and the write mask field may each store only one value on each occurrence of an instruction in the first instruction format in instruction streams, the processor including,
a decode unit to decode the occurrences of the instructions in the first plurality of templates, including to:
distinguish, for each of the occurrences, which one of the data element widths to use based on a value in the data element width field; and
distinguish, for each of the occurrences, which of the data element positions of the destination vector operand are or are not to include corresponding data elements resulting from the vector operation of the occurrence based on the value in the write mask field and the data element width for the occurrence,
wherein different values that may be stored in the write mask field distinguish different write mask registers, of a set of write mask registers, that are to store configurable write masks, and wherein the data element width for the occurrence distinguishes which of the data element positions of the destination vector operand correspond with which bits of the configurable write masks.
|