Commit ef5d30c9 by Richard Kenner

(expand_call): If function hasn't been used before, call

assemble_external.

From-SVN: r4773
parent e44842fe
...@@ -1476,8 +1476,18 @@ expand_call (exp, target, ignore) ...@@ -1476,8 +1476,18 @@ expand_call (exp, target, ignore)
/* Get the function to call, in the form of RTL. */ /* Get the function to call, in the form of RTL. */
if (fndecl) if (fndecl)
/* Get a SYMBOL_REF rtx for the function address. */ {
funexp = XEXP (DECL_RTL (fndecl), 0); /* If this is the first use of the function, see if we need to
make an external definition for it. */
if (! TREE_USED (fndecl))
{
assemble_external (fndecl);
TREE_USED (fndecl) = 1;
}
/* Get a SYMBOL_REF rtx for the function address. */
funexp = XEXP (DECL_RTL (fndecl), 0);
}
else else
/* Generate an rtx (probably a pseudo-register) for the address. */ /* Generate an rtx (probably a pseudo-register) for the address. */
{ {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment