From patchwork Mon Jul 16 03:50:45 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: Fixing gcc.c-torture/compile/pr44707.c for CRIS v32 1/2. From: Hans-Peter Nilsson X-Patchwork-Id: 171126 Message-Id: <201207160350.q6G3oijw019839@ignucius.se.axis.com> To: gcc-patches@gcc.gnu.org Date: Mon, 16 Jul 2012 05:50:45 +0200 Buglet in cris_preferred_reload_class, incidental, apparently without effect at least regarding failing test-cases. A class disjunct from the input was returned as "preferred". It could arguably be gcc_asserted as a sanity-check by the caller that the returned class is a subset of the original class. ...and I guess I'll add such a gcc_assert *inside* cris_preferred_reload_class. Later. No regressions, cris-elf and crisv32-elf. Committed. gcc: * config/cris/cris.c (cris_preferred_reload_class): Don't return GENERAL_REGS as preferred to MOF_SRP_REGS. brgds, H-P Index: gcc/config/cris/cris.c =================================================================== --- gcc/config/cris/cris.c (revision 189470) +++ gcc/config/cris/cris.c (working copy) @@ -1503,6 +1550,7 @@ cris_preferred_reload_class (rtx x ATTRI { if (rclass != ACR_REGS && rclass != MOF_REGS + && rclass != MOF_SRP_REGS && rclass != SRP_REGS && rclass != CC0_REGS && rclass != SPECIAL_REGS)