From patchwork Sat Oct 27 15:34:26 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: committed: Fix WORDS_BIG_ENDIAN use in lra-assign.c:find_hard_regno_for Date: Sat, 27 Oct 2012 05:34:26 -0000 From: Joern Rennecke X-Patchwork-Id: 194622 Message-Id: <20121027113426.eihyf3ig4kksw04k-nzlynne@webmail.spamcop.net> To: gcc-patches@gcc.gnu.org Cc: Vladimir Makarov Bootstrapped (c,c++) on i686-pc-linux-gnu. Committed as obvious. 2012-10-27 Joern Rennecke * lra-assigns.c (find_hard_regno_for): Fix use of WORDS_BIG_ENDIAN. Index: lra-assigns.c =================================================================== --- lra-assigns.c (revision 192878) +++ lra-assigns.c (revision 192879) @@ -571,15 +571,12 @@ find_hard_regno_for (int regno, int *cos && HARD_REGNO_MODE_OK (hard_regno, PSEUDO_REGNO_MODE (regno)) && ! TEST_HARD_REG_BIT (impossible_start_hard_regs, hard_regno) && (nregs_diff == 0 -#ifdef WORDS_BIG_ENDIAN - || (hard_regno - nregs_diff >= 0 - && TEST_HARD_REG_BIT (reg_class_contents[rclass], - hard_regno - nregs_diff)) -#else - || TEST_HARD_REG_BIT (reg_class_contents[rclass], - hard_regno + nregs_diff) -#endif - )) + || (WORDS_BIG_ENDIAN + ? (hard_regno - nregs_diff >= 0 + && TEST_HARD_REG_BIT (reg_class_contents[rclass], + hard_regno - nregs_diff)) + : TEST_HARD_REG_BIT (reg_class_contents[rclass], + hard_regno + nregs_diff)))) { if (hard_regno_costs_check[hard_regno] != curr_hard_regno_costs_check)