public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu
@ 2021-06-17  3:44 qrzhang at gatech dot edu
  2021-06-17  3:46 ` [Bug tree-optimization/101105] " qrzhang at gatech dot edu
                   ` (13 more replies)
  0 siblings, 14 replies; 15+ messages in thread
From: qrzhang at gatech dot edu @ 2021-06-17  3:44 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 101105
           Summary: wrong code at -O3 on x86_64-linux-gnu
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: tree-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: qrzhang at gatech dot edu
  Target Milestone: ---

It appears to be a regression in 11.

$ gcc-trunk -v
Configured with: ../gcc/configure --prefix=/nethome/qzhang414/trunk/root-gcc
--enable-languages=c,c++ --disable-werror --enable-multilib
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 12.0.0 20210616 (experimental) [master revision
041f7417707:a530c589490:3155d51bfd1de8b6c4645dcb2292248a8d7cc3c9] (GCC)



$ gcc-trunk abc.c ; ./a.out
2

$ gcc-trunk -O3 abc.c ; ./a.out
Segmentation fault


$ cat abc.c
short a;
int b[5][4] = {2, 2};
long *c;
int d;
short(e)(f) { return f == 0 || a && f == 1 ? 0 : a; }
int main() {
  int g, h;
  g = 3;
  for (; g >= 0; g--) {
    h = 3;
    for (; h >= 0; h--)
      b[g][h] = b[0][1] && e(1);
  }
  d = b[0][1];
  if (d)
    *c = 4073709551611;
  printf("%d\n", 2);
}

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

* [Bug tree-optimization/101105] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
@ 2021-06-17  3:46 ` qrzhang at gatech dot edu
  2021-06-17  4:40 ` [Bug tree-optimization/101105] [11/12 Regression] " pinskia at gcc dot gnu.org
                   ` (12 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: qrzhang at gatech dot edu @ 2021-06-17  3:46 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Qirun Zhang <qrzhang at gatech dot edu> ---
My bisection points to g:f75211822f8d84bb706421

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

* [Bug tree-optimization/101105] [11/12 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
  2021-06-17  3:46 ` [Bug tree-optimization/101105] " qrzhang at gatech dot edu
@ 2021-06-17  4:40 ` pinskia at gcc dot gnu.org
  2021-06-17  7:06 ` rguenth at gcc dot gnu.org
                   ` (11 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-06-17  4:40 UTC (permalink / raw)
  To: gcc-bugs

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

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-code
            Version|unknown                     |11.0
             Target|                            |x86_64-linux-gnu
            Summary|wrong code at -O3 on        |[11/12 Regression] wrong
                   |x86_64-linux-gnu            |code at -O3 on
                   |                            |x86_64-linux-gnu
   Target Milestone|---                         |11.2

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

* [Bug tree-optimization/101105] [11/12 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
  2021-06-17  3:46 ` [Bug tree-optimization/101105] " qrzhang at gatech dot edu
  2021-06-17  4:40 ` [Bug tree-optimization/101105] [11/12 Regression] " pinskia at gcc dot gnu.org
@ 2021-06-17  7:06 ` rguenth at gcc dot gnu.org
  2021-06-23  9:37 ` rguenth at gcc dot gnu.org
                   ` (10 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-06-17  7:06 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|rguenther at suse dot de           |rguenth at gcc dot gnu.org,
                   |                            |rsandifo at gcc dot gnu.org
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1
   Last reconfirmed|                            |2021-06-17

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

short a;
int b[5][4] = {2, 2};
int d;
short e(int f) { return f == 0 || a && f == 1 ? 0 : a; }
int main() {
  int g, h;
  g = 3;
  for (; g >= 0; g--) {
    h = 3;
    for (; h >= 0; h--)
      b[g][h] = b[0][1] && e(1);
  }
  d = b[0][1];
  if (d != 0)
    __builtin_abort ();
  return 0;
}

after if-conversion we have

  <bb 3> [local count: 214748368]:
  # g_40 = PHI <g_11(7), 3(2)>
  # ivtmp_2 = PHI <ivtmp_27(7), 4(2)>
  b[g_40][2] = 0;
  b[g_40][3] = 0;
  b[g_40][1] = 0;
  _42 = b[0][1];
  b[g_40][0] = 0;
  g_11 = g_40 + -1;
  ivtmp_27 = ivtmp_2 - 1;
  if (ivtmp_27 != 0)
    goto <bb 7>; [75.00%]
  else
    goto <bb 4>; [25.00%]

  <bb 7> [local count: 161061274]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 53687093]:
  # _18 = PHI <_42(3)>
  d = _18;
  if (_18 != 0)

and vect produces

  <bb 3> [local count: 214748368]:
  # g_40 = PHI <g_11(7), 3(2)>
  # ivtmp_2 = PHI <ivtmp_27(7), 4(2)>
  # ivtmp_48 = PHI <ivtmp_26(7), _19(2)>
  # ivtmp_32 = PHI <ivtmp_12(7), 0(2)>
  _42 = b[0][1];
  MEM <vector(4) int> [(int *)ivtmp_48] = { 0, 0, 0, 0 };
  ivtmp_31 = ivtmp_48 + 18446744073709551600(OVF);
  g_11 = g_40 + -1;
  ivtmp_27 = ivtmp_2 - 1;
  ivtmp_26 = ivtmp_48 + 18446744073709551600(OVF);
  ivtmp_12 = ivtmp_32 + 1;
  if (ivtmp_12 < 4)
    goto <bb 7>; [75.00%]
  else
    goto <bb 4>; [25.00%]

  <bb 7> [local count: 161061274]:
  goto <bb 3>; [100.00%]

  <bb 4> [local count: 53687093]:
  # _18 = PHI <_42(3)>

We have

(Data Dep: 
#(Data Ref: 
#  bb: 3 
#  stmt: b[g_40][1] = 0;
#  ref: b[g_40][1];
#  base_object: b;
#  Access function 0: 1
#  Access function 1: {3, +, -1}_1
#)
#(Data Ref: 
#  bb: 3 
#  stmt: _42 = b[0][1];
#  ref: b[0][1];
#  base_object: b;
#  Access function 0: 1
#  Access function 1: 0
#)
  access_fn_A: 1
  access_fn_B: 1

 (subscript 
  iterations_that_access_an_element_twice_in_A: [0]
  last_conflict: scev_not_known
  iterations_that_access_an_element_twice_in_B: [0]
  last_conflict: scev_not_known
  (Subscript distance: 0 ))
  access_fn_A: {3, +, -1}_1
  access_fn_B: 0

 (subscript 
  iterations_that_access_an_element_twice_in_A: [-3]
  last_conflict: 1
  iterations_that_access_an_element_twice_in_B: [0]
  last_conflict: 1
  (Subscript distance: -3 ))
  loop nest: (1 )
)

and mark the DR for a runtime alias test.  But then

t3.c:8:12: note:   === vect_prune_runtime_alias_test_list ===
t3.c:8:12: note:   can tell at compile time that b[g_40][0] and b[0][1] do not
alias
t3.c:8:12: note:   improved number of alias checks from 1 to 0

as vect_compile_time_alias gets segment_lengths of zero (huh), since

  /* Step values are irrelevant for aliasing if the number of vector
     iterations is equal to the number of scalar iterations (which can
     happen for fully-SLP loops).  */
  bool ignore_step_p = known_eq (LOOP_VINFO_VECT_FACTOR (loop_vinfo), 1U);
...

      if (ignore_step_p)
        {
          segment_length_a = size_zero_node;
          segment_length_b = size_zero_node;
        }

but I'm not sure if a segment length of zero will do good in any case where
the alias check is needed?  Richard - that's your code, can you have a look?

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

* [Bug tree-optimization/101105] [11/12 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
                   ` (2 preceding siblings ...)
  2021-06-17  7:06 ` rguenth at gcc dot gnu.org
@ 2021-06-23  9:37 ` rguenth at gcc dot gnu.org
  2021-06-23  9:45 ` rsandifo at gcc dot gnu.org
                   ` (9 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-06-23  9:37 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
So what happens is that vect_compile_time_alias fails to perform the offset
adjustment for the negative step DR

#(Data Ref: 
#  bb: 3 
#  stmt: b[g_40][0] = 0;
#  ref: b[g_40][0];
#  base_object: b;
#  Access function 0: 0
#  Access function 1: {3, +, -1}_1

which is done via

  /* For negative step, we need to adjust address range by TYPE_SIZE_UNIT
     bytes, e.g., int a[3] -> a[1] range is [a+4, a+16) instead of
     [a, a+12) */
  if (tree_int_cst_compare (DR_STEP (a->dr), size_zero_node) < 0)
    {
      const_length_a = (-wi::to_poly_wide (segment_length_a)).force_uhwi ();
      offset_a -= const_length_a;
    }

since we zero segment_length_a because of ignore_step_p.  But that adjustment
cannot be ignored.  I suppose we need to track a separate "offset segment
length"
for this purpose?

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

* [Bug tree-optimization/101105] [11/12 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
                   ` (3 preceding siblings ...)
  2021-06-23  9:37 ` rguenth at gcc dot gnu.org
@ 2021-06-23  9:45 ` rsandifo at gcc dot gnu.org
  2021-06-23  9:52 ` rguenth at gcc dot gnu.org
                   ` (8 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rsandifo at gcc dot gnu.org @ 2021-06-23  9:45 UTC (permalink / raw)
  To: gcc-bugs

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

rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |rsandifo at gcc dot gnu.org

--- Comment #4 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> ---
Mine.

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

* [Bug tree-optimization/101105] [11/12 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
                   ` (4 preceding siblings ...)
  2021-06-23  9:45 ` rsandifo at gcc dot gnu.org
@ 2021-06-23  9:52 ` rguenth at gcc dot gnu.org
  2021-06-24  7:07 ` cvs-commit at gcc dot gnu.org
                   ` (7 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-06-23  9:52 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Richard Biener <rguenth at gcc dot gnu.org> ---
Created attachment 51055
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51055&action=edit
patch

So like this.

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

* [Bug tree-optimization/101105] [11/12 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
                   ` (5 preceding siblings ...)
  2021-06-23  9:52 ` rguenth at gcc dot gnu.org
@ 2021-06-24  7:07 ` cvs-commit at gcc dot gnu.org
  2021-06-24  7:09 ` [Bug tree-optimization/101105] [11 " rguenth at gcc dot gnu.org
                   ` (6 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-06-24  7:07 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Richard Biener <rguenth@gcc.gnu.org>:

https://gcc.gnu.org/g:50374fdacbd121bc4a61b073e559208ff61bee06

commit r12-1765-g50374fdacbd121bc4a61b073e559208ff61bee06
Author: Richard Biener <rguenther@suse.de>
Date:   Wed Jun 23 12:43:03 2021 +0200

    tree-optimization/101105 - fix runtime alias test optimization

    We were ignoring DR_STEP for VF == 1 which is OK only in case
    the scalar order is preserved or both DR steps are the same.

    2021-06-23  Richard Biener  <rguenther@suse.de>

            PR tree-optimization/101105
            * tree-vect-data-refs.c (vect_prune_runtime_alias_test_list):
            Only ignore steps when they are equal or scalar order is preserved.

            * gcc.dg/torture/pr101105.c: New testcase.

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

* [Bug tree-optimization/101105] [11 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
                   ` (6 preceding siblings ...)
  2021-06-24  7:07 ` cvs-commit at gcc dot gnu.org
@ 2021-06-24  7:09 ` rguenth at gcc dot gnu.org
  2021-06-24  7:15 ` rguenth at gcc dot gnu.org
                   ` (5 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-06-24  7:09 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P2
            Summary|[11/12 Regression] wrong    |[11 Regression] wrong code
                   |code at -O3 on              |at -O3 on x86_64-linux-gnu
                   |x86_64-linux-gnu            |
           Assignee|rsandifo at gcc dot gnu.org        |rguenth at gcc dot gnu.org
      Known to work|                            |12.0

--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed on trunk sofar.

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

* [Bug tree-optimization/101105] [11 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
                   ` (7 preceding siblings ...)
  2021-06-24  7:09 ` [Bug tree-optimization/101105] [11 " rguenth at gcc dot gnu.org
@ 2021-06-24  7:15 ` rguenth at gcc dot gnu.org
  2021-06-25  9:06 ` cvs-commit at gcc dot gnu.org
                   ` (4 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-06-24  7:15 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to work|                            |7.5.0

--- Comment #8 from Richard Biener <rguenth at gcc dot gnu.org> ---
Note the same problematic code exists on the 8, 9 and 10 branches, too, only
the 7 branch has sufficiently different code.

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

* [Bug tree-optimization/101105] [11 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
                   ` (8 preceding siblings ...)
  2021-06-24  7:15 ` rguenth at gcc dot gnu.org
@ 2021-06-25  9:06 ` cvs-commit at gcc dot gnu.org
  2021-06-25  9:06 ` [Bug tree-optimization/101105] [9/10 " rguenth at gcc dot gnu.org
                   ` (3 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-06-25  9:06 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by Richard Biener
<rguenth@gcc.gnu.org>:

https://gcc.gnu.org/g:00ab8e994b87693b9e56fa68c3b3ede01425a2c0

commit r11-8653-g00ab8e994b87693b9e56fa68c3b3ede01425a2c0
Author: Richard Biener <rguenther@suse.de>
Date:   Wed Jun 23 12:43:03 2021 +0200

    tree-optimization/101105 - fix runtime alias test optimization

    We were ignoring DR_STEP for VF == 1 which is OK only in case
    the scalar order is preserved or both DR steps are the same.

    2021-06-23  Richard Biener  <rguenther@suse.de>

            PR tree-optimization/101105
            * tree-vect-data-refs.c (vect_prune_runtime_alias_test_list):
            Only ignore steps when they are equal or scalar order is preserved.

            * gcc.dg/torture/pr101105.c: New testcase.

    (cherry picked from commit 50374fdacbd121bc4a61b073e559208ff61bee06)

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

* [Bug tree-optimization/101105] [9/10 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
                   ` (9 preceding siblings ...)
  2021-06-25  9:06 ` cvs-commit at gcc dot gnu.org
@ 2021-06-25  9:06 ` rguenth at gcc dot gnu.org
  2021-09-06 10:18 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-06-25  9:06 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|                            |11.1.0
   Target Milestone|11.2                        |9.5
            Summary|[11 Regression] wrong code  |[9/10 Regression] wrong
                   |at -O3 on x86_64-linux-gnu  |code at -O3 on
                   |                            |x86_64-linux-gnu
      Known to work|                            |11.1.1

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

* [Bug tree-optimization/101105] [9/10 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
                   ` (10 preceding siblings ...)
  2021-06-25  9:06 ` [Bug tree-optimization/101105] [9/10 " rguenth at gcc dot gnu.org
@ 2021-09-06 10:18 ` cvs-commit at gcc dot gnu.org
  2021-10-13 10:09 ` [Bug tree-optimization/101105] [9 " cvs-commit at gcc dot gnu.org
  2021-10-13 10:11 ` rguenth at gcc dot gnu.org
  13 siblings, 0 replies; 15+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-09-06 10:18 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by Richard Biener
<rguenth@gcc.gnu.org>:

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

commit r10-10096-gaed52ca415b635463116486865a2a55f947cf8c1
Author: Richard Biener <rguenther@suse.de>
Date:   Wed Jun 23 12:43:03 2021 +0200

    tree-optimization/101105 - fix runtime alias test optimization

    We were ignoring DR_STEP for VF == 1 which is OK only in case
    the scalar order is preserved or both DR steps are the same.

    2021-06-23  Richard Biener  <rguenther@suse.de>

            PR tree-optimization/101105
            * tree-vect-data-refs.c (vect_prune_runtime_alias_test_list):
            Only ignore steps when they are equal or scalar order is preserved.

            * gcc.dg/torture/pr101105.c: New testcase.

    (cherry picked from commit 50374fdacbd121bc4a61b073e559208ff61bee06)

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

* [Bug tree-optimization/101105] [9 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
                   ` (11 preceding siblings ...)
  2021-09-06 10:18 ` cvs-commit at gcc dot gnu.org
@ 2021-10-13 10:09 ` cvs-commit at gcc dot gnu.org
  2021-10-13 10:11 ` rguenth at gcc dot gnu.org
  13 siblings, 0 replies; 15+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-10-13 10:09 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #11 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-9 branch has been updated by Richard Biener
<rguenth@gcc.gnu.org>:

https://gcc.gnu.org/g:641bea75ab2b3567dfa66370dea8b810b504d3cc

commit r9-9770-g641bea75ab2b3567dfa66370dea8b810b504d3cc
Author: Richard Biener <rguenther@suse.de>
Date:   Wed Jun 23 12:43:03 2021 +0200

    tree-optimization/101105 - fix runtime alias test optimization

    We were ignoring DR_STEP for VF == 1 which is OK only in case
    the scalar order is preserved or both DR steps are the same.

    2021-06-23  Richard Biener  <rguenther@suse.de>

            PR tree-optimization/101105
            * tree-vect-data-refs.c (vect_prune_runtime_alias_test_list):
            Only ignore steps when they are equal or scalar order is preserved.

            * gcc.dg/torture/pr101105.c: New testcase.

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

* [Bug tree-optimization/101105] [9 Regression] wrong code at -O3 on x86_64-linux-gnu
  2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
                   ` (12 preceding siblings ...)
  2021-10-13 10:09 ` [Bug tree-optimization/101105] [9 " cvs-commit at gcc dot gnu.org
@ 2021-10-13 10:11 ` rguenth at gcc dot gnu.org
  13 siblings, 0 replies; 15+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-10-13 10:11 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED
      Known to fail|                            |9.4.0

--- Comment #12 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed.

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

end of thread, other threads:[~2021-10-13 10:11 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-17  3:44 [Bug tree-optimization/101105] New: wrong code at -O3 on x86_64-linux-gnu qrzhang at gatech dot edu
2021-06-17  3:46 ` [Bug tree-optimization/101105] " qrzhang at gatech dot edu
2021-06-17  4:40 ` [Bug tree-optimization/101105] [11/12 Regression] " pinskia at gcc dot gnu.org
2021-06-17  7:06 ` rguenth at gcc dot gnu.org
2021-06-23  9:37 ` rguenth at gcc dot gnu.org
2021-06-23  9:45 ` rsandifo at gcc dot gnu.org
2021-06-23  9:52 ` rguenth at gcc dot gnu.org
2021-06-24  7:07 ` cvs-commit at gcc dot gnu.org
2021-06-24  7:09 ` [Bug tree-optimization/101105] [11 " rguenth at gcc dot gnu.org
2021-06-24  7:15 ` rguenth at gcc dot gnu.org
2021-06-25  9:06 ` cvs-commit at gcc dot gnu.org
2021-06-25  9:06 ` [Bug tree-optimization/101105] [9/10 " rguenth at gcc dot gnu.org
2021-09-06 10:18 ` cvs-commit at gcc dot gnu.org
2021-10-13 10:09 ` [Bug tree-optimization/101105] [9 " cvs-commit at gcc dot gnu.org
2021-10-13 10:11 ` rguenth 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).