Bug 102944 - Many gcc.dg/Wstringop-overflow-*.c failures
Summary: Many gcc.dg/Wstringop-overflow-*.c failures
Status: RESOLVED FIXED
Alias: None
Product: gcc
Classification: Unclassified
Component: testsuite (show other bugs)
Version: 12.0
: P3 normal
Target Milestone: 12.0
Assignee: Not yet assigned to anyone
URL:
Keywords: diagnostic
Depends on:
Blocks: Wstringop-overflow
  Show dependency treegraph
 
Reported: 2021-10-26 14:00 UTC by Rainer Orth
Modified: 2021-12-20 08:14 UTC (History)
3 users (show)

See Also:
Host:
Target: sparc-sun-solaris2.11, m68k-unknown-linux-gnu, moxie-unknown-elf, aarch64-suse-linux-gnu, mipsel-mti-elf, arm-none-linux-gnueabihf
Build:
Known to work:
Known to fail:
Last reconfirmed: 2021-12-16 00:00:00


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Rainer Orth 2021-10-26 14:00:11 UTC
Between 20211019 (ff0eec94e87dfb7dc387f120ca5ade2707aecf50) and 20211020 (d98626bf451dea6a28a42d953f7d0bd7659ad4d5),
quite a number of testsuite failures occured.  I'm seeing them on Solaris/SPARC
(32 and 64-bit), but gcc-testresults show reports for many others:

+FAIL: gcc.dg/Warray-parameter-3.c pr102706 (test for warnings, line 80)
+FAIL: gcc.dg/Wstringop-overflow-14.c pr102706 (test for warnings, line 39)
+XPASS: gcc.dg/Wstringop-overflow-14.c pr102706 (test for warnings, line 40)
+FAIL: gcc.dg/Wstringop-overflow-68.c pr101475 (test for warnings, line 68)
+FAIL: gcc.dg/Wstringop-overflow-68.c pr101475 (test for warnings, line 69)
+XPASS: gcc.dg/Wstringop-overflow-68.c pr101475 (test for warnings, line 70)
+XPASS: gcc.dg/Wstringop-overflow-68.c pr101475 (test for warnings, line 71)
+XPASS: gcc.dg/Wstringop-overflow-68.c pr101475 (test for warnings, line 72)
+XPASS: gcc.dg/Wstringop-overflow-76.c note (test for warnings, line 107)
+XPASS: gcc.dg/Wstringop-overflow-76.c note (test for warnings, line 86)
+XPASS: gcc.dg/Wstringop-overflow-76.c pr102697 (test for warnings, line 119)
+XPASS: gcc.dg/Wstringop-overflow-76.c pr102697 (test for warnings, line 99)
+FAIL: gcc.dg/Wstringop-overflow-76.c pr102706 (test for warnings, line 30)
+XPASS: gcc.dg/Wstringop-overflow-76.c pr102706 (test for warnings, line 33)
+FAIL: gcc.dg/Wstringop-overflow-76.c pr102706 (test for warnings, line 47)
+XPASS: gcc.dg/Wstringop-overflow-76.c pr102706 (test for warnings, line 50)

AFAICS they are due to

commit 3c8d8c0be95e99dc0cba7f6fad2429243582119f
Author: liuhongt <hongtao.liu@intel.com>
Date:   Thu Oct 14 09:31:03 2021 +0800

    Adjust testcase for O2 vectorization.
Comment 1 Hongtao.liu 2021-10-28 01:19:31 UTC
Mine.
Comment 2 GCC Commits 2021-11-02 08:41:41 UTC
The master branch has been updated by hongtao Liu <liuhongt@gcc.gnu.org>:

https://gcc.gnu.org/g:2e560abff4294639a0fcf666994c30fb2f00a324

commit r12-4839-g2e560abff4294639a0fcf666994c30fb2f00a324
Author: liuhongt <hongtao.liu@intel.com>
Date:   Thu Oct 28 14:28:29 2021 +0800

    Adjust testcase for O2 vect.
    
    Adjust code in check_vect_slp_store_usage to make it an exact
    pattern match of the corresponding testcases.
    These new target/xfail selectors are added as a temporary solution,
    and should be removed after real issue is fixed for Wstringop-overflow.
    
    gcc/ChangeLog:
    
            * doc/sourcebuild.texi (vect_slp_v4qi_store_unalign,
            vect_slp_v2hi_store_unalign, vect_slp_v4hi_store_unalign,
            vect_slp_v4si_store_unalign): Document efficient target.
            (vect_slp_v4qi_store_unalign_1, vect_slp_v8qi_store_unalign_1,
            vect_slp_v16qi_store_unalign_1): Ditto.
            (vect_slp_v2hi_store_align,vect_slp_v2qi_store_align,
            vect_slp_v2si_store_align, vect_slp_v4qi_store_align): Ditto.
            (struct_4char_block_move, struct_8char_block_move,
            struct_16char_block_move): Ditto.
    
    gcc/testsuite/ChangeLog:
    
            PR testsuite/102944
            * c-c++-common/Wstringop-overflow-2.c: Adjust target/xfail
            selector.
            * gcc.dg/Warray-bounds-48.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/Wzero-length-array-bounds-2.c: Ditto.
            * lib/target-supports.exp (vect_slp_v4qi_store_unalign): New
            efficient target.
            (vect_slp_v4qi_store_unalign_1): Ditto.
            (struct_4char_block_move): Ditto.
            (struct_8char_block_move): Ditto.
            (stryct_16char_block_move): Ditto.
            (vect_slp_v2hi_store_align): Ditto.
            (vect_slp_v2qi_store): Rename to ..
            (vect_slp_v2qi_store_align): .. this.
            (vect_slp_v4qi_store): Rename to ..
            (vect_slp_v4qi_store_align): .. This.
            (vect_slp_v8qi_store): Rename to ..
            (vect_slp_v8qi_store_unalign_1): .. This.
            (vect_slp_v16qi_store): Rename to ..
            (vect_slp_v16qi_store_unalign_1): .. This.
            (vect_slp_v2hi_store): Rename to ..
            (vect_slp_v2hi_store_unalign): .. This.
            (vect_slp_v4hi_store): Rename to ..
            (vect_slp_v4hi_store_unalign): This.
            (vect_slp_v2si_store): Rename to ..
            (vect_slp_v2si_store_align): .. This.
            (vect_slp_v4si_store): Rename to ..
            (vect_slp_v4si_store_unalign): Ditto.
            (check_vect_slp_aligned_store_usage): Rename to ..
            (check_vect_slp_store_usage): .. this and adjust code to make
            it an exact pattern match of corresponding testcase.
Comment 3 ro@CeBiTec.Uni-Bielefeld.DE 2021-11-03 13:14:38 UTC
> --- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
> The master branch has been updated by hongtao Liu <liuhongt@gcc.gnu.org>:
>
> https://gcc.gnu.org/g:2e560abff4294639a0fcf666994c30fb2f00a324
>
> commit r12-4839-g2e560abff4294639a0fcf666994c30fb2f00a324
> Author: liuhongt <hongtao.liu@intel.com>
> Date:   Thu Oct 28 14:28:29 2021 +0800
>
>     Adjust testcase for O2 vect.

This patch seems to have caused

+FAIL: gcc.dg/Warray-bounds-48.c pr102706 (test for warnings, line 133)
+FAIL: gcc.dg/Warray-bounds-48.c pr102706 (test for warnings, line 33)

I'm seeing it on 64-bit sparc, and there are also reports for
s390x-ibm-linux-gnu and m68k-unknown-linux-gnu.  It may be a
coincidance, but those are all big-endian targets.
Comment 4 Hongtao.liu 2021-11-04 05:31:22 UTC
> I'm seeing it on 64-bit sparc, and there are also reports for
> s390x-ibm-linux-gnu and m68k-unknown-linux-gnu.  It may be a
> coincidance, but those are all big-endian targets.
There seems to be a miss optimization issue, open pr103076 to track that.
If the miss optimization isssue is fixed in vectorizer, those testcase would pass, if not, i'll adjust my patch.
Comment 5 Martin Sebor 2021-12-16 16:28:04 UTC
I don't see any of the FAILs or XFAILs listed in comment #0 with cross compilers for any of the Targets.  Can this report be resolved?

I do see some unexpected failures with an m68k-unknown-linux-gnu cross in other tests.  I opened pr103751 for those.
Comment 6 Hongtao.liu 2021-12-17 01:24:42 UTC
(In reply to Martin Sebor from comment #5)
> I don't see any of the FAILs or XFAILs listed in comment #0 with cross
> compilers for any of the Targets.  Can this report be resolved?
I thinks so, now we only have
+FAIL: gcc.dg/Warray-bounds-48.c pr102706 (test for warnings, line 133)
+FAIL: gcc.dg/Warray-bounds-48.c pr102706 (test for warnings, line 33)
on sparc, s390x-ibm-linux-gnu and m68k-unknown-linux-gnu, and i've opened PR for that.
> 
> I do see some unexpected failures with an m68k-unknown-linux-gnu cross in
> other tests.  I opened pr103751 for those.
Comment 7 ro@CeBiTec.Uni-Bielefeld.DE 2021-12-17 12:47:23 UTC
> --- Comment #5 from Martin Sebor <msebor at gcc dot gnu.org> ---
> I don't see any of the FAILs or XFAILs listed in comment #0 with cross
> compilers for any of the Targets.  Can this report be resolved?

The failures last occured on sparc*-sun-solaris2.11 on 20211101 and on
i386-pc-solaris2.11 on 20210716, so for my targets the issue is fixed
indeed.
Comment 8 Martin Sebor 2021-12-17 15:26:49 UTC
Thanks.  Resolving as fixed then.