aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/i386/sol2.h
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2004-06-14 19:31:27 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2004-06-14 19:31:27 +0200
commit25178498408d82ead8eab484067152398acb7335 (patch)
tree6ab390998002751ec74aeedc38b1ad95ddffbd18 /gcc/config/i386/sol2.h
parentbc20e36d1659487e7975ddd1fb18e53867149e8f (diff)
downloadgcc-25178498408d82ead8eab484067152398acb7335.zip
gcc-25178498408d82ead8eab484067152398acb7335.tar.gz
gcc-25178498408d82ead8eab484067152398acb7335.tar.bz2
re PR target/15178 (Solaris 9/x86 fails linking after stage 3)
PR target/15178 * config/i386/sol2.h (ASM_OUTPUT_DEF_FROM_DECLS): Define. From-SVN: r83117
Diffstat (limited to 'gcc/config/i386/sol2.h')
-rw-r--r--gcc/config/i386/sol2.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/config/i386/sol2.h b/gcc/config/i386/sol2.h
index 40bbf04..78b2985 100644
--- a/gcc/config/i386/sol2.h
+++ b/gcc/config/i386/sol2.h
@@ -64,3 +64,18 @@ Boston, MA 02111-1307, USA. */
/* The Solaris assembler does not support .quad. Do not use it. */
#undef ASM_QUAD
+
+/* The Solaris assembler wants a .local for non-exported aliases. */
+#define ASM_OUTPUT_DEF_FROM_DECLS(FILE, DECL, TARGET) \
+ do { \
+ const char *declname = \
+ IDENTIFIER_POINTER (DECL_ASSEMBLER_NAME (DECL)); \
+ ASM_OUTPUT_DEF ((FILE), declname, \
+ IDENTIFIER_POINTER (TARGET)); \
+ if (! TREE_PUBLIC (DECL)) \
+ { \
+ fprintf ((FILE), "%s", LOCAL_ASM_OP); \
+ assemble_name ((FILE), declname); \
+ fprintf ((FILE), "\n"); \
+ } \
+ } while (0)