diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/xtensa/xtensa.c | 3 | ||||
-rw-r--r-- | gcc/config/xtensa/xtensa.h | 5 |
3 files changed, 12 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index ba745d8..86f729c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2008-08-29 Bob Wilson <bob.wilson@acm.org> + + * config/xtensa/xtensa.c (xtensa_secondary_reload_class): Revert + change from 2008-04-03. + * config/xtensa/xtensa.h (IRA_COVER_CLASSES): Define. + 2008-08-29 Vladimir Makarov <vmakarov@redhat.com> PR rtl-opt/37251 diff --git a/gcc/config/xtensa/xtensa.c b/gcc/config/xtensa/xtensa.c index 0f6bbb5..f9979e6 100644 --- a/gcc/config/xtensa/xtensa.c +++ b/gcc/config/xtensa/xtensa.c @@ -2852,8 +2852,7 @@ xtensa_secondary_reload_class (enum reg_class rclass, if (!isoutput) { - if ((rclass == FP_REGS || GET_MODE_SIZE (mode) < UNITS_PER_WORD) - && constantpool_mem_p (x)) + if (rclass == FP_REGS && constantpool_mem_p (x)) return RL_REGS; } diff --git a/gcc/config/xtensa/xtensa.h b/gcc/config/xtensa/xtensa.h index 920f9d2..1c23b8d 100644 --- a/gcc/config/xtensa/xtensa.h +++ b/gcc/config/xtensa/xtensa.h @@ -479,6 +479,11 @@ enum reg_class { 0xffffffff, 0x0000000f } /* all registers */ \ } +#define IRA_COVER_CLASSES \ +{ \ + BR_REGS, FP_REGS, ACC_REG, AR_REGS, LIM_REG_CLASSES \ +} + /* A C expression whose value is a register class containing hard register REGNO. In general there is more that one such class; choose a class which is "minimal", meaning that no smaller class |