}
}
+ funexp = prepare_call_address (funexp, fndecl, &use_insns);
+
/* Now do the register loads required for any wholly-register parms or any
parms which are passed both on the stack and in a register. Their
expressions were already evaluated.
/* All arguments and registers used for the call must be set up by now! */
- funexp = prepare_call_address (funexp, fndecl, &use_insns);
-
/* Generate the actual call instruction. */
emit_call_1 (funexp, funtype, args_size.constant, struct_value_size,
FUNCTION_ARG (args_so_far, VOIDmode, void_type_node, 1),
argnum = 0;
#endif
+ fun = prepare_call_address (fun, NULL_TREE, &use_insns);
+
/* Now load any reg parms into their regs. */
for (count = 0; count < nargs; count++, argnum += inc)
use_insns = get_insns ();
end_sequence ();
- fun = prepare_call_address (fun, NULL_TREE, &use_insns);
-
/* Don't allow popping to be deferred, since then
cse'ing of library calls could delete a call and leave the pop. */
NO_DEFER_POP;
argnum = 0;
#endif
+ fun = prepare_call_address (fun, NULL_TREE, &use_insns);
+
/* Now load any reg parms into their regs. */
for (count = 0; count < nargs; count++, argnum += inc)
}
}
- fun = prepare_call_address (fun, NULL_TREE, &use_insns);
-
/* Don't allow popping to be deferred, since then
cse'ing of library calls could delete a call and leave the pop. */
NO_DEFER_POP;