public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1
@ 2021-06-18 18:47 zsojka at seznam dot cz
  2021-06-18 18:49 ` [Bug target/101129] " pinskia at gcc dot gnu.org
                   ` (14 more replies)
  0 siblings, 15 replies; 16+ messages in thread
From: zsojka at seznam dot cz @ 2021-06-18 18:47 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 101129
           Summary: [11/12 Regression] wrong code at -O1
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Keywords: wrong-code
          Severity: normal
          Priority: P3
         Component: rtl-optimization
          Assignee: unassigned at gcc dot gnu.org
          Reporter: zsojka at seznam dot cz
  Target Milestone: ---
              Host: x86_64-pc-linux-gnu
            Target: powerpc64le-unknown-linux-gnu

Created attachment 51037
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51037&action=edit
reduced testcase

Output:
$ powerpc64le-unknown-linux-gnu-gcc -O testcase.c -static
$ qemu-ppc64le -- ./a.out 
qemu: uncaught target signal 6 (Aborted) - core dumped
Aborted


$ powerpc64le-unknown-linux-gnu-gcc -v
Using built-in specs.
COLLECT_GCC=/repo/gcc-trunk/binary-latest-powerpc64le/bin/powerpc64le-unknown-linux-gnu-gcc
COLLECT_LTO_WRAPPER=/repo/gcc-trunk/binary-trunk-r12-1607-20210617224441-g2786064d91f-checking-yes-rtl-df-extra-powerpc64le/bin/../libexec/gcc/powerpc64le-unknown-linux-gnu/12.0.0/lto-wrapper
Target: powerpc64le-unknown-linux-gnu
Configured with: /repo/gcc-trunk//configure --enable-languages=c,c++
--enable-valgrind-annotations --disable-nls --enable-checking=yes,rtl,df,extra
--with-cloog --with-ppl --with-isl
--with-sysroot=/usr/powerpc64le-unknown-linux-gnu --build=x86_64-pc-linux-gnu
--host=x86_64-pc-linux-gnu --target=powerpc64le-unknown-linux-gnu
--with-ld=/usr/bin/powerpc64le-unknown-linux-gnu-ld
--with-as=/usr/bin/powerpc64le-unknown-linux-gnu-as --disable-libstdcxx-pch
--prefix=/repo/gcc-trunk//binary-trunk-r12-1607-20210617224441-g2786064d91f-checking-yes-rtl-df-extra-powerpc64le
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.0.0 20210618 (experimental) (GCC)

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
@ 2021-06-18 18:49 ` pinskia at gcc dot gnu.org
  2021-06-18 20:39 ` [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839 jakub at gcc dot gnu.org
                   ` (13 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: pinskia at gcc dot gnu.org @ 2021-06-18 18:49 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |11.2
          Component|rtl-optimization            |target

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
  2021-06-18 18:49 ` [Bug target/101129] " pinskia at gcc dot gnu.org
@ 2021-06-18 20:39 ` jakub at gcc dot gnu.org
  2021-06-18 20:46 ` jakub at gcc dot gnu.org
                   ` (12 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-06-18 20:39 UTC (permalink / raw)
  To: gcc-bugs

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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[11/12 Regression] wrong    |[11/12 Regression] wrong
                   |code at -O1                 |code at -O1 since r11-5839
   Last reconfirmed|                            |2021-06-18
           Priority|P3                          |P2
     Ever confirmed|0                           |1
                 CC|                            |jakub at gcc dot gnu.org
             Status|UNCONFIRMED                 |NEW

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Started with r11-5839-g3a6e3ad38a17a03ee0139b49a0946e7b9ded1eb1

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
  2021-06-18 18:49 ` [Bug target/101129] " pinskia at gcc dot gnu.org
  2021-06-18 20:39 ` [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839 jakub at gcc dot gnu.org
@ 2021-06-18 20:46 ` jakub at gcc dot gnu.org
  2021-06-21  6:18 ` rguenth at gcc dot gnu.org
                   ` (11 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-06-18 20:46 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Optimized difference:
--- pr101129.c.244t.optimized.r11-5838  2021-06-18 22:40:20.915971652 +0200
+++ pr101129.c.244t.optimized.r11-5839  2021-06-18 22:40:34.739789553 +0200
@@ -8,6 +8,7 @@ void foo0 (u32 u32_0, U * ret)
   __int128 _1;
   vector(16) unsigned char _2;
   unsigned char _3;
+  vector(16) <signed-boolean:8> _4;
   vector(16) signed char _5;
   __int128 _6;
   __int128 _7;
@@ -31,7 +32,8 @@ void foo0 (u32 u32_0, U * ret)
   _14 = u32_0_13(D) & 4;
   _3 = (unsigned char) _14;
   _2 = {_3, _3, _3, _3, _3, _3, _3, _3, _3, _3, _3, _3, _3, _3, _3, _3};
-  _5 = .VCONDU (_2, { 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, { -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }, { 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, 108);
+  _4 = _2 < { 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
+  _5 = VIEW_CONVERT_EXPR<vector(16) signed char>(_4);
   _6 = VIEW_CONVERT_EXPR<__int128>(_5);
   u128_2_15 = _1 * _6;
   _7 = u128_2_15 >> 64;
Assembly difference:
--- pr101129.s.r11-5838 2021-06-18 22:40:20.919971599 +0200
+++ pr101129.s.r11-5839 2021-06-18 22:40:34.743789500 +0200
@@ -14,19 +14,16 @@ foo0:
        .localentry     foo0,.-foo0
        rlwinm 9,3,0,29,29
        mtvsrd 32,9
-       vspltb 0,0,7
+       vspltb 1,0,7
        addis 9,2,.LC0@toc@ha
        addi 9,9,.LC0@toc@l
-       lxvd2x 33,0,9
-       vcmpgtub 0,1,0
-       addi 9,1,-16
-       xxpermdi 32,32,32,2
-       stxvd2x 32,0,9
-       ld 9,-8(1)
-       ld 10,-16(1)
+       lxvd2x 32,0,9
+       vcmpgtub 0,0,1
+       mfvsrd 11,32
+       xxpermdi 0,32,32,3
+       mfvsrd 10,0
+       add 10,11,10
        mulld 10,10,3
-       mulhdu 3,3,9
-       add 10,10,3
        addis 9,2,.LANCHOR0@toc@ha
        lbz 9,.LANCHOR0@toc@l(9)
        add 10,10,9

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (2 preceding siblings ...)
  2021-06-18 20:46 ` jakub at gcc dot gnu.org
@ 2021-06-21  6:18 ` rguenth at gcc dot gnu.org
  2021-07-13 19:39 ` jakub at gcc dot gnu.org
                   ` (10 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-06-21  6:18 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |rguenth at gcc dot gnu.org

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
The GIMPLE doesn't look wrong but eventually

+  _4 = _2 < { 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
+  _5 = VIEW_CONVERT_EXPR<vector(16) signed char>(_4);

goes wrong somewhere in RTL expansion?

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (3 preceding siblings ...)
  2021-06-21  6:18 ` rguenth at gcc dot gnu.org
@ 2021-07-13 19:39 ` jakub at gcc dot gnu.org
  2021-07-13 21:19 ` wschmidt at gcc dot gnu.org
                   ` (9 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: jakub at gcc dot gnu.org @ 2021-07-13 19:39 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
I think this is a bug in the swaps rs6000 specific pass.
It in particular changes
 (insn 20 19 21 2 (set (reg:DI 155)
         (mult:DI (reg:DI 224)
-            (subreg:DI (reg:V16QI 148) 0))) "pr101129.c":14:8 154 {muldi3}
+            (subreg:DI (reg:V16QI 148) 8))) "pr101129.c":14:8 154 {muldi3}
      (nil))
 (insn 21 20 22 2 (set (reg:DI 156)
         (subreg:DI (mult:TI (zero_extend:TI (reg:DI 224))
-                (zero_extend:TI (subreg:DI (reg:V16QI 148) 0))) 8))
"pr101129.c":14:8 166 {umuldi3_highpart_le}
+                (zero_extend:TI (subreg:DI (reg:V16QI 148) 8))) 0))
"pr101129.c":14:8 166 {umuldi3_highpart_le}
      (nil))

The SUBREG_BYTE changes in subregs of pseudo 148 look reasonable as the pass
removed a xxswapd_v16qi that was swapping the value set to that pseudo.
But the 8 to 0 change of SUBREG_BYTE with SUBREG_REG of MULT looks wrong, that
wouldn't even match unless simplified and turns a highpart multiply into
lowpart multiply.
So either the swaps pass needs to be fixed not to do that, or the highpart
multiply instructions should be changed to e.g. use lshiftrt by 64 instead of
highpart subreg of the result.

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (4 preceding siblings ...)
  2021-07-13 19:39 ` jakub at gcc dot gnu.org
@ 2021-07-13 21:19 ` wschmidt at gcc dot gnu.org
  2021-07-14 20:22 ` wschmidt at gcc dot gnu.org
                   ` (8 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: wschmidt at gcc dot gnu.org @ 2021-07-13 21:19 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Bill Schmidt <wschmidt at gcc dot gnu.org> ---
Uh, yeah, that is completely unexpected behavior for swaps.  I'll try to look
at this soon.

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (5 preceding siblings ...)
  2021-07-13 21:19 ` wschmidt at gcc dot gnu.org
@ 2021-07-14 20:22 ` wschmidt at gcc dot gnu.org
  2021-07-14 21:38 ` segher at gcc dot gnu.org
                   ` (7 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: wschmidt at gcc dot gnu.org @ 2021-07-14 20:22 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Bill Schmidt <wschmidt at gcc dot gnu.org> ---
Testing this patch.

diff --git a/gcc/config/rs6000/rs6000-p8swap.c
b/gcc/config/rs6000/rs6000-p8swap.c
index 21cbcb2e28a..00693e6dc60 100644
--- a/gcc/config/rs6000/rs6000-p8swap.c
+++ b/gcc/config/rs6000/rs6000-p8swap.c
@@ -1523,6 +1523,20 @@ replace_swap_with_copy (swap_web_entry *insn_entry,
unsigned i)
   insn->set_deleted ();
 }

+/* INSN is known to contain a SUBREG, which we can normally handle,
+   but if the SUBREG itself contains a MULT then we need to leave it alone
+   to avoid turning a mult_hipart into a mult_lopart, for example.  */
+static bool
+has_part_mult (rtx_insn *insn)
+{
+  rtx body = PATTERN (insn);
+  rtx src = SET_SRC (body);
+  if (GET_CODE (src) != SUBREG)
+    return false;
+  rtx inner = XEXP (src, 0);
+  return (GET_CODE (inner) == MULT);
+}
+
 /* Make NEW_MEM_EXP's attributes and flags resemble those of
    ORIGINAL_MEM_EXP.  */
 static void
@@ -2501,6 +2515,9 @@ rs6000_analyze_swaps (function *fun)
                    insn_entry[uid].is_swappable = 0;
                  else if (special != SH_NONE)
                    insn_entry[uid].special_handling = special;
+                 else if (insn_entry[uid].contains_subreg
+                          && has_part_mult (insn))
+                   insn_entry[uid].is_swappable = 0;
                  else if (insn_entry[uid].contains_subreg)
                    insn_entry[uid].special_handling = SH_SUBREG;
                }

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (6 preceding siblings ...)
  2021-07-14 20:22 ` wschmidt at gcc dot gnu.org
@ 2021-07-14 21:38 ` segher at gcc dot gnu.org
  2021-07-14 21:54 ` wschmidt at gcc dot gnu.org
                   ` (6 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: segher at gcc dot gnu.org @ 2021-07-14 21:38 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #7 from Segher Boessenkool <segher at gcc dot gnu.org> ---
That patch is pre-approved (if it works ;-) ) Bill.  Thanks!

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (7 preceding siblings ...)
  2021-07-14 21:38 ` segher at gcc dot gnu.org
@ 2021-07-14 21:54 ` wschmidt at gcc dot gnu.org
  2021-07-15 15:17 ` cvs-commit at gcc dot gnu.org
                   ` (5 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: wschmidt at gcc dot gnu.org @ 2021-07-14 21:54 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from Bill Schmidt <wschmidt at gcc dot gnu.org> ---
Small change required to actually check that it's a SET insn.  (oops) 
Otherwise looks like it passed regstrap.  Testing the revised patch now. 
Thanks for the pre-review!

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (8 preceding siblings ...)
  2021-07-14 21:54 ` wschmidt at gcc dot gnu.org
@ 2021-07-15 15:17 ` cvs-commit at gcc dot gnu.org
  2021-07-15 15:18 ` wschmidt at gcc dot gnu.org
                   ` (4 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-07-15 15:17 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #9 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by William Schmidt <wschmidt@gcc.gnu.org>:

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

commit r12-2325-gad5f8ac1d2f2dc92d43663243b52f9e9eb3cf7c0
Author: Bill Schmidt <wschmidt@linux.ibm.com>
Date:   Thu Jul 15 10:16:17 2021 -0500

    rs6000: Don't let swaps pass break multiply low-part (PR101129)

    2021-07-15  Bill Schmidt  <wschmidt@linux.ibm.com>

    gcc/
            PR target/101129
            * config/rs6000/rs6000-p8swap.c (has_part_mult): New.
            (rs6000_analyze_swaps): Insns containing a subreg of a mult are
            not swappable.

    gcc/testsuite/
            PR target/101129
            * gcc.target/powerpc/pr101129.c: New.

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (9 preceding siblings ...)
  2021-07-15 15:17 ` cvs-commit at gcc dot gnu.org
@ 2021-07-15 15:18 ` wschmidt at gcc dot gnu.org
  2021-07-19 17:52 ` cvs-commit at gcc dot gnu.org
                   ` (3 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: wschmidt at gcc dot gnu.org @ 2021-07-15 15:18 UTC (permalink / raw)
  To: gcc-bugs

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

Bill Schmidt <wschmidt at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|12.0                        |
      Known to work|                            |12.0

--- Comment #10 from Bill Schmidt <wschmidt at gcc dot gnu.org> ---
Fixed on trunk, but will require backports.

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (10 preceding siblings ...)
  2021-07-15 15:18 ` wschmidt at gcc dot gnu.org
@ 2021-07-19 17:52 ` cvs-commit at gcc dot gnu.org
  2021-07-19 19:42 ` cvs-commit at gcc dot gnu.org
                   ` (2 subsequent siblings)
  14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-07-19 17:52 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #11 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by William Schmidt
<wschmidt@gcc.gnu.org>:

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

commit r11-8780-gac0efe3c6fc6231b20ffd684956a4a5c3c54a96b
Author: Bill Schmidt <wschmidt@linux.ibm.com>
Date:   Mon Jul 19 12:49:17 2021 -0500

    rs6000: Don't let swaps pass break multiply low-part (PR101129)

    Backport from mainline.

    2021-07-15  Bill Schmidt  <wschmidt@linux.ibm.com>

    gcc/
            PR target/101129
            * config/rs6000/rs6000-p8swap.c (has_part_mult): New.
            (rs6000_analyze_swaps): Insns containing a subreg of a mult are
            not swappable.

    gcc/testsuite/
            PR target/101129
            * gcc.target/powerpc/pr101129.c: New.

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (11 preceding siblings ...)
  2021-07-19 17:52 ` cvs-commit at gcc dot gnu.org
@ 2021-07-19 19:42 ` cvs-commit at gcc dot gnu.org
  2021-07-19 21:16 ` cvs-commit at gcc dot gnu.org
  2021-07-19 21:18 ` wschmidt at gcc dot gnu.org
  14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-07-19 19:42 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #12 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-10 branch has been updated by William Schmidt
<wschmidt@gcc.gnu.org>:

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

commit r10-9990-gecad28561c47f5b2652a03e9b67cf37c13d88f53
Author: Bill Schmidt <wschmidt@linux.ibm.com>
Date:   Mon Jul 19 14:38:23 2021 -0500

    rs6000: Don't let swaps pass break multiply low-part (PR101129)

    Backport from mainline.

    2021-07-15  Bill Schmidt  <wschmidt@linux.ibm.com>

    gcc/
            PR target/101129
            * config/rs6000/rs6000-p8swap.c (has_part_mult): New.
            (rs6000_analyze_swaps): Insns containing a subreg of a mult are
            not swappable.

    gcc/testsuite/
            PR target/101129
            * gcc.target/powerpc/pr101129.c: New.

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (12 preceding siblings ...)
  2021-07-19 19:42 ` cvs-commit at gcc dot gnu.org
@ 2021-07-19 21:16 ` cvs-commit at gcc dot gnu.org
  2021-07-19 21:18 ` wschmidt at gcc dot gnu.org
  14 siblings, 0 replies; 16+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-07-19 21:16 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #13 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-9 branch has been updated by William Schmidt
<wschmidt@gcc.gnu.org>:

https://gcc.gnu.org/g:3e4b43ec9a937866ead88e996bd200b116a1766c

commit r9-9632-g3e4b43ec9a937866ead88e996bd200b116a1766c
Author: Bill Schmidt <wschmidt@linux.ibm.com>
Date:   Mon Jul 19 16:14:36 2021 -0500

    rs6000: Don't let swaps pass break multiply low-part (PR101129)

    Backport from mainline.

    2021-07-15  Bill Schmidt  <wschmidt@linux.ibm.com>

    gcc/
            PR target/101129
            * config/rs6000/rs6000-p8swap.c (has_part_mult): New.
            (rs6000_analyze_swaps): Insns containing a subreg of a mult are
            not swappable.

    gcc/testsuite/
            PR target/101129
            * gcc.target/powerpc/pr101129.c: New.

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

* [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839
  2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
                   ` (13 preceding siblings ...)
  2021-07-19 21:16 ` cvs-commit at gcc dot gnu.org
@ 2021-07-19 21:18 ` wschmidt at gcc dot gnu.org
  14 siblings, 0 replies; 16+ messages in thread
From: wschmidt at gcc dot gnu.org @ 2021-07-19 21:18 UTC (permalink / raw)
  To: gcc-bugs

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

Bill Schmidt <wschmidt at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED
      Known to fail|11.1.1                      |

--- Comment #14 from Bill Schmidt <wschmidt at gcc dot gnu.org> ---
Now fixed everywhere.

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

end of thread, other threads:[~2021-07-19 21:18 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-18 18:47 [Bug rtl-optimization/101129] New: [11/12 Regression] wrong code at -O1 zsojka at seznam dot cz
2021-06-18 18:49 ` [Bug target/101129] " pinskia at gcc dot gnu.org
2021-06-18 20:39 ` [Bug target/101129] [11/12 Regression] wrong code at -O1 since r11-5839 jakub at gcc dot gnu.org
2021-06-18 20:46 ` jakub at gcc dot gnu.org
2021-06-21  6:18 ` rguenth at gcc dot gnu.org
2021-07-13 19:39 ` jakub at gcc dot gnu.org
2021-07-13 21:19 ` wschmidt at gcc dot gnu.org
2021-07-14 20:22 ` wschmidt at gcc dot gnu.org
2021-07-14 21:38 ` segher at gcc dot gnu.org
2021-07-14 21:54 ` wschmidt at gcc dot gnu.org
2021-07-15 15:17 ` cvs-commit at gcc dot gnu.org
2021-07-15 15:18 ` wschmidt at gcc dot gnu.org
2021-07-19 17:52 ` cvs-commit at gcc dot gnu.org
2021-07-19 19:42 ` cvs-commit at gcc dot gnu.org
2021-07-19 21:16 ` cvs-commit at gcc dot gnu.org
2021-07-19 21:18 ` wschmidt 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).