Message ID | 4DCA8926.9030106@picochip.com |
---|---|
State | New |
Headers | show |
> * ira.c (clarify_prohibited_class_mode_regs): It was running > beyond the end of REGNO_REG_CLASS array. Fixed. This isn't a valid ChangeLog entry. It must not state the "why" (it was running beyond the end of REGNO_REG_CLASS array), only the "what". So you need to describe how you're fixing the problem, e.g. "Do not access the array if ..." or "Stop the loop if ...". See the numerous examples in ChangeLog.
Index: gcc/ira.c =================================================================== --- gcc/ira.c (revision 173654) +++ gcc/ira.c (working copy) @@ -1422,6 +1422,12 @@ if (TEST_HARD_REG_BIT (ira_prohibited_class_mode_regs[cl][j], hard_regno)) continue; nregs = hard_regno_nregs[hard_regno][j]; + if (hard_regno + nregs >= FIRST_PSEUDO_REGISTER) + { + SET_HARD_REG_BIT (ira_prohibited_class_mode_regs[cl][j], + hard_regno); + continue; + } pclass = ira_pressure_class_translate[REGNO_REG_CLASS (hard_regno)];