Fix c++ problem resulting from ADDRESSOF support.
* integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc. From-SVN: r16330
This commit is contained in:
parent
3feffdfe8e
commit
474eff8855
@ -1,5 +1,7 @@
|
||||
Tue Nov 4 16:55:11 1997 Jim Wilson <wilson@cygnus.com>
|
||||
|
||||
* integrate.c (save_for_inline_copying): Copy parm_reg_stack_loc.
|
||||
|
||||
* reload.c (find_reloads, case 'm' and 'o'): Reject HIGH constants.
|
||||
|
||||
* mips.c (mips_expand_epilogue): Emit blockage insn before call to
|
||||
|
@ -415,6 +415,7 @@ save_for_inline_copying (fndecl)
|
||||
int max_uid;
|
||||
rtx first_nonparm_insn;
|
||||
char *new, *new1;
|
||||
rtx *new2;
|
||||
|
||||
/* Make and emit a return-label if we have not already done so.
|
||||
Do this before recording the bounds on label numbers. */
|
||||
@ -539,6 +540,16 @@ save_for_inline_copying (fndecl)
|
||||
XEXP (regno_reg_rtx[i], 0)
|
||||
= copy_for_inline (XEXP (regno_reg_rtx[i], 0));
|
||||
|
||||
/* Copy the parm_reg_stack_loc array, and substitute for all of the rtx
|
||||
contained in it. */
|
||||
new2 = savealloc (max_parm_reg * sizeof (rtx));
|
||||
bcopy ((char *) parm_reg_stack_loc, (char *) new2,
|
||||
max_parm_reg * sizeof (rtx));
|
||||
parm_reg_stack_loc = new2;
|
||||
for (i = LAST_VIRTUAL_REGISTER + 1; i < max_parm_reg; ++i)
|
||||
if (parm_reg_stack_loc[i])
|
||||
parm_reg_stack_loc[i] = copy_for_inline (parm_reg_stack_loc[i]);
|
||||
|
||||
/* Copy the tree of subblocks of the function, and the decls in them.
|
||||
We will use the copy for compiling this function, then restore the original
|
||||
subblocks and decls for use when inlining this function.
|
||||
|
Loading…
Reference in New Issue
Block a user