86 {
88
89
90 BuildInitialMoveList(parallel_move);
91
92 const InstructionSource& move_source = InstructionSource(
93 TokenPosition::kParallelMove, parallel_move->inlining_id());
94 for (intptr_t i = 0; i < moves_.length(); ++i) {
95 const MoveOperands& move = moves_[i];
96
97
98
99 if (!move.IsEliminated() && !move.src().IsConstant()) {
100 PerformMove(move_source, i);
101 }
102 }
103
104
105 for (const auto& move : moves_) {
106 if (!move.IsEliminated()) {
107 ASSERT(move.src().IsConstant());
108 scheduled_ops_.
Add({OpKind::kMove, move});
109 }
110 }
111 moves_.Clear();
112
113
115 scheduled_ops_.
Clear();
116}
static const MoveSchedule & From(const GrowableArray< ParallelMoveResolver::Op > &ops)