Summary: | [4.8 Regression] Incorrect strlen optimization after complete unroll | ||
---|---|---|---|
Product: | gcc | Reporter: | Teresa Johnson <tejohnson> |
Component: | tree-optimization | Assignee: | Not yet assigned to anyone <unassigned> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | jakub |
Priority: | P3 | Keywords: | wrong-code |
Version: | 5.0 | ||
Target Milestone: | 4.8.4 | ||
Host: | Target: | ||
Build: | Known to work: | 4.9.3, 5.0 | |
Known to fail: | Last reconfirmed: | 2014-11-13 00:00:00 |
Description
Teresa Johnson
2014-11-12 22:00:22 UTC
Google ref b/18344370 Confirmed. Seems to be an opportunity to remove the clobber to be able to remove a dead store... ;) Started with r181172. I'll take a look during stage3. On Thu, Nov 13, 2014 at 1:27 AM, jakub at gcc dot gnu.org <gcc-bugzilla@gcc.gnu.org> wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63841 > > Jakub Jelinek <jakub at gcc dot gnu.org> changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > Status|NEW |ASSIGNED > Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org > Target Milestone|--- |4.8.4 > Summary|Incorrect strlen |[4.8/4.9/5 Regression] > |optimization after complete |Incorrect strlen > |unroll |optimization after complete > | |unroll > > --- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- > Started with r181172. I'll take a look during stage3. I have a fix under review: https://gcc.gnu.org/ml/gcc-patches/2014-11/msg01481.html Teresa > > -- > You are receiving this mail because: > You are on the CC list for the bug. > You reported the bug. Author: tejohnson Date: Thu Nov 13 15:36:48 2014 New Revision: 217505 URL: https://gcc.gnu.org/viewcvs?rev=217505&root=gcc&view=rev Log: 2014-11-13 Teresa Johnson <tejohnson@google.com> gcc: PR tree-optimization/63841 * tree.c (initializer_zerop): A clobber does not zero initialize. gcc/testsuite: PR tree-optimization/63841 * g++.dg/tree-ssa/pr63841.C: New test. Added: trunk/gcc/testsuite/g++.dg/tree-ssa/pr63841.C Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree.c Author: tejohnson Date: Thu Nov 13 21:51:11 2014 New Revision: 217522 URL: https://gcc.gnu.org/viewcvs?rev=217522&root=gcc&view=rev Log: 2014-11-13 Teresa Johnson <tejohnson@google.com> gcc: PR tree-optimization/63841 * tree-ssa-strlen.c (strlen_optimize_stmt): Ignore clobbers. 2014-11-13 Teresa Johnson <tejohnson@google.com> gcc/testsuite: PR tree-optimization/63841 * testsuite/g++.dg/tree-ssa/pr63841.C: New test. Added: branches/gcc-4_9-branch/gcc/testsuite/g++.dg/tree-ssa/pr63841.C Modified: branches/gcc-4_9-branch/gcc/ChangeLog branches/gcc-4_9-branch/gcc/testsuite/ChangeLog branches/gcc-4_9-branch/gcc/tree-ssa-strlen.c Author: tejohnson Date: Fri Nov 14 06:35:35 2014 New Revision: 217537 URL: https://gcc.gnu.org/viewcvs?rev=217537&root=gcc&view=rev Log: 2014-11-13 Teresa Johnson <tejohnson@google.com> gcc: PR tree-optimization/63841 * tree-ssa-strlen.c (strlen_optimize_stmt): Ignore clobbers. 2014-11-13 Teresa Johnson <tejohnson@google.com> gcc/testsuite: PR tree-optimization/63841 * g++.dg/tree-ssa/pr63841.C: Remove prints, use abort. Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/g++.dg/tree-ssa/pr63841.C trunk/gcc/tree-ssa-strlen.c Fixed by Teresa. Ah, though not on the 4.8 branch. Missed that one, I will backport to 4.8. Teresa On Mon, Nov 17, 2014 at 1:17 PM, jakub at gcc dot gnu.org <gcc-bugzilla@gcc.gnu.org> wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63841 > > Jakub Jelinek <jakub at gcc dot gnu.org> changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > Status|RESOLVED |REOPENED > Known to work| |4.9.3, 5.0 > Resolution|FIXED |--- > Summary|[4.8/4.9/5 Regression] |[4.8 Regression] Incorrect > |Incorrect strlen |strlen optimization after > |optimization after complete |complete unroll > |unroll | > > --- Comment #9 from Jakub Jelinek <jakub at gcc dot gnu.org> --- > Ah, though not on the 4.8 branch. > > -- > You are receiving this mail because: > You are on the CC list for the bug. > You reported the bug. Author: tejohnson Date: Tue Nov 18 14:20:58 2014 New Revision: 217715 URL: https://gcc.gnu.org/viewcvs?rev=217715&root=gcc&view=rev Log: 2014-11-18 Teresa Johnson <tejohnson@google.com> Backport from mainline and gcc-4_9 branch. 2014-11-13 Teresa Johnson <tejohnson@google.com> PR tree-optimization/63841 * tree-ssa-strlen.c (strlen_optimize_stmt): Ignore clobbers. 2014-11-13 Teresa Johnson <tejohnson@google.com> PR tree-optimization/63841 * testsuite/g++.dg/tree-ssa/pr63841.C: New test. Added: branches/gcc-4_8-branch/gcc/testsuite/g++.dg/tree-ssa/pr63841.C Modified: branches/gcc-4_8-branch/gcc/ChangeLog branches/gcc-4_8-branch/gcc/testsuite/ChangeLog branches/gcc-4_8-branch/gcc/tree-ssa-strlen.c Author: tejohnson Date: Thu Nov 20 14:29:41 2014 New Revision: 217858 URL: https://gcc.gnu.org/viewcvs?rev=217858&root=gcc&view=rev Log: 2014-11-20 Teresa Johnson <tejohnson@google.com> Backport r217522 from gcc-4_9 for Google ref b/18344370 and b/18455179. 2014-11-13 Teresa Johnson <tejohnson@google.com> PR tree-optimization/63841 * tree-ssa-strlen.c (strlen_optimize_stmt): Ignore clobbers. 2014-11-13 Teresa Johnson <tejohnson@google.com> PR tree-optimization/63841 * testsuite/g++.dg/tree-ssa/pr63841.C: New test. Added: branches/google/gcc-4_9/gcc/testsuite/g++.dg/tree-ssa/pr63841.C Modified: branches/google/gcc-4_9/gcc/tree-ssa-strlen.c Fixed. |