arch_set_irn_register(res1, cycle.elems[i]);
/* insert the copy/exchange node in schedule after the magic schedule node (see above) */
- sched_add_after(sched_point, cpyxchg);
+ sched_add_after(skip_Proj(sched_point), cpyxchg);
DB((dbg, LEVEL_1, "replacing %+F with %+F, placed new node after %+F\n", irn, cpyxchg, sched_point));
exchange(res2, cpyxchg);
/* insert the copy/exchange node in schedule after the magic schedule node (see above) */
- sched_add_after(sched_point, cpyxchg);
+ sched_add_after(skip_Proj(sched_point), cpyxchg);
/* set the new scheduling point */
sched_point = cpyxchg;
assert(sched_is_scheduled(irn) && "need schedule to assure constraints");
if (! sched_is_scheduled(cpy))
sched_add_before(skip_Proj(irn), cpy);
- sched_add_after(irn, keep);
+ sched_add_after(skip_Proj(irn), keep);
/* insert the other different and it's copies into the map */
entry = ir_nodemap_get(op_set, other_different);