From db25e492164350aed1e016186e2c5937fa16f938 Mon Sep 17 00:00:00 2001 From: Richard Stallman Date: Fri, 28 May 1993 22:51:47 +0000 Subject: [PATCH] (expand_inline_function): When copy REG_NOTES, must also call subst_constants. From-SVN: r4587 --- gcc/integrate.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/gcc/integrate.c b/gcc/integrate.c index ad26413ed48..8bb32dace7a 100644 --- a/gcc/integrate.c +++ b/gcc/integrate.c @@ -1711,9 +1711,16 @@ expand_inline_function (fndecl, parms, target, ignore, type, structure_value_add /* Now copy the REG_NOTES. */ for (insn = insns; insn; insn = NEXT_INSN (insn)) if (GET_RTX_CLASS (GET_CODE (insn)) == 'i' - && map->insn_map[INSN_UID (insn)]) - REG_NOTES (map->insn_map[INSN_UID (insn)]) - = copy_rtx_and_substitute (REG_NOTES (insn), map); + && map->insn_map[INSN_UID (insn)] + && REG_NOTES (insn)) + { + rtx tem = copy_rtx_and_substitute (REG_NOTES (insn), map); + /* We must also do subst_constants, in case one of our parameters + has const type and constant value. */ + subst_constants (&tem, NULL_RTX, map); + apply_change_group (); + REG_NOTES (map->insn_map[INSN_UID (insn)]) = tem; + } if (local_return_label) emit_label (local_return_label); -- 2.30.2