public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
@ 2021-11-16 18:32 seurer at gcc dot gnu.org
2021-11-16 19:25 ` [Bug testsuite/103282] " hjl.tools at gmail dot com
` (10 more replies)
0 siblings, 11 replies; 12+ messages in thread
From: seurer at gcc dot gnu.org @ 2021-11-16 18:32 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
Bug ID: 103282
Summary: New test case gcc.dg/tree-ssa/modref-dse-5.c in
r12-5292 fails
Product: gcc
Version: 12.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: testsuite
Assignee: unassigned at gcc dot gnu.org
Reporter: seurer at gcc dot gnu.org
Target Milestone: ---
g:e69b7c5779863469479698f863ab25e0d9b4586e, r12-5292
make -k check-gcc RUNTESTFLAGS="tree-ssa.exp=gcc.dg/tree-ssa/modref-dse-5.c"
FAIL: gcc.dg/tree-ssa/modref-dse-5.c scan-tree-dump dse2 "Deleted dead store:
wrap"
# of expected passes 1
# of unexpected failures 1
commit e69b7c5779863469479698f863ab25e0d9b4586e (HEAD, refs/bisect/bad)
Author: Jan Hubicka <jh@suse.cz>
Date: Tue Nov 16 09:15:39 2021 +0100
Fix uninitialized access in merge_call_side_effects
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug testsuite/103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
@ 2021-11-16 19:25 ` hjl.tools at gmail dot com
2021-11-16 22:03 ` hubicka at gcc dot gnu.org
` (9 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hjl.tools at gmail dot com @ 2021-11-16 19:25 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
H.J. Lu <hjl.tools at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Build|powerpc64-linux-gnu, |
|powerpc64le-linux-gnu |
Last reconfirmed| |2021-11-16
Status|UNCONFIRMED |NEW
Target|powerpc64-linux-gnu, |
|powerpc64le-linux-gnu |
CC| |hjl.tools at gmail dot com
Ever confirmed|0 |1
Host|powerpc64-linux-gnu, |
|powerpc64le-linux-gnu |
--- Comment #1 from H.J. Lu <hjl.tools at gmail dot com> ---
I also saw it on Linux/x86.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug testsuite/103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
2021-11-16 19:25 ` [Bug testsuite/103282] " hjl.tools at gmail dot com
@ 2021-11-16 22:03 ` hubicka at gcc dot gnu.org
2021-11-18 19:24 ` seurer at gcc dot gnu.org
` (8 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu.org @ 2021-11-16 22:03 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
Jan Hubicka <hubicka at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution|--- |FIXED
--- Comment #2 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
Sorry, I pushed in patches in wrong order and modref-dse-5.c testcase requires
the bytewise DSE patch (adding modref-dse-4.c) already in. I pushed it now and
the failure is gone.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug testsuite/103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
2021-11-16 19:25 ` [Bug testsuite/103282] " hjl.tools at gmail dot com
2021-11-16 22:03 ` hubicka at gcc dot gnu.org
@ 2021-11-18 19:24 ` seurer at gcc dot gnu.org
2021-11-19 6:54 ` pinskia at gcc dot gnu.org
` (7 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: seurer at gcc dot gnu.org @ 2021-11-18 19:24 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
seurer at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|FIXED |---
Status|RESOLVED |REOPENED
--- Comment #3 from seurer at gcc dot gnu.org ---
g:6f4ac4f81f89caac7e74127ed2e6db6bbb3d7426, r12-5385
make -k check-gcc RUNTESTFLAGS="--target_board=unix'{-m32,-m64}'
tree-ssa.exp=gcc.dg/tree-ssa/modref-dse-5.c"
FAIL: gcc.dg/tree-ssa/modref-dse-5.c scan-tree-dump dse2 "Deleted dead store:
wrap"
I am still seeing this on current trunk on big endian systems (power 7 and
power 8).
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug testsuite/103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
` (2 preceding siblings ...)
2021-11-18 19:24 ` seurer at gcc dot gnu.org
@ 2021-11-19 6:54 ` pinskia at gcc dot gnu.org
2021-11-19 6:57 ` pinskia at gcc dot gnu.org
` (6 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-11-19 6:54 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Worked for me as of r12-5390-gd3152981f71eef1
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug testsuite/103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
` (3 preceding siblings ...)
2021-11-19 6:54 ` pinskia at gcc dot gnu.org
@ 2021-11-19 6:57 ` pinskia at gcc dot gnu.org
2021-11-19 11:41 ` hubicka at gcc dot gnu.org
` (5 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-11-19 6:57 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #4)
> Worked for me as of r12-5390-gd3152981f71eef1
I should say this was on x86_64.
And passing as of r12-5363 on aarch64-linux-gnu.
Is it failing for 32bit or 64bit or both
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug testsuite/103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
` (4 preceding siblings ...)
2021-11-19 6:57 ` pinskia at gcc dot gnu.org
@ 2021-11-19 11:41 ` hubicka at gcc dot gnu.org
2021-11-19 16:13 ` seurer at gcc dot gnu.org
` (4 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu.org @ 2021-11-19 11:41 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
Jan Hubicka <hubicka at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Assignee|unassigned at gcc dot gnu.org |hubicka at gcc dot gnu.org
--- Comment #6 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
I will take a look why endiantiy/type sizes matters here. I think it should
not.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug testsuite/103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
` (5 preceding siblings ...)
2021-11-19 11:41 ` hubicka at gcc dot gnu.org
@ 2021-11-19 16:13 ` seurer at gcc dot gnu.org
2021-11-22 9:38 ` hubicka at gcc dot gnu.org
` (3 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: seurer at gcc dot gnu.org @ 2021-11-19 16:13 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
--- Comment #7 from seurer at gcc dot gnu.org ---
Looks like it is 32 bit only.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug testsuite/103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
` (6 preceding siblings ...)
2021-11-19 16:13 ` seurer at gcc dot gnu.org
@ 2021-11-22 9:38 ` hubicka at gcc dot gnu.org
2021-11-22 10:55 ` hubicka at gcc dot gnu.org
` (2 subsequent siblings)
10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu.org @ 2021-11-22 9:38 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
--- Comment #8 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
OK, the difference seems to be that on x86_64 even with -m32 we vectorize
kill_me:
__attribute__((noinline))
void kill_me (struct a * a)
{
int * vectp.6;
vector(2) int * vectp_a.5;
<bb 2> [local count: 1073741824]:
MEM <vector(2) int> [(int *)a_2(D)] = { 0, 0 };
a_2(D)->c = 0;
return;
}
which leads different modref summary:
Limits: 32 bases, 16 refs
Base 0: alias set 1
Ref 0: alias set 1
access: Parm 0 param offset:0 offset:0 size:64 max_size:64
Base 1: alias set 2
Ref 0: alias set 1
access: Parm 0 param offset:0 offset:64 size:32 max_size:32
kills:
Parm 0 param offset:0 offset:0 size:96 max_size:96
Try dse
parm 0 flags: no_indirect_clobber no_direct_escape no_indirect_escape
no_direct_read no_indirect_read
compared to:
loads:
Limits: 32 bases, 16 refs
stores:
Limits: 32 bases, 16 refs
Base 0: alias set 2
Ref 0: alias set 1
access: Parm 0 param offset:0 offset:0 size:32 max_size:96
kills:
Parm 0 param offset:0 offset:0 size:96 max_size:96
Try dse
parm 0 flags: no_indirect_clobber no_direct_escape no_indirect_escape
no_direct_read no_indirect_read
Both summaries are correct and I wonder why bytewise DSE does not like the
second.
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug testsuite/103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
` (7 preceding siblings ...)
2021-11-22 9:38 ` hubicka at gcc dot gnu.org
@ 2021-11-22 10:55 ` hubicka at gcc dot gnu.org
2021-11-23 10:00 ` hubicka at gcc dot gnu.org
2021-11-26 0:41 ` hubicka at gcc dot gnu.org
10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu.org @ 2021-11-22 10:55 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
--- Comment #9 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
So the problem is that dse is giving up on determining if partial stores was
killed. This is completely unnecesary: one can kill partial store by a full
store.
diff --git a/gcc/tree-ssa-dse.c b/gcc/tree-ssa-dse.c
index 9531d892f76..c07782d680b 100644
--- a/gcc/tree-ssa-dse.c
+++ b/gcc/tree-ssa-dse.c
@@ -197,11 +197,11 @@ normalize_ref (ao_ref *copy, ao_ref *ref)
}
poly_int64 diff = copy->offset - ref->offset;
- if (maybe_le (ref->size, diff))
+ if (maybe_le (ref->max_size, diff))
return false;
/* If COPY extends beyond REF, chop off its size appropriately. */
- poly_int64 limit = ref->size - diff;
+ poly_int64 limit = ref->max_size - diff;
if (!ordered_p (limit, copy->size))
return false;
@@ -266,8 +266,12 @@ static bool
setup_live_bytes_from_ref (ao_ref *ref, sbitmap live_bytes)
{
HOST_WIDE_INT const_size;
- if (valid_ao_ref_for_dse (ref)
- && ref->size.is_constant (&const_size)
+ if (ao_ref_base (ref)
+ && known_size_p (ref->max_size)
+ && known_ge (ref->offset, 0)
+ && multiple_p (ref->offset, BITS_PER_UNIT)
+ && multiple_p (ref->max_size, BITS_PER_UNIT)
+ && ref->max_size.is_constant (&const_size)
&& (const_size / BITS_PER_UNIT
<= param_dse_max_object_size))
{
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug testsuite/103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
` (8 preceding siblings ...)
2021-11-22 10:55 ` hubicka at gcc dot gnu.org
@ 2021-11-23 10:00 ` hubicka at gcc dot gnu.org
2021-11-26 0:41 ` hubicka at gcc dot gnu.org
10 siblings, 0 replies; 12+ messages in thread
From: hubicka at gcc dot gnu.org @ 2021-11-23 10:00 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103282
--- Comment #10 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
fixed by g:6033b27eade9c31c0be50657094c89ef9068892d
^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug testsuite/103282] New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
` (9 preceding siblings ...)
2021-11-23 10:00 ` hubicka at gcc dot gnu.org
@ 2021-11-26 0:41 ` hubicka at gcc dot gnu.org
10 siblings, 0 replies; 12+ 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=103282
Jan Hubicka <hubicka at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Status|REOPENED |RESOLVED
--- Comment #11 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
Fixed.
^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2021-11-26 0:41 UTC | newest]
Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-11-16 18:32 [Bug testsuite/103282] New: New test case gcc.dg/tree-ssa/modref-dse-5.c in r12-5292 fails seurer at gcc dot gnu.org
2021-11-16 19:25 ` [Bug testsuite/103282] " hjl.tools at gmail dot com
2021-11-16 22:03 ` hubicka at gcc dot gnu.org
2021-11-18 19:24 ` seurer at gcc dot gnu.org
2021-11-19 6:54 ` pinskia at gcc dot gnu.org
2021-11-19 6:57 ` pinskia at gcc dot gnu.org
2021-11-19 11:41 ` hubicka at gcc dot gnu.org
2021-11-19 16:13 ` seurer at gcc dot gnu.org
2021-11-22 9:38 ` hubicka at gcc dot gnu.org
2021-11-22 10:55 ` hubicka at gcc dot gnu.org
2021-11-23 10:00 ` 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).