From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 988 invoked by alias); 11 Sep 2015 03:49:27 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 979 invoked by uid 89); 11 Sep 2015 03:49:27 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=1.5 required=5.0 tests=AWL,BAYES_50,KAM_LAZY_DOMAIN_SECURITY,RDNS_DYNAMIC,TVD_RCVD_IP autolearn=no version=3.3.2 X-HELO: brightrain.aerifal.cx Received: from 216-12-86-13.cv.mvl.ntelos.net (HELO brightrain.aerifal.cx) (216.12.86.13) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 11 Sep 2015 03:49:25 +0000 Received: from dalias by brightrain.aerifal.cx with local (Exim 3.15 #2) id 1ZaFKx-0005Ed-00; Fri, 11 Sep 2015 03:49:19 +0000 Date: Fri, 11 Sep 2015 04:05:00 -0000 From: Rich Felker To: Joseph Myers Cc: gcc-patches@gcc.gnu.org Subject: Re: Reviving SH FDPIC target Message-ID: <20150911034919.GS17773@brightrain.aerifal.cx> References: <20150902183650.GA16052@brightrain.aerifal.cx> <20150902210535.GM17773@brightrain.aerifal.cx> <20150903005101.GN17773@brightrain.aerifal.cx> <20150903155345.GQ17773@brightrain.aerifal.cx> <20150904201640.GU17773@brightrain.aerifal.cx> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20150904201640.GU17773@brightrain.aerifal.cx> User-Agent: Mutt/1.5.21 (2010-09-15) X-IsSubscribed: yes X-SW-Source: 2015-09/txt/msg00763.txt.bz2 On Fri, Sep 04, 2015 at 04:16:40PM -0400, Rich Felker wrote: > On Thu, Sep 03, 2015 at 11:53:45AM -0400, Rich Felker wrote: > > On Thu, Sep 03, 2015 at 02:58:39PM +0000, Joseph Myers wrote: > > > On Wed, 2 Sep 2015, Rich Felker wrote: > > > > > > > So if __fpscr_values was the only reason for patch 1/3 in the FDPIC > > > > patchset, I think we can safely drop it. And patch 2/3 was already > > > > committed, so 3/3, the one I was originally looking at, seems to be > > > > all we need. It was approved at the time, so I'll proceed with merging > > > > it with 5.2.0. > > > > > > Well, obviously if trying dropping patch 1/3 you need to remove everything > > > related to use_initial_val (the feature added in patch 1/3) from patch > > > 3/3. > > > > As far as I can tell, the only "use" of use_initial_val is defining > > the pseudo-instruction in the md file, which causes the code in patch > > 1/3 to use it. I see no other references to it. As I understand, the > > breakage from not having it (in the original 4.5-era patch) would be > > when introducing references to __fpscr_values later, and no longer > > having the GOT pointer, but that code is gone now. > > I have this basically working -- obviously no heavy testing yet, and > the specs glue is not sufficient to make it practical for others to > try it yet, so it'll be a little longer til I have something to post. I'm running into a problem with crtstuff.c: the references to __TMC_END__, etc. end up using @GOTOFF relocations which the linker then rejects. Is this a linker bug or something I need to fix in the target code to avoid generating @GOTOFF relocations? Since crtbegin.o has no information about what section __TMC_END__ will be in when it's defined, I don't see a lot of options except to avoid using @GOTOFF entirely for symbols that aren't defined in the same TU. Rich