[Bug tree-optimization/106458] [12/13 Regression] glibc's malloc/tst-scratch_buffer.c test is miscompiled with gcc-12

danglin at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Aug 4 14:14:10 GMT 2022


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106458

John David Anglin <danglin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|target                      |tree-optimization

--- Comment #8 from John David Anglin <danglin at gcc dot gnu.org> ---
This bug was introduced in the following commit:

dave@atlas:~/gnu/gcc/gcc$ git bisect bad
Bisecting: 0 revisions left to test after this (roughly 0 steps)
[2b8453c401b699ed93c085d0413ab4b5030bcdb8] Enable auto-vectorization at O2 with
very-cheap cost model.
dave@atlas:~/gnu/gcc/gcc$ git log
commit 2b8453c401b699ed93c085d0413ab4b5030bcdb8 (HEAD)
Author: liuhongt <hongtao.liu@intel.com>
Date:   Mon Sep 6 13:48:49 2021 +0800

    Enable auto-vectorization at O2 with very-cheap cost model.

    gcc/ChangeLog:

            * common.opt (ftree-vectorize): Add Var(flag_tree_vectorize).
            * doc/invoke.texi (Options That Control Optimization): Update
            documents.
            * opts.c (default_options_table): Enable auto-vectorization at
            O2 with very-cheap cost model.
            (finish_options): Use cheap cost model for
            explicit -ftree{,-loop}-vectorize.

    gcc/testsuite/ChangeLog:

            * c-c++-common/Wstringop-overflow-2.c: Adjust testcase.
            * g++.dg/tree-ssa/pr81408.C: Ditto.
            * g++.dg/warn/Wuninitialized-13.C: Ditto.
            * gcc.dg/Warray-bounds-51.c: Ditto.
            * gcc.dg/Warray-parameter-3.c: Ditto.
dave@atlas:~/gnu/gcc/gcc$ git bisect bad
2b8453c401b699ed93c085d0413ab4b5030bcdb8 is the first bad commit
commit 2b8453c401b699ed93c085d0413ab4b5030bcdb8
Author: liuhongt <hongtao.liu@intel.com>
Date:   Mon Sep 6 13:48:49 2021 +0800

    Enable auto-vectorization at O2 with very-cheap cost model.

    gcc/ChangeLog:

            * common.opt (ftree-vectorize): Add Var(flag_tree_vectorize).
            * doc/invoke.texi (Options That Control Optimization): Update
            documents.
            * opts.c (default_options_table): Enable auto-vectorization at
            O2 with very-cheap cost model.
            (finish_options): Use cheap cost model for
            explicit -ftree{,-loop}-vectorize.

    gcc/testsuite/ChangeLog:

            * c-c++-common/Wstringop-overflow-2.c: Adjust testcase.
            * g++.dg/tree-ssa/pr81408.C: Ditto.
            * g++.dg/warn/Wuninitialized-13.C: Ditto.
            * gcc.dg/Warray-bounds-51.c: Ditto.
            * gcc.dg/Warray-parameter-3.c: Ditto.
            * gcc.dg/Wstringop-overflow-14.c: Ditto.
            * gcc.dg/Wstringop-overflow-21.c: Ditto.
            * gcc.dg/Wstringop-overflow-68.c: Ditto.
            * gcc.dg/Wstringop-overflow-76.c: Ditto.
            * gcc.dg/gomp/pr46032-2.c: Ditto.
            * gcc.dg/gomp/pr46032-3.c: Ditto.
            * gcc.dg/gomp/simd-2.c: Ditto.
            * gcc.dg/gomp/simd-3.c: Ditto.
            * gcc.dg/graphite/fuse-1.c: Ditto.
            * gcc.dg/pr67089-6.c: Ditto.
            * gcc.dg/pr82929-2.c: Ditto.
            * gcc.dg/pr82929.c: Ditto.
            * gcc.dg/store_merging_1.c: Ditto.
            * gcc.dg/store_merging_11.c: Ditto.
            * gcc.dg/store_merging_13.c: Ditto.
            * gcc.dg/store_merging_15.c: Ditto.
            * gcc.dg/store_merging_16.c: Ditto.
            * gcc.dg/store_merging_19.c: Ditto.
            * gcc.dg/store_merging_24.c: Ditto.
            * gcc.dg/store_merging_25.c: Ditto.
            * gcc.dg/store_merging_28.c: Ditto.
            * gcc.dg/store_merging_30.c: Ditto.
            * gcc.dg/store_merging_5.c: Ditto.
            * gcc.dg/store_merging_7.c: Ditto.
            * gcc.dg/store_merging_8.c: Ditto.
            * gcc.dg/strlenopt-85.c: Ditto.
            * gcc.dg/tree-ssa/dump-6.c: Ditto.
            * gcc.dg/tree-ssa/pr19210-1.c: Ditto.
            * gcc.dg/tree-ssa/pr47059.c: Ditto.
            * gcc.dg/tree-ssa/pr86017.c: Ditto.
            * gcc.dg/tree-ssa/pr91482.c: Ditto.
            * gcc.dg/tree-ssa/predcom-1.c: Ditto.
            * gcc.dg/tree-ssa/predcom-dse-3.c: Ditto.
            * gcc.dg/tree-ssa/prefetch-3.c: Ditto.
            * gcc.dg/tree-ssa/prefetch-6.c: Ditto.
            * gcc.dg/tree-ssa/prefetch-8.c: Ditto.
            * gcc.dg/tree-ssa/prefetch-9.c: Ditto.
            * gcc.dg/tree-ssa/ssa-dse-18.c: Ditto.
            * gcc.dg/tree-ssa/ssa-dse-19.c: Ditto.
            * gcc.dg/uninit-40.c: Ditto.
            * gcc.dg/unroll-7.c: Ditto.
            * gcc.misc-tests/help.exp: Ditto.
            * gcc.target/i386/avx512vpopcntdqvl-vpopcntd-1.c: Ditto.
            * gcc.target/i386/pr34012.c: Ditto.
            * gcc.target/i386/pr49781-1.c: Ditto.
            * gcc.target/i386/pr95798-1.c: Ditto.
            * gcc.target/i386/pr95798-2.c: Ditto.
            * gfortran.dg/pr77498.f: Ditto.

 gcc/common.opt                                       |  2 +-
 gcc/doc/invoke.texi                                  |  8 ++++----
 gcc/opts.c                                           | 16 +++++++++++++---
 gcc/testsuite/c-c++-common/Wstringop-overflow-2.c    | 20 ++++++++++----------
 gcc/testsuite/g++.dg/tree-ssa/pr81408.C              |  2 +-
 gcc/testsuite/g++.dg/warn/Wuninitialized-13.C        |  2 +-
 gcc/testsuite/gcc.dg/Warray-bounds-51.c              |  2 +-
 gcc/testsuite/gcc.dg/Warray-parameter-3.c            |  4 ++--
 gcc/testsuite/gcc.dg/Wstringop-overflow-14.c         |  4 ++--
 gcc/testsuite/gcc.dg/Wstringop-overflow-21.c         |  8 ++++----
 gcc/testsuite/gcc.dg/Wstringop-overflow-68.c         | 10 +++++-----
 gcc/testsuite/gcc.dg/Wstringop-overflow-76.c         | 20 ++++++++++----------
 gcc/testsuite/gcc.dg/gomp/pr46032-2.c                |  2 +-
 gcc/testsuite/gcc.dg/gomp/pr46032-3.c                |  2 +-
 gcc/testsuite/gcc.dg/gomp/simd-2.c                   |  2 +-
 gcc/testsuite/gcc.dg/gomp/simd-3.c                   |  2 +-
 gcc/testsuite/gcc.dg/graphite/fuse-1.c               |  2 +-
 gcc/testsuite/gcc.dg/pr67089-6.c                     |  2 +-
 gcc/testsuite/gcc.dg/pr82929-2.c                     |  2 +-
 gcc/testsuite/gcc.dg/pr82929.c                       |  2 +-
 gcc/testsuite/gcc.dg/store_merging_1.c               |  2 +-
 gcc/testsuite/gcc.dg/store_merging_11.c              |  2 +-
 gcc/testsuite/gcc.dg/store_merging_13.c              |  2 +-
 gcc/testsuite/gcc.dg/store_merging_15.c              |  2 +-
 gcc/testsuite/gcc.dg/store_merging_16.c              |  2 +-
 gcc/testsuite/gcc.dg/store_merging_19.c              |  2 +-
 gcc/testsuite/gcc.dg/store_merging_24.c              |  2 +-
 gcc/testsuite/gcc.dg/store_merging_25.c              |  2 +-
 gcc/testsuite/gcc.dg/store_merging_28.c              |  2 +-
 gcc/testsuite/gcc.dg/store_merging_30.c              |  2 +-
 gcc/testsuite/gcc.dg/store_merging_5.c               |  2 +-
 gcc/testsuite/gcc.dg/store_merging_7.c               |  2 +-
 gcc/testsuite/gcc.dg/store_merging_8.c               |  2 +-
 gcc/testsuite/gcc.dg/strlenopt-85.c                  |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/dump-6.c               |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/pr19210-1.c            |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/pr47059.c              |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/pr86017.c              |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/pr91482.c              |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/predcom-1.c            |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/predcom-dse-3.c        |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/prefetch-3.c           |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/prefetch-6.c           |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/prefetch-8.c           |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/prefetch-9.c           |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-18.c           |  2 +-
 gcc/testsuite/gcc.dg/tree-ssa/ssa-dse-19.c           |  2 +-
 gcc/testsuite/gcc.dg/uninit-40.c                     |  2 +-
 gcc/testsuite/gcc.dg/unroll-7.c                      |  2 +-
 gcc/testsuite/gcc.misc-tests/help.exp                |  2 +-
 .../gcc.target/i386/avx512vpopcntdqvl-vpopcntd-1.c   |  2 +-
 gcc/testsuite/gcc.target/i386/pr34012.c              |  2 +-
 gcc/testsuite/gcc.target/i386/pr49781-1.c            |  2 +-
 gcc/testsuite/gcc.target/i386/pr95798-1.c            |  2 +-
 gcc/testsuite/gcc.target/i386/pr95798-2.c            |  2 +-
 gcc/testsuite/gfortran.dg/pr77498.f                  |  2 +-
 56 files changed, 98 insertions(+), 88 deletions(-)


More information about the Gcc-bugs mailing list