public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Iain Buclaw <ibuclaw@gdcproject.org>
To: gcc-patches@gcc.gnu.org
Subject: [PATCH] libphobos: Allow building libphobos using Solaris/x86 assembler
Date: Tue,  5 Jan 2021 22:43:49 +0100	[thread overview]
Message-ID: <20210105214349.3401864-1-ibuclaw@gdcproject.org> (raw)

Hi,

This patch removes the disabling of libphobos when the Solaris/x86
assembler is being used.

Since r11-6373, D symbols are now compressed using back references, this
helped reduce the average symbol length by a factor of about 3, while
the longest symbol shrank from 416133 to 1142 characters.  So the issues
that were seen on Solaris/x86 should no longer be a problem.

However, I have only used x86_64-apple-darwin10 for testing, as
libphobos couldn't be built on that target for the same reason, except
it was the system linker segfaulting due to long symbol names.

It would be good to know if Solaris has also benefitted from the change.

Regards
Iain.

---
libphobos/ChangeLog:

	* Makefile.in: Regenerate.
	* configure: Regenerate.
	* configure.ac (x86_64-*-solaris2.* | i?86-*-solaris2.*): Remove
	disabling of libphobos when using Solaris/x86 assembler.
	* libdruntime/Makefile.in: Regenerate.
---
 libphobos/Makefile.in             |  2 +-
 libphobos/configure               | 12 ------------
 libphobos/configure.ac            | 12 ------------
 libphobos/libdruntime/Makefile.in |  2 +-
 4 files changed, 2 insertions(+), 26 deletions(-)

diff --git a/libphobos/Makefile.in b/libphobos/Makefile.in
index a1395929819..d42248405a2 100644
--- a/libphobos/Makefile.in
+++ b/libphobos/Makefile.in
@@ -15,7 +15,7 @@
 @SET_MAKE@
 
 # Makefile for the toplevel directory of the D Standard library.
-# Copyright (C) 2006-2020 Free Software Foundation, Inc.
+# Copyright (C) 2006-2021 Free Software Foundation, Inc.
 #
 # GCC is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
diff --git a/libphobos/configure b/libphobos/configure
index a7fb5edb90f..d6e1d7463bb 100755
--- a/libphobos/configure
+++ b/libphobos/configure
@@ -15422,18 +15422,6 @@ $as_echo_n "checking for host support for libphobos... " >&6; }
 . ${srcdir}/configure.tgt
 case ${host} in
   x86_64-*-solaris2.* | i?86-*-solaris2.*)
-    # libphobos doesn't compile with the Solaris/x86 assembler due to a
-    # relatively low linelength limit.
-    as_prog=`$CC -print-prog-name=as`
-    if test -n "$as_prog" && $as_prog -v /dev/null 2>&1 | grep GNU > /dev/null 2>&1; then
-      druntime_cv_use_gas=yes;
-    else
-      druntime_cv_use_gas=no;
-    fi
-    rm -f a.out
-    if test x$druntime_cv_use_gas = xno; then
-      LIBPHOBOS_SUPPORTED=no
-    fi
     # 64-bit D execution fails with Solaris ld without -z relax=transtls support.
     if test "$druntime_ld_gld" = "no" && test "$druntime_ld_relax_transtls" = "no"; then
       LIBPHOBOS_SUPPORTED=no
diff --git a/libphobos/configure.ac b/libphobos/configure.ac
index cc9af29754f..254871f0a6c 100644
--- a/libphobos/configure.ac
+++ b/libphobos/configure.ac
@@ -185,18 +185,6 @@ AC_MSG_CHECKING([for host support for libphobos])
 . ${srcdir}/configure.tgt
 case ${host} in
   x86_64-*-solaris2.* | i?86-*-solaris2.*)
-    # libphobos doesn't compile with the Solaris/x86 assembler due to a
-    # relatively low linelength limit.
-    as_prog=`$CC -print-prog-name=as`
-    if test -n "$as_prog" && $as_prog -v /dev/null 2>&1 | grep GNU > /dev/null 2>&1; then
-      druntime_cv_use_gas=yes;
-    else
-      druntime_cv_use_gas=no;
-    fi
-    rm -f a.out
-    if test x$druntime_cv_use_gas = xno; then
-      LIBPHOBOS_SUPPORTED=no
-    fi
     # 64-bit D execution fails with Solaris ld without -z relax=transtls support.
     if test "$druntime_ld_gld" = "no" && test "$druntime_ld_relax_transtls" = "no"; then
       LIBPHOBOS_SUPPORTED=no
diff --git a/libphobos/libdruntime/Makefile.in b/libphobos/libdruntime/Makefile.in
index 99ee8b92afa..1163207a138 100644
--- a/libphobos/libdruntime/Makefile.in
+++ b/libphobos/libdruntime/Makefile.in
@@ -15,7 +15,7 @@
 @SET_MAKE@
 
 # Makefile for the D runtime library.
-# Copyright (C) 2012-2020 Free Software Foundation, Inc.
+# Copyright (C) 2012-2021 Free Software Foundation, Inc.
 #
 # GCC is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
-- 
2.27.0


             reply	other threads:[~2021-01-05 21:43 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-05 21:43 Iain Buclaw [this message]
2021-01-05 21:57 ` Rainer Orth
2021-01-06 13:57   ` Rainer Orth
2021-01-07 16:11     ` Iain Buclaw
2021-01-07 16:17       ` Rainer Orth
2021-01-07 17:48         ` Iain Buclaw
2021-01-11 16:46           ` Iain Buclaw
2021-01-12 14:54             ` Rainer Orth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210105214349.3401864-1-ibuclaw@gdcproject.org \
    --to=ibuclaw@gdcproject.org \
    --cc=gcc-patches@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).