SPRUIG3C January 2018 – August 2019 TDA4VM , TDA4VM-Q1
For some distribution modes, VCOP supports explicit predication. A vector register can be specified as a predicate. If a lane of the predicate is zero, the corresponding lane of the source vector is blocked from being stored.
On C7x predicates are represented as bit vectors with one bit corresponding to each byte of the source register. To emulate VCOP’s predicated stores, the C7x predicate must be generated by explicitly comparing the register containing the predicate vector to zero. This generates a word-wise predicate corresponding to the 32-bit words of the predicate vector.
Furthermore, if the store operation requires an explicit lane mask, the computed predicate must be combined with a lane-mask predicate using an AND instruction. Explicit lane masks are required when not using SA-based addressing, since the Streaming Address Generator provides built-in lane masking.