summaryrefslogtreecommitdiff
path: root/gcc/calls.c
diff options
context:
space:
mode:
authoraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>2000-12-29 04:36:00 +0000
committeraoliva <aoliva@138bc75d-0d04-0410-961f-82ee72b054a4>2000-12-29 04:36:00 +0000
commita683e787147345e489169a5a67f59d0a9a43636d (patch)
treeaf5e75560d0eb72fd9fac6714e7f146853aae429 /gcc/calls.c
parent481e432cedbb02522244d65f08ff0431060bf5f7 (diff)
downloadgcc-a683e787147345e489169a5a67f59d0a9a43636d.tar.gz
* calls.c (emit_library_call_value_1): Add to call_fusage the
stack slot assigned to argument passed by reference. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@38523 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/calls.c')
-rw-r--r--gcc/calls.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/calls.c b/gcc/calls.c
index 51d5566d374..0f031ac6ec9 100644
--- a/gcc/calls.c
+++ b/gcc/calls.c
@@ -3667,6 +3667,9 @@ emit_library_call_value_1 (retval, orgfun, value, fn_type, outmode, nargs, p)
/* We do not support FUNCTION_ARG_CALLEE_COPIES here since it can
be viewed as just an efficiency improvement. */
rtx slot = assign_stack_temp (mode, GET_MODE_SIZE (mode), 0);
+ call_fusage = gen_rtx_EXPR_LIST (VOIDmode,
+ gen_rtx_USE (VOIDmode, slot),
+ call_fusage);
emit_move_insn (slot, val);
val = force_operand (XEXP (slot, 0), NULL_RTX);
mode = Pmode;