1. A data processing method comprising: storing fetched instructions in one or more instruction queues; decoding instructions dispatched from the one or more instruction queues, the decoding step comprising allocating one or more processor resources of a set of processor resources to a decoded instruction for use in execution of that decoded instruction; detecting, for an instruction to be dispatched from a given instruction queue, a prediction indicating whether sufficient processor resources are predicted to be available for allocation to that instruction by the decoding step; dispatching an instruction from an instruction queue for decoding; and retaining the dispatched instruction in that instruction queue when the prediction indicates that insufficient processor resources are predicted to be available for allocation to that instruction by the decoding step.