struct conditional_eagerly_assignable_state
Declaration
struct conditional_eagerly_assignable_state { /* full declaration omitted */ };
Description
Instruction has been inserted into assignment_queue
, but has not yet been assigned. After popping it from the queue, it can potentially be assigned by eagerly enqueueing it to the lane where all its remaining predecessors are already assigned to. If a third instruction is submitted to the target lane in the meantime however, assignment will fail, and we revert back to unassigned_state
. Implies num_unassigned_predecessors == 0
.
Member Variables
- std::optional<device_id> device
- lane_id lane = -1
- std::optional<instruction_id> expected_last_submission_on_lane