public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
@ 2020-10-08 11:54 marxin at gcc dot gnu.org
  2020-10-08 11:55 ` [Bug ipa/97335] " marxin at gcc dot gnu.org
                   ` (12 more replies)
  0 siblings, 13 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-08 11:54 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 97335
           Summary: [11 Regression] 525.x264_r fails with -Ofast -g
                    -march=znver2 -flto=16 since
                    r11-3641-gc34db4b6f8a5d803
           Product: gcc
           Version: 10.0
            Status: UNCONFIRMED
          Keywords: wrong-code
          Severity: normal
          Priority: P3
         Component: ipa
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: hubicka at gcc dot gnu.org, marxin at gcc dot gnu.org
  Target Milestone: ---

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
@ 2020-10-08 11:55 ` marxin at gcc dot gnu.org
  2020-10-08 12:55 ` marxin at gcc dot gnu.org
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-08 11:55 UTC (permalink / raw)
  To: gcc-bugs

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

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           See Also|                            |https://gcc.gnu.org/bugzill
                   |                            |a/show_bug.cgi?id=97292
             Status|UNCONFIRMED                 |NEW
      Known to work|                            |10.2.0
             Blocks|                            |26163
      Known to fail|                            |11.0
   Last reconfirmed|                            |2020-10-08
     Ever confirmed|0                           |1
   Target Milestone|---                         |11.0


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=26163
[Bug 26163] [meta-bug] missed optimization in SPEC (2k17, 2k and 2k6 and 95)

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
  2020-10-08 11:55 ` [Bug ipa/97335] " marxin at gcc dot gnu.org
@ 2020-10-08 12:55 ` marxin at gcc dot gnu.org
  2020-10-08 15:31 ` marxin at gcc dot gnu.org
                   ` (10 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-08 12:55 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> ---
With -O3 -g -flto=16 --param=lto-partitions=1, the first bad binary is with
-fdbg-cnt=ipa_mod_ref:1046.

It seems a misc tool fails with:

./ldecod_r -i BuckBunny.264 -o BuckBunny.yuv
Setting Default Parameters...
Parsing Configfile decoder.cfg

----------------------------- JM 17.1 (FRExt) -----------------------------
--------------------------------------------------------------------------
 Input H.264 bitstream                  : BuckBunny.264 
 Output decoded YUV                     : BuckBunny.yuv 
 Input reference file                   : test_rec.yuv 
--------------------------------------------------------------------------
POC must = frame# or field# for SNRs to be correct
--------------------------------------------------------------------------
  Frame          POC  Pic#   QP    SnrY     SnrU     SnrV   Y:U:V Time(ms)
--------------------------------------------------------------------------
 Input reference file                   : test_rec.yuv does not exist 
                                          SNR values are not available
00000(IDR)        0     0    28                             4:2:0       0
00002( P )        4     1    31                             4:2:0       0
00001( b )        2     2    31                             4:2:0       0
00003( I )        6     2    28                             4:2:0       0
00006( P )       12     4    28                             4:2:0       0
mb_qp_delta is out of range

PRE dump files:
https://drive.google.com/file/d/1GzqkYP4PRtXVkVbvGGJUukz8-9ay-uMy/view?usp=sharing

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
  2020-10-08 11:55 ` [Bug ipa/97335] " marxin at gcc dot gnu.org
  2020-10-08 12:55 ` marxin at gcc dot gnu.org
@ 2020-10-08 15:31 ` marxin at gcc dot gnu.org
  2020-10-08 15:33 ` marxin at gcc dot gnu.org
                   ` (9 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-08 15:31 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Martin Liška <marxin at gcc dot gnu.org> ---
With the current master (g:3e1123e52f8eca2650efa0bc81768792d328961f) one needs
only one IPA modref transform to trigger the wrong code:

-fdbg-cnt=ipa_mod_ref:778-778

where one needs to copy the input file to
benchspec/CPU/525.x264_r/build/build_peak_gcc7-m64.0000 folder:

cp ../../../525.x264_r/data/test/input/BuckBunny.264 .

One can see the difference in PRE dump file.

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2020-10-08 15:31 ` marxin at gcc dot gnu.org
@ 2020-10-08 15:33 ` marxin at gcc dot gnu.org
  2020-10-09  8:27 ` marxin at gcc dot gnu.org
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-08 15:33 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Martin Liška <marxin at gcc dot gnu.org> ---
One needs -flto here.

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2020-10-08 15:33 ` marxin at gcc dot gnu.org
@ 2020-10-09  8:27 ` marxin at gcc dot gnu.org
  2020-10-09  8:31 ` marxin at gcc dot gnu.org
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-09  8:27 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Martin Liška <marxin at gcc dot gnu.org> ---
This case is about:

   <bb 28> [local count: 177167400]:
+  pretmp_327 = MEM[(int *)dep_dp_76(D) + 8B];
+  goto <bb 46>; [100.00%]
+
+  <bb 29> [local count: 177167400]:
   ctx_144 = _44 + 4;
+  pretmp_335 = MEM[(int *)dep_dp_76(D) + 8B];

where dep_dp is of type:

typedef struct
{
  unsigned int    Drange;
  unsigned int    Dvalue;
  int             DbitsLeft;
  byte            *Dcodestrm;
  int             *Dcodestrm_len;
} DecodingEnvironment;

and so dep_dp_76(D) + 8B is 'Dvalue' field of the struct.

Looking at the code, there are really places where one takes pointer of the
field:

benchspec/CPU/525.x264_r/src/ldecod_src/biaridecod.c:  unsigned int *value =
&dep->Dvalue;
benchspec/CPU/525.x264_r/src/ldecod_src/biaridecod.c:   unsigned int *value =
&dep->Dvalue;

But the usage seems fine to me, no casting and direct usage of the 'unsigned
int *'.

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
                   ` (4 preceding siblings ...)
  2020-10-09  8:27 ` marxin at gcc dot gnu.org
@ 2020-10-09  8:31 ` marxin at gcc dot gnu.org
  2020-10-09  8:47 ` marxin at gcc dot gnu.org
                   ` (6 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-09  8:31 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Martin Liška <marxin at gcc dot gnu.org> ---
(In reply to Martin Liška from comment #4)
> This case is about:
> 
>    <bb 28> [local count: 177167400]:
> +  pretmp_327 = MEM[(int *)dep_dp_76(D) + 8B];
> +  goto <bb 46>; [100.00%]
> +
> +  <bb 29> [local count: 177167400]:
>    ctx_144 = _44 + 4;
> +  pretmp_335 = MEM[(int *)dep_dp_76(D) + 8B];
> 
> where dep_dp is of type:
> 
> typedef struct
> {
>   unsigned int    Drange;
>   unsigned int    Dvalue;
>   int             DbitsLeft;
>   byte            *Dcodestrm;
>   int             *Dcodestrm_len;
> } DecodingEnvironment;
> 

Sorry, dep_dp_76(D) + 8B corresponds to DbitsLeft. But again, both places where
address is taken don't cast the pointer or so:

benchspec/CPU/525.x264_r/src/ldecod_src/biaridecod.c:  int *DbitsLeft =
&dep->DbitsLeft;
benchspec/CPU/525.x264_r/src/ldecod_src/biaridecod.c:   int *DbitsLeft =
&dep->DbitsLeft;

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
                   ` (5 preceding siblings ...)
  2020-10-09  8:31 ` marxin at gcc dot gnu.org
@ 2020-10-09  8:47 ` marxin at gcc dot gnu.org
  2020-10-09  8:48 ` marxin at gcc dot gnu.org
                   ` (5 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-09  8:47 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Martin Liška <marxin at gcc dot gnu.org> ---
PRE dump files:

https://drive.google.com/file/d/1pWbEPfAqIThlTdEYWJ_g2yvDowqUSa-Q/view?usp=sharing

https://drive.google.com/file/d/1pWbEPfAqIThlTdEYWJ_g2yvDowqUSa-Q/view?usp=sharing

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
                   ` (6 preceding siblings ...)
  2020-10-09  8:47 ` marxin at gcc dot gnu.org
@ 2020-10-09  8:48 ` marxin at gcc dot gnu.org
  2020-10-09  8:54 ` marxin at gcc dot gnu.org
                   ` (4 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-09  8:48 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Martin Liška <marxin at gcc dot gnu.org> ---
(In reply to Martin Liška from comment #6)
> PRE dump files:
> 
> https://drive.google.com/file/d/1pWbEPfAqIThlTdEYWJ_g2yvDowqUSa-Q/
> view?usp=sharing
> 
> https://drive.google.com/file/d/1pWbEPfAqIThlTdEYWJ_g2yvDowqUSa-Q/
> view?usp=sharing

The second one is:

https://drive.google.com/file/d/11qmfbZCgWrkkpuTxRxFE6gq1Bcd3GkHf/view?usp=sharing

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
                   ` (7 preceding siblings ...)
  2020-10-09  8:48 ` marxin at gcc dot gnu.org
@ 2020-10-09  8:54 ` marxin at gcc dot gnu.org
  2020-10-09  9:17 ` marxin at gcc dot gnu.org
                   ` (3 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-09  8:54 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from Martin Liška <marxin at gcc dot gnu.org> ---
The change is:
ipa-modref: in read_MVD_CABAC/1761, call to exp_golomb_decode_eq_prob/1803 does
not clobber  3->3

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
                   ` (8 preceding siblings ...)
  2020-10-09  8:54 ` marxin at gcc dot gnu.org
@ 2020-10-09  9:17 ` marxin at gcc dot gnu.org
  2020-10-09  9:25 ` hubicka at gcc dot gnu.org
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-09  9:17 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from Martin Liška <marxin at gcc dot gnu.org> ---
So adding only -fno-ipa-cp fixes the problem!

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
                   ` (9 preceding siblings ...)
  2020-10-09  9:17 ` marxin at gcc dot gnu.org
@ 2020-10-09  9:25 ` hubicka at gcc dot gnu.org
  2020-10-09 10:27 ` cvs-commit at gcc dot gnu.org
  2020-10-09 10:28 ` marxin at gcc dot gnu.org
  12 siblings, 0 replies; 14+ messages in thread
From: hubicka at gcc dot gnu.org @ 2020-10-09  9:25 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
Created attachment 49338
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=49338&action=edit
disable param tracking on clones

Perhaps this has chance to help.

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
                   ` (10 preceding siblings ...)
  2020-10-09  9:25 ` hubicka at gcc dot gnu.org
@ 2020-10-09 10:27 ` cvs-commit at gcc dot gnu.org
  2020-10-09 10:28 ` marxin at gcc dot gnu.org
  12 siblings, 0 replies; 14+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-10-09 10:27 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #11 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Martin Liska <marxin@gcc.gnu.org>:

https://gcc.gnu.org/g:ffe8baa996486fa0313aa804a064a58b0b161f07

commit r11-3748-gffe8baa996486fa0313aa804a064a58b0b161f07
Author: Jan Hubicka <jh@suse.cz>
Date:   Fri Oct 9 11:29:58 2020 +0200

    IPA modref: fix miscompilation in clone when IPA modref is used

    gcc/ChangeLog:

            PR ipa/97292
            PR ipa/97335
            * ipa-modref-tree.h (copy_from): Drop summary in a
            clone.

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

* [Bug ipa/97335] [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803
  2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
                   ` (11 preceding siblings ...)
  2020-10-09 10:27 ` cvs-commit at gcc dot gnu.org
@ 2020-10-09 10:28 ` marxin at gcc dot gnu.org
  12 siblings, 0 replies; 14+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-10-09 10:28 UTC (permalink / raw)
  To: gcc-bugs

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

Martin Liška <marxin at gcc dot gnu.org> changed:

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

--- Comment #12 from Martin Liška <marxin at gcc dot gnu.org> ---
Fixed now.

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

end of thread, other threads:[~2020-10-09 10:28 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-10-08 11:54 [Bug ipa/97335] New: [11 Regression] 525.x264_r fails with -Ofast -g -march=znver2 -flto=16 since r11-3641-gc34db4b6f8a5d803 marxin at gcc dot gnu.org
2020-10-08 11:55 ` [Bug ipa/97335] " marxin at gcc dot gnu.org
2020-10-08 12:55 ` marxin at gcc dot gnu.org
2020-10-08 15:31 ` marxin at gcc dot gnu.org
2020-10-08 15:33 ` marxin at gcc dot gnu.org
2020-10-09  8:27 ` marxin at gcc dot gnu.org
2020-10-09  8:31 ` marxin at gcc dot gnu.org
2020-10-09  8:47 ` marxin at gcc dot gnu.org
2020-10-09  8:48 ` marxin at gcc dot gnu.org
2020-10-09  8:54 ` marxin at gcc dot gnu.org
2020-10-09  9:17 ` marxin at gcc dot gnu.org
2020-10-09  9:25 ` hubicka at gcc dot gnu.org
2020-10-09 10:27 ` cvs-commit at gcc dot gnu.org
2020-10-09 10:28 ` marxin 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).