An apparatus is described having
processing circuitry to perform vector
processing operations, a set of vector registers, and an
instruction decoder to decode vector instructions to control the
processing circuitry to perform the required operations. The
instruction decoder is responsive to a given vector memory access instruction specifying a plurality of memory access operations, where each memory access operation is to be performed to access an associated
data element, to determine, from a
data vector indication field of the given vector memory access instruction, at least one vector register in the set of vector registers associated with a plurality of data elements, and to determine, from at least one capability vector indication field of the given vector memory access instruction, a plurality of vector registers in the set of vector registers containing a plurality of capabilities. Each capability is associated with one of the data elements in the plurality of data elements and provides an address indication and constraining information constraining use of that address indication when accessing memory. The number of vector registers determined from the at least one capability vector indication field is greater than the number of vector registers determined from the
data vector indication field. The
instruction decoder controls the processing circuitry: to determine, for each given
data element in the plurality of data elements, a
memory address based on the address indication provided by the associated capability, and to determine whether the memory access operation to be used to access the given
data element is allowed in respect of that determined
memory address having regard to the constraining information of the associated capability; and to enable performance of the memory access operation for each data element for which the memory access operation is allowed.