From: Richard Kenner Date: Fri, 18 Mar 1994 22:53:04 +0000 (-0500) Subject: (common_mode_defined): New variable. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c764f757d53ebb592795f8c59a95e252c51598bc;p=gcc.git (common_mode_defined): New variable. (output_prolog): Define external common-mode calls. From-SVN: r6817 --- diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index ecbf9634b98..0cadc318cc9 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -55,6 +55,8 @@ int rs6000_trunc_used; static int trunc_defined; +/* Set to non-zero once AIX common-mode calls have been defined. */ +static int common_mode_defined; /* Save information from a "cmpxx" operation until the branch or scc is emitted. */ @@ -1422,6 +1424,18 @@ output_prolog (file, size) RS6000_ITRUNC, RS6000_UITRUNC); trunc_defined = 1; } + /* Write .extern for AIX common mode routines, if needed. */ + if (! TARGET_POWER && ! TARGET_POWERPC && ! common_mode_defined) + { + fputs ("\t.extern __mulh\n" + "\t.extern __mull\n" + "\t.extern __divss\n" + "\t.extern __divus\n" + "\t.extern __quoss\n" + "\t.extern __quous\n", + file); + common_mode_defined = 1; + } /* If we have to call a function to save fpr's, or if we are doing profiling, then we will be using LR. */