From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4023 invoked by alias); 14 Jan 2014 21:45:49 -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 3553 invoked by uid 48); 14 Jan 2014 21:45:44 -0000 From: "anton at samba dot org" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/59814] New: powerpc64le ICE with -O2 -mpower8 -ffast-math Date: Tue, 14 Jan 2014 21:45:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Version: 4.9.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: anton at samba dot org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter Message-ID: 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: 2014-01/txt/msg01498.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D59814 Bug ID: 59814 Summary: powerpc64le ICE with -O2 -mpower8 -ffast-math Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: anton at samba dot org The following test case: /* -O2 -mcpu=3Dpower8 -ffast-math */ float val; int verbose; void bar(float x); void foo(void) { if (val < 0.0) { val =3D 1.0; if (!verbose) zot(); bar(val); } } fails with: # gcc -c -O2 -mcpu=3Dpower8 -ffast-math testcase.c testcase.c: In function =E2=80=98foo=E2=80=99: testcase.c:16:1: error: unrecognizable insn: } ^ (insn 52 16 3 3 (parallel [ (set (reg:SF 33 1 [orig:125 D.2152 ] [125]) (unspec:SF [ (reg:SF 9 9 [131]) ] UNSPEC_P8V_RELOAD_FROM_GPR)) (clobber (reg:DI 8 8)) ]) -1 (nil)) testcase.c:16:1: internal compiler error: in extract_insn, at recog.c:2154 >>From gcc-bugs-return-440357-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Tue Jan 14 21:59:19 2014 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 21827 invoked by alias); 14 Jan 2014 21:59:19 -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 21496 invoked by uid 48); 14 Jan 2014 21:59:14 -0000 From: "virkony at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug c++/59813] tail-call elimintation didn't fired with left-shift of char to cout Date: Tue, 14 Jan 2014 21:59:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: c++ X-Bugzilla-Version: 4.8.2 X-Bugzilla-Keywords: X-Bugzilla-Severity: major X-Bugzilla-Who: virkony at gmail dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned 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: 7bit X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2014-01/txt/msg01499.txt.bz2 Content-length: 444 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59813 --- Comment #1 from Nikolay Orliuk --- In 4.7.3 that code works, but changing it to void foo() { cout << "x" << endl; // ok cout << 'x' << endl; // kills tail-call elimination in gcc 4.8.2 struct {} bar; // kills tail-call elimination in 4.7.3 foo(); } Removing either "bar" or 'x' results in normal infinite loop. In 4.5.4 this works fine as is.