1. A functional unit, comprising: a controller configured to initiate execution of a vector instruction in response to a determination that one or more operands on which the vector instruction depends are available for use; and a holding unit configured to temporarily store results of the vector instruction; wherein in response to receiving a determination that a predicate vector on which the vector instruction depends was not yet available for use upon initiation of the vector instruction, the controller is further configured to: temporarily store results of the vector instruction within the holding unit, such that the results are not made available to one or more operations that depend upon the vector instruction; and in response to receiving a determination that the predicate vector is available for use, update the temporarily stored results of the vector instruction dependent upon one or more element positions of the vector instruction that are indicated to be active by the predicate vector, and store the updated results in a destination register that is made available to the one or more operations that depend upon the vector instruction.