From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28030 invoked by alias); 28 May 2013 10:59:58 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 27925 invoked by uid 48); 28 May 2013 10:59:50 -0000 From: "juergen.reuter at desy dot de" To: gcc-bugs@gcc.gnu.org Subject: [Bug libstdc++/57421] Error when linking static libstc++ due to missing future classes Date: Tue, 28 May 2013 10:59:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: libstdc++ X-Bugzilla-Version: 4.9.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: juergen.reuter at desy dot de X-Bugzilla-Status: ASSIGNED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: redi at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-05/txt/msg01933.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D57421 --- Comment #3 from J=C3=BCrgen Reuter --- I'll try to cook it down as much as possible. >>From gcc-bugs-return-423261-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue May 28 11:08:15 2013 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 14055 invoked by alias); 28 May 2013 11:08:15 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Delivered-To: mailing list gcc-bugs@gcc.gnu.org Received: (qmail 13908 invoked by uid 48); 28 May 2013 11:08:06 -0000 From: "amylaar at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug rtl-optimization/57439] [4.9 regression] FAIL: gcc.c-torture/execute/920501-6.c execution, -O1 Date: Tue, 28 May 2013 11:08:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: rtl-optimization X-Bugzilla-Version: 4.9.0 X-Bugzilla-Keywords: wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: amylaar at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 4.9.0 X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: attachments.created Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2013-05/txt/msg01934.txt.bz2 Content-length: 975 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57439 --- Comment #4 from Jorn Wolfgang Rennecke --- Created attachment 30209 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30209&action=edit experimental patch I've used -I to point the compiler to the include directory in the newlib sources, and from what I see them, the problem is that a narrow register is generated by using the original REGNO and the new narrow mode - this misses the big endian correction. This patch uses gen_lowpart_common, which should just DTRT regardless of endianness. A further observation is that previously a conversion to a DImode add of 4 was tried, and abandoned, presumably due to cost. A SImode add to the 32 bit lowpart would be more profitable, at least if the target supports addq.l . In general, we should try if a set or constant add with a destination that is a subreg that constitutes one (or more) full hard register(s) is the cheapest option.