public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug other/103335] New: new test case gcc.dg/tree-ssa/modref-dse-4.c fails
@ 2021-11-19 17:37 seurer at gcc dot gnu.org
  2021-11-20 15:00 ` [Bug other/103335] " hjl.tools at gmail dot com
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: seurer at gcc dot gnu.org @ 2021-11-19 17:37 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 103335
           Summary: new test case gcc.dg/tree-ssa/modref-dse-4.c fails
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: other
          Assignee: unassigned at gcc dot gnu.org
          Reporter: seurer at gcc dot gnu.org
  Target Milestone: ---

g:6dc90c4dbb6f9589dea9c670c3468496bb207de5, r12-5324
make  -k check-gcc RUNTESTFLAGS="--target_board=unix'{-m32}'
tree-ssa.exp=gcc.dg/tree-ssa/modref-dse-4.c"
FAIL: gcc.dg/tree-ssa/modref-dse-4.c scan-tree-dump dse2 "Deleted dead store:
kill_me"
# of expected passes            1
# of unexpected failures        1

This fails for 32 bits on powerpc64 BE.  Works fine for 64 bits.

Perhaps related to pr103282?

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug other/103335] new test case gcc.dg/tree-ssa/modref-dse-4.c fails
  2021-11-19 17:37 [Bug other/103335] New: new test case gcc.dg/tree-ssa/modref-dse-4.c fails seurer at gcc dot gnu.org
@ 2021-11-20 15:00 ` hjl.tools at gmail dot com
  2021-11-22  9:12 ` [Bug testsuite/103335] [12 Regression] " rguenth at gcc dot gnu.org
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: hjl.tools at gmail dot com @ 2021-11-20 15:00 UTC (permalink / raw)
  To: gcc-bugs

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

H.J. Lu <hjl.tools at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|                            |2021-11-20
             Target|powerpc64-linux-gnu         |
     Ever confirmed|0                           |1
               Host|powerpc64-linux-gnu         |
              Build|powerpc64-linux-gnu         |
             Status|UNCONFIRMED                 |NEW

--- Comment #1 from H.J. Lu <hjl.tools at gmail dot com> ---
It also fails on Linux/x86 with

make check RUNTESTFLAGS="tree-ssa.exp=gcc.dg/tree-ssa/modref-dse-4.c
--target_board='unix{-m32\ -march=cascadelake}'"

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug testsuite/103335] [12 Regression] new test case gcc.dg/tree-ssa/modref-dse-4.c fails
  2021-11-19 17:37 [Bug other/103335] New: new test case gcc.dg/tree-ssa/modref-dse-4.c fails seurer at gcc dot gnu.org
  2021-11-20 15:00 ` [Bug other/103335] " hjl.tools at gmail dot com
@ 2021-11-22  9:12 ` rguenth at gcc dot gnu.org
  2021-11-22 14:11 ` hubicka at gcc dot gnu.org
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-11-22  9:12 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |missed-optimization
          Component|other                       |testsuite
   Target Milestone|---                         |12.0
            Summary|new test case               |[12 Regression] new test
                   |gcc.dg/tree-ssa/modref-dse- |case
                   |4.c fails                   |gcc.dg/tree-ssa/modref-dse-
                   |                            |4.c fails
           Priority|P3                          |P1

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
Odd ...

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug testsuite/103335] [12 Regression] new test case gcc.dg/tree-ssa/modref-dse-4.c fails
  2021-11-19 17:37 [Bug other/103335] New: new test case gcc.dg/tree-ssa/modref-dse-4.c fails seurer at gcc dot gnu.org
  2021-11-20 15:00 ` [Bug other/103335] " hjl.tools at gmail dot com
  2021-11-22  9:12 ` [Bug testsuite/103335] [12 Regression] " rguenth at gcc dot gnu.org
@ 2021-11-22 14:11 ` hubicka at gcc dot gnu.org
  2021-11-23  9:57 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: hubicka at gcc dot gnu.org @ 2021-11-22 14:11 UTC (permalink / raw)
  To: gcc-bugs

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

Jan Hubicka <hubicka at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Depends on|                            |103282
           Assignee|unassigned at gcc dot gnu.org      |hubicka at gcc dot gnu.org
             Status|NEW                         |ASSIGNED

--- Comment #3 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
This is very likely duplicate of PR103282.  Due to dse limitation the testcase
accidentally depends on SLP vectorization/store merging happening.  Patch is
posted to the other PR.


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
[Bug 103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug testsuite/103335] [12 Regression] new test case gcc.dg/tree-ssa/modref-dse-4.c fails
  2021-11-19 17:37 [Bug other/103335] New: new test case gcc.dg/tree-ssa/modref-dse-4.c fails seurer at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2021-11-22 14:11 ` hubicka at gcc dot gnu.org
@ 2021-11-23  9:57 ` cvs-commit at gcc dot gnu.org
  2021-11-23  9:59 ` hubicka at gcc dot gnu.org
  2021-11-26  0:41 ` hubicka at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-11-23  9:57 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jan Hubicka <hubicka@gcc.gnu.org>:

https://gcc.gnu.org/g:6033b27eade9c31c0be50657094c89ef9068892d

commit r12-5466-g6033b27eade9c31c0be50657094c89ef9068892d
Author: Jan Hubicka <jh@suse.cz>
Date:   Tue Nov 23 10:55:56 2021 +0100

    Improve bytewise DSE

    testcase modref-dse-4.c and modref-dse-5.c fails on some targets because
they
    depend on store merging.  What really happens is that without store merging
    we produce for kill_me combined write that is ao_ref with offset=0, size=32
    and max_size=96.  We have size != max_size becaue we do ont track the info
that
    all 3 writes must happen in a group and conider case only some of them are
done.

    This disables byte-wise DSE which checks that size == max_size.  This is
    completely unnecesary for store being proved to be dead or load being
checked
    to not read live bytes.  It is only necessary for kill store that is used
to
    prove that given store is dead.

    While looking into this I also noticed that we check that everything is
byte
    aligned.  This is also unnecessary and with access merging in modref may
more
    commonly fire on accesses that we could otherwise handle.

    This patch fixes both also also changes interface to normalize_ref that I
found
    confusing since it modifies the ref. Instead of that we have get_byte_range
    that is computing range in bytes (since that is what we need to maintain
the
    bitmap) and has additional parameter specifying if the store in question
should
    be turned into sub-range or super-range depending whether we compute range
    for kill or load.

    gcc/ChangeLog:

    2021-11-23  Jan Hubicka  <hubicka@ucw.cz>

            PR tree-optimization/103335
            * tree-ssa-dse.c (valid_ao_ref_for_dse): Rename to ...
            (valid_ao_ref_kill_for_dse): ... this; do not check that boundaries
            are divisible by BITS_PER_UNIT.
            (get_byte_aligned_range_containing_ref): New function.
            (get_byte_aligned_range_contained_in_ref): New function.
            (normalize_ref): Rename to ...
            (get_byte_range): ... this one; handle accesses not aligned to byte
            boundary; return range in bytes rater than updating ao_ref.
            (clear_live_bytes_for_ref): Take write ref by reference; simplify
using
            get_byte_access.
            (setup_live_bytes_from_ref): Likewise.
            (clear_bytes_written_by): Update.
            (live_bytes_read): Update.
            (dse_classify_store): Simplify tech before live_bytes_read checks.

    gcc/testsuite/ChangeLog:

    2021-11-23  Jan Hubicka  <hubicka@ucw.cz>

            * gcc.dg/tree-ssa/modref-dse-4.c: Update template.
            * gcc.dg/tree-ssa/modref-dse-5.c: Update template.

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug testsuite/103335] [12 Regression] new test case gcc.dg/tree-ssa/modref-dse-4.c fails
  2021-11-19 17:37 [Bug other/103335] New: new test case gcc.dg/tree-ssa/modref-dse-4.c fails seurer at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2021-11-23  9:57 ` cvs-commit at gcc dot gnu.org
@ 2021-11-23  9:59 ` hubicka at gcc dot gnu.org
  2021-11-26  0:41 ` hubicka at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: hubicka at gcc dot gnu.org @ 2021-11-23  9:59 UTC (permalink / raw)
  To: gcc-bugs

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

Jan Hubicka <hubicka at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #5 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
fixed by g:6033b27eade9c31c0be50657094c89ef9068892d

^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug testsuite/103335] [12 Regression] new test case gcc.dg/tree-ssa/modref-dse-4.c fails
  2021-11-19 17:37 [Bug other/103335] New: new test case gcc.dg/tree-ssa/modref-dse-4.c fails seurer at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2021-11-23  9:59 ` hubicka at gcc dot gnu.org
@ 2021-11-26  0:41 ` hubicka at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: hubicka at gcc dot gnu.org @ 2021-11-26  0:41 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103335
Bug 103335 depends on bug 103282, which changed state.

Bug 103282 Summary: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|REOPENED                    |RESOLVED
         Resolution|---                         |FIXED

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-11-26  0:41 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-19 17:37 [Bug other/103335] New: new test case gcc.dg/tree-ssa/modref-dse-4.c fails seurer at gcc dot gnu.org
2021-11-20 15:00 ` [Bug other/103335] " hjl.tools at gmail dot com
2021-11-22  9:12 ` [Bug testsuite/103335] [12 Regression] " rguenth at gcc dot gnu.org
2021-11-22 14:11 ` hubicka at gcc dot gnu.org
2021-11-23  9:57 ` cvs-commit at gcc dot gnu.org
2021-11-23  9:59 ` hubicka at gcc dot gnu.org
2021-11-26  0:41 ` hubicka at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).