> -----Original Message-----
> From: Jeff Law [mailto:[email protected]]
> Sent: Wednesday, October 17, 2012 1:02 AM
> To: Bin Cheng
> Cc: 'Steven Bosscher'; [email protected]
> Subject: Re: [PATCH RFA] Implement register pressure directed hoist pass
> 
> On 10/16/2012 01:44 AM, Bin Cheng wrote:
> > Hi Steven, Jeff,
> > I found a flaw in original patch, which results in inaccurate register
> > pressure.
> > Here comes the updated patches, improving code size a little bit on
> > Thumb2/powerpc comparing to original patches.
> > Please review.
> >
> > Thanks
> >
> > 2012-10-16  Bin Cheng<[email protected]>
> >
> >     * gcse.c: Update copyright dates.
> >     (hoist_expr_reaches_here_p): Change parameter type from char *
> >     to sbitmap.
> >
> > 2012-10-16  Bin Cheng<[email protected]>
> >
> >     * common.opt (flag_ira_hoist_pressure): New.
> >     * doc/invoke.texi (-fira-hoist-pressure): Describe.
> >     * ira-costs.c (ira_set_pseudo_classes): New parameter.
> >     * ira.h: Update copyright dates.
> >     (ira_set_pseudo_classes): Update prototype.
> >     * haifa-sched.c (sched_init): Update call.
> >     * ira.c (ira): Update call.
> >     * regmove.c: Update copyright dates.
> >     (regmove_optimize): Update call.
> >     * loop-invariant.c: Update copyright dates.
> >     (move_loop_invariants): Update call.
> >     * gcse.c: (struct bb_data): New structure.
> >     (BB_DATA): New macro.
> >     (curr_bb, curr_reg_pressure): New static variables.
> >     (should_hoist_expr_to_dom): Rename from hoist_expr_reaches_here_p.
> >     Change parameter expr_index to expr.
> >     New parameters pressure_class, nregs and hoisted_bbs.
> >     Use reg pressure to determine the distance expr can be hoisted.
> >     (hoist_code): Use reg pressure to direct the hoist process.
> >     (get_regno_pressure_class, get_pressure_class_and_nregs)
> >     (change_pressure, calculate_bb_reg_pressure): New.
> >     (one_code_hoisting_pass): Calculate register pressure. Allocate
> >     and free data.
> 
> 
> 
> > +
> > + /* Currently register pressure for each pressure class.  */ static
> > + int curr_reg_pressure[N_REG_CLASSES];
> "Currently" -> "Current"
> 
> OK for the mainline sources.
> 

Committed to trunk as r192603/r192604, after re-testing against recent trunk
codes.

Thanks.



Reply via email to