Richard Sandiford <richard.sandif...@linaro.org> wrote on 30/08/2011 03:10:50 PM:
> From: Richard Sandiford <richard.sandif...@linaro.org> > To: gcc-patches@gcc.gnu.org > Cc: Ayal Zaks/Haifa/IBM@IBMIL > Date: 30/08/2011 03:10 PM > Subject: [3/4] SMS: Record moves in the partial schedule > > This patch adds infrastructure that will be used by the final patch. > Specifically: > > - it splits the generation of register moves into two: schedule_reg_moves > records moves in the partial schedule, while apply_reg_moves makes the > register substitutions. > > This patch doesn't actually schedule the moves. Instead, there's > some throw-away code in apply_reg_moves to emit the moves in the > same as we do now. That's throw-away code that will be removed > in the final patch. > > - schedule_reg_moves is allowed to fail. We then try again with the > next ii (subject to the usual ii limits). > > In this patch, schedule_reg_moves always returns true. > > - The partial schedule uses ids to represent register moves. > The first register move has id g->num_nodes. > > Richard This is fine. Only request is to document that the register moves are placed/assigned-id's in a specific order. Functionality-wise it results in identical code as current version, right? Thanks, Ayal.