This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On Wed, 25 May 2011, Vladimir Makarov wrote:It is ambiguous area. Register pressure classes are used for register pressure evaluation in several parts of the compiler:
I'm not sure I understand the basic requirement.This patch solves http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49154 for CRIS. The problem was in that the pressure classes did not contain SRP register and the assert failed.
register pressure sensitive loop invariant motion register pressure sensitive insn scheduling and in IRA to form regions for allocation
I don't think it is necessary because as I know only CRIS requires register classes modification. But I'd say the general rule would be defining more classes as possible (each class for uniform groups of registers and for different unions of them). It would help to avoid such problem and improve coloring. On the other hand adding all the different unions would be probably overkill for the most targets.OK to commit?
2011-05-25 Vladimir Makarov<vmakarov@redhat.com>
PR rtl-optimization/49154 * config/cris/cris.h (reg_class, REG_CLASS_NAMES) (REG_CLASS_CONTENTS, REGNO_REG_CLASS): Add class SRP_REGS.Can you please suggest an update to the target macro documentation to reflect the requirement it's currently failing? To feel ok with this change I need to understand why it's not ok as is: I can't see the error, just a random change narrowing a register class that at a glance *should* not be needed. To wit, I need to understand why the bug is here and that it's not the failing assert in IRA that's wrong.
(And thanks for your work, really. Don't worry about fitting the update into texinfo format, I can help with that.)
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |