From 01333d81e4b493b1f9069e6d496b6071f69d8558 Mon Sep 17 00:00:00 2001 From: Richard Sandiford Date: Sun, 26 Oct 2014 10:41:53 +0000 Subject: [PATCH] mips.c (mips_record_lo_sum): Replace with... gcc/ * config/mips/mips.c (mips_record_lo_sum): Replace with... (mips_record_lo_sums): ...this new function. (mips_reorg_process_insns): Update accordingly. From-SVN: r216714 --- gcc/ChangeLog | 6 ++++++ gcc/config/mips/mips.c | 19 +++++++++---------- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 059db3081ae..c10b1ee48b1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-10-26 Richard Sandiford + + * config/mips/mips.c (mips_record_lo_sum): Replace with... + (mips_record_lo_sums): ...this new function. + (mips_reorg_process_insns): Update accordingly. + 2014-10-26 Richard Sandiford * config/mips/mips.c (mips_sim_insn): Update comment. diff --git a/gcc/config/mips/mips.c b/gcc/config/mips/mips.c index fe1f5f5f220..e0d701b532b 100644 --- a/gcc/config/mips/mips.c +++ b/gcc/config/mips/mips.c @@ -16040,16 +16040,15 @@ mips_lo_sum_offset_lookup (mips_offset_table *htab, rtx x, return INTVAL (offset) <= entry->offset; } -/* A for_each_rtx callback for which DATA is a mips_lo_sum_offset hash table. - Record every LO_SUM in *LOC. */ +/* Search X for LO_SUMs and record them in HTAB. */ -static int -mips_record_lo_sum (rtx *loc, void *data) +static void +mips_record_lo_sums (const_rtx x, mips_offset_table *htab) { - if (GET_CODE (*loc) == LO_SUM) - mips_lo_sum_offset_lookup ((mips_offset_table*) data, - XEXP (*loc, 1), INSERT); - return 0; + subrtx_iterator::array_type array; + FOR_EACH_SUBRTX (iter, array, x, NONCONST) + if (GET_CODE (*iter) == LO_SUM) + mips_lo_sum_offset_lookup (htab, XEXP (*iter, 1), INSERT); } /* Return true if INSN is a SET of an orphaned high-part relocation. @@ -16224,10 +16223,10 @@ mips_reorg_process_insns (void) get_referenced_operands (string, used, noperands); for (int i = 0; i < noperands; ++i) if (used[i]) - for_each_rtx (&ops[i], mips_record_lo_sum, &htab); + mips_record_lo_sums (ops[i], &htab); } else - for_each_rtx (&PATTERN (subinsn), mips_record_lo_sum, &htab); + mips_record_lo_sums (PATTERN (subinsn), &htab); } last_insn = 0; -- 2.30.2