The predicate vector annotation .pred.vector explicitly specifies the predicate register contents using a user-defined value. The user-defined value is represented by a 64-bit binary number and each bit corresponds to a predicate register, respectively. A second optional operand can be used as a mask to selectively set only some of the predicate registers. Currently this annotation is ignored by the Intel® Itanium(TM) Assembler.
This annotation takes effect at the point of insertion and the assembler may use this information for further analysis. The .pred.vector annotation has the following syntax:
.pred.vector val [,mask]
Where:
val |
Specifies a number represented as a 64-bit binary number. Each bit represents a 1-bit value in each of the corresponding 64 predicate registers. If val is not within the 64-bit range, this annotation is ignored. |
mask |
Represents an optional mask value used to define a subset of the predicate register file. |
Example Using a Predicate Vector Annotation with a Mask illustrates a predicate vector annotation that sets the predicate registers according to the specified value 0x9, and uses a mask of 0xffff to define a subset of the predicate register file.
Example: Using a Predicate Vector Annotation with a Mask |
.pred.vector 0x9, 0xffff //only refers to lowest 16-bits that |