calls.c (expand_call): Move expand_start_target_temps call after start_sequence().

* calls.c (expand_call): Move expand_start_target_temps call after
	start_sequence().

From-SVN: r33911
This commit is contained in:
Jakub Jelinek 2000-05-15 18:58:37 +02:00 committed by Jakub Jelinek
parent 3cfea7796d
commit b8d254e64d
2 changed files with 14 additions and 6 deletions

View File

@ -1,3 +1,8 @@
2000-05-15 Jakub Jelinek <jakub@redhat.com>
* calls.c (expand_call): Move expand_start_target_temps call after
start_sequence().
2000-05-15 Neil Booth <NeilB@earthling.net>
* cpphash.c (trad_stringify, warn_trad_stringify,

View File

@ -2341,12 +2341,6 @@ expand_call (exp, target, ignore)
only one of the alternates. */
emit_queue ();
/* We know at this point that there are not currently any
pending cleanups. If, however, in the process of evaluating
the arguments we were to create some, we'll need to be
able to get rid of them. */
expand_start_target_temps ();
/* State variables we need to save and restore between
iterations. */
save_pending_stack_adjust = pending_stack_adjust;
@ -2368,6 +2362,15 @@ expand_call (exp, target, ignore)
sibcall_failure instead of continuing the loop. */
start_sequence ();
if (pass == 0)
{
/* We know at this point that there are not currently any
pending cleanups. If, however, in the process of evaluating
the arguments we were to create some, we'll need to be
able to get rid of them. */
expand_start_target_temps ();
}
/* When calling a const function, we must pop the stack args right away,
so that the pop is deleted or moved with the call. */
if (flags & (ECF_CONST | ECF_PURE))