From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 120525 invoked by alias); 3 Aug 2015 09:36:08 -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 111898 invoked by uid 48); 3 Aug 2015 09:36:05 -0000 From: "ubizjak at gmail dot com" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/67089] [4.8/4.9/5/6 Regression] Integer overflow checks not optimized on x86/x86_64 Date: Mon, 03 Aug 2015 09:36:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Version: 5.2.1 X-Bugzilla-Keywords: X-Bugzilla-Severity: minor X-Bugzilla-Who: ubizjak at gmail dot com X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: 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: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-SW-Source: 2015-08/txt/msg00063.txt.bz2 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D67089 --- Comment #3 from Uro=C5=A1 Bizjak --- (In reply to Mike from comment #2) > (In reply to Uro=C5=A1 Bizjak from comment #1) > > We shouldn't do this, and it reflected in PR58779. > But can't we improve the logic to satisfy both pr58779 and pr67089? The > absolute metric is code quality, and with all due respect, the code can be > better in this very case. I don't see a way. pr58779 will generate: (set (pc) (if_then_else (gtu (plus:SI (reg:SI 86 [ D.1769 ]) (const_int -1 [0xffffffffffffffff])) (reg:SI 86 [ D.1769 ])) (label_ref 22) (pc))) which can be also represented as: (set (pc) (if_then_else (gtu (minus:SI (reg:SI 86 [ D.1769 ]) (const_int 1 [0x1])) (reg:SI 86 [ D.1769 ])) (label_ref 22) (pc))) and before pr58779 was fixed, these two equivalent insns would result in swapped condition, as evident from the diff: case GTU: /* CF=3D0 & ZF=3D0 */ case LEU: /* CF=3D1 | ZF=3D1 */ - /* Detect overflow checks. They need just the carry flag. */ - if (GET_CODE (op0) =3D=3D MINUS - && rtx_equal_p (op1, XEXP (op0, 0))) - return CCCmode; - else - return CCmode; + return CCmode; and the part where GTU is emitted: @@ -14103,8 +14103,6 @@ Those same assemblers have the same but opposite lossage on cmov. = */ if (mode =3D=3D CCmode) suffix =3D fp ? "nbe" : "a"; - else if (mode =3D=3D CCCmode) - suffix =3D "b"; else gcc_unreachable (); break; >>From gcc-bugs-return-493922-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Mon Aug 03 09:47:42 2015 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 17744 invoked by alias); 3 Aug 2015 09:47:41 -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 17716 invoked by uid 48); 3 Aug 2015 09:47:38 -0000 From: "vries at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug other/67098] New: Documentation --with-stage1-ldflags does not mention default -static-libstdc++ -static-libgcc Date: Mon, 03 Aug 2015 09:47:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: other X-Bugzilla-Version: 6.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: trivial X-Bugzilla-Who: vries at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: 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 target_milestone 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: 2015-08/txt/msg00064.txt.bz2 Content-length: 1908 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D67098 Bug ID: 67098 Summary: Documentation --with-stage1-ldflags does not mention default -static-libstdc++ -static-libgcc Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: trivial Priority: P3 Component: other Assignee: unassigned at gcc dot gnu.org Reporter: vries at gcc dot gnu.org Target Milestone: --- https://gcc.gnu.org/install/configure.html: ... --with-stage1-ldflags=3Dflags This option may be used to set linker flags to be used when linking sta= ge 1 of GCC. These are also used when linking GCC if configured with --disable-bootstrap. By default no special flags are used.=20 ... But in configure we have: ... # Linker flags to use for stage1 or when not bootstrapping. # Check whether --with-stage1-ldflags was given. if test "${with_stage1_ldflags+set}" =3D set; then : withval=3D$with_stage1_ldflags; if test "$withval" =3D "no" -o "$withval"= =3D "yes"; then stage1_ldflags=3D else stage1_ldflags=3D$withval fi else stage1_ldflags=3D # In stage 1, default to linking libstdc++ and libgcc statically with GCC # if supported. But if the user explicitly specified the libraries to use, # trust that they are doing what they want. if test "$stage1_libs" =3D "" -a "$have_static_libs" =3D yes; then stage1_ldflags=3D"-static-libstdc++ -static-libgcc" fi fi ... So the doc should be something like: ... --with-stage1-ldflags=3Dflags This option may be used to set linker flags to be used when linking sta= ge 1 of GCC. These are also used when linking GCC if configured with --disable-bootstrap. If neither =E2=80=93with-stage1-libs nor =E2=80=93wit= h-host-libstdcxx is set to a value, then the default is =E2=80=98-static-libstdc++ -static-libg= cc=E2=80=99, if supported. ... >>From gcc-bugs-return-493923-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Mon Aug 03 09:59:23 2015 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 36109 invoked by alias); 3 Aug 2015 09:59:23 -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 33849 invoked by uid 48); 3 Aug 2015 09:59:19 -0000 From: "vries at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug other/67099] New: Documentation --with-host-libstdcxx is outdated, mentions ppl Date: Mon, 03 Aug 2015 09:59:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: other X-Bugzilla-Version: 6.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: trivial X-Bugzilla-Who: vries at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Resolution: 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 target_milestone 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: 2015-08/txt/msg00065.txt.bz2 Content-length: 1352 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D67099 Bug ID: 67099 Summary: Documentation --with-host-libstdcxx is outdated, mentions ppl Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: trivial Priority: P3 Component: other Assignee: unassigned at gcc dot gnu.org Reporter: vries at gcc dot gnu.org Target Milestone: --- https://gcc.gnu.org/install/configure.html: ... --with-host-libstdcxx=3Dlinker-args If you are linking with a static copy of PPL, you can use this option to specify how the linker should find the standard C++ library used internally= by PPL. Typical values of linker-args might be =E2=80=98-lstdc++=E2=80=99 or =E2=80=98-Wl,-Bstatic,-lstdc++,-Bdynamic -lm=E2=80=99. If you are linking w= ith a shared copy of PPL, you probably do not need this option; shared library dependencies will cause the linker to search for the standard C++ library automatically.=20 ... PPL is not supported anymore. The only function of with-host-libstdcxx seem= s to be to set other configure flags to a default. So a more accurate doc would = be: ... --with-host-libstdcxx=3Dlinker-args Sets default value for --with-stage1-libs and --with-boot-libs. Sets default value for --with-boot-ldflags to empty. ... >>From gcc-bugs-return-493924-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Mon Aug 03 10:04:35 2015 Return-Path: Delivered-To: listarch-gcc-bugs@gcc.gnu.org Received: (qmail 44584 invoked by alias); 3 Aug 2015 10:04:35 -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 44470 invoked by uid 55); 3 Aug 2015 10:04:31 -0000 From: "mikael at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug fortran/64921] [4.9/5/6 Regression] FAIL: gfortran.dg/class_allocate_18.f90 Date: Mon, 03 Aug 2015 10:04:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: fortran X-Bugzilla-Version: 5.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: mikael at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P4 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 4.9.4 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: 2015-08/txt/msg00066.txt.bz2 Content-length: 694 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64921 --- Comment #25 from Mikael Morin --- Author: mikael Date: Mon Aug 3 10:03:55 2015 New Revision: 226493 URL: https://gcc.gnu.org/viewcvs?rev=226493&root=gcc&view=rev Log: Fix random class_allocate_18.f90 failure PR fortran/64921 gcc/fortran/ * class.c (generate_finalization_wrapper): Set finalization procedure symbol's always_explicit attribute. gcc/testsuite/ * gfortran.dg/class_allocate_20.f90: New. Added: trunk/gcc/testsuite/gfortran.dg/class_allocate_20.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/class.c trunk/gcc/testsuite/ChangeLog