public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: "Lynn A. Boger" <laboger@linux.vnet.ibm.com>
To: Matthias Klose <doko@ubuntu.com>, gcc-patches <gcc-patches@gcc.gnu.org>
Cc: david Edelsohn <dje.gcc@gmail.com>, Ian Taylor <iant@golang.org>,
	       Alan Modra <amodra@gmail.com>
Subject: Re: [PATCH] PR66870 PowerPC64 Enable gold linker with split stack
Date: Thu, 20 Aug 2015 00:01:00 -0000	[thread overview]
Message-ID: <55D50BBA.6060909@linux.vnet.ibm.com> (raw)
In-Reply-To: <55D4DA0B.6000106@ubuntu.com>

Also, I don't think it is sufficient to add the option to enable the
gold linker in gospec.c.  That will only affect links when using gccgo.
You also want to use the gold linker with gcc if -fsplit-stack is used.
That is why I had to add it to a spec in linux64.h, so that -fuse-ld=gold
  is added if fsplit-stack is set for all compilers, not just gccgo.

On 08/19/2015 02:33 PM, Matthias Klose wrote:
> On 08/18/2015 10:36 PM, Lynn A. Boger wrote:
>> As discussed in PR 66870, for ppc64le and ppc64le it is preferred to
>>   use the gold linker with gccgo or gcc if the split stack option is enabled.
>> Use of the gold linker with the split stack option results in less storage
>> allocated for goroutine stacks; if split stack is used without the gold
>> linker then some testcase failures can occur.
>>
>>    Since the use of the gold linker has not been well tested
>> with all gcc compilers on Power, it is only used as the linker if the
>> split stack option is used.
>>
>> This adds the capability to the configure for gcc and libgo to determine
>> if the gold linker is available at build time, either in the path or explicitly
>>   configured, and its version supports split stack.  If that is the case then
>> defines are set that cause the gold linker to be used by the compiler when
>> -fsplit-stack is used.  This applies to ppc64 and ppc64le.  Other platforms
>> with split stack work as before.
>>
>> 2015-08-18    Lynn Boger <laboger@linux.vnet.ibm.com>
>>
>> gcc/
>>          PR target/66870
>>          config/rs6000/linux64.h: When HAVE_LD_GOLD_SUPPORTS_SPLIT_STACK
>>          is defined add -fuse-ld=gold if fsplit-stack and not m32
>>          config/rs6000/sysv4.h:  Define TARGET_CAN_SPLIT_STACK based on
>>          LIBC version.
>>          config.in:  Set up HAVE_LD_GOLD_SUPPORTS_SPLIT_STACK.
>>          configure.ac:  When gold linker is available and its version
>>          supports split stack on ppc64, ppc64le, define
>>          HAVE_LD_GOLD_SUPPORTS_SPLIT_STACK.
>>          configure:  Regenerate.
>>
>> libgo/
>>          PR target/66870
>>          configure.ac:  When gccgo for building libgo uses the gold version
>>          containing split stack support on ppc64, ppc64le, define
>>          LINKER_SUPPORTS_SPLIT_STACK.
>>          configure:  Regenerate.
>>
>> For platforms other than ppc64 and ppc64le, the configure for gcc
>> and libgo behave as before.
> why keep the old behaviour for other archs that have split stack support? Is it
> really necessary to make this dependent on the target? I'm still using an
> unreviewed/unpinged patch to enable gold for gccgo (attached).
>
> Matthias
>
>

  parent reply	other threads:[~2015-08-19 23:05 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-08-18 21:14 Lynn A. Boger
2015-08-19 19:37 ` Matthias Klose
2015-08-19 19:42   ` David Edelsohn
2015-08-19 22:07   ` Lynn A. Boger
2015-08-20  0:01   ` Lynn A. Boger [this message]
2015-08-27 21:37     ` Lynn A. Boger
2015-09-15 16:50       ` Ian Lance Taylor
2015-09-15 18:21       ` David Edelsohn
2015-09-15 18:31         ` Lynn A. Boger
2015-09-15 20:04           ` Ian Lance Taylor
2015-09-17 19:15             ` Lynn A. Boger
2015-09-18 12:59               ` David Edelsohn
2015-09-30 12:46                 ` Lynn A. Boger
     [not found]               ` <CAOyqgcVA_zhivM0+qRFk9bDT42Sot-HX95M1NtZjLVphZy_0vg@mail.gmail.com>
2015-10-03 18:31                 ` Matthias Klose
     [not found]                   ` <56153C00.2000209@linux.vnet.ibm.com>
2015-10-07 17:04                     ` Ian Lance Taylor
2015-10-07 17:25                       ` David Edelsohn
2015-10-07 17:31                     ` Matthias Klose
     [not found]                       ` <5615746C.3030509@linux.vnet.ibm.com>
2015-10-07 21:58                         ` David Edelsohn
2015-10-08 18:56                       ` Lynn A. Boger
2015-10-08 20:46                         ` Matthias Klose
2015-10-09 20:17                           ` Lynn A. Boger
2015-10-10 14:00                             ` David Edelsohn
2015-10-10 21:03                               ` Matthias Klose
2015-10-10 21:25                             ` Andreas Schwab
2015-10-11 13:07                               ` Alan Modra
2015-10-11 14:43                                 ` Andreas Schwab
2015-10-11 18:29                                   ` Ian Lance Taylor
2015-10-11 23:19                                     ` Alan Modra
2015-10-12 15:15                                 ` Lynn A. Boger
2015-10-12 22:53                                   ` Alan Modra
2015-10-13 11:27                                     ` Matthias Klose
2015-10-15 18:40                                 ` David Edelsohn
2015-10-15 19:57                                   ` Lynn A. Boger
2015-10-17  0:37                                 ` Ian Lance Taylor
2015-08-25 23:05 ` Ian Lance Taylor
2015-08-26 14:01   ` Lynn A. Boger

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=55D50BBA.6060909@linux.vnet.ibm.com \
    --to=laboger@linux.vnet.ibm.com \
    --cc=amodra@gmail.com \
    --cc=dje.gcc@gmail.com \
    --cc=doko@ubuntu.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=iant@golang.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).