public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm
@ 2022-04-19 17:34 raj.khem at gmail dot com
  2022-04-20  3:31 ` [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux pinskia at gcc dot gnu.org
                   ` (16 more replies)
  0 siblings, 17 replies; 18+ messages in thread
From: raj.khem at gmail dot com @ 2022-04-19 17:34 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 105312
           Summary: attribute__((optimize("-O3")))
                    stress_matrix_xy_identity compiling stress-ng for arm
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: middle-end
          Assignee: unassigned at gcc dot gnu.org
          Reporter: raj.khem at gmail dot com
  Target Milestone: ---

GCC 12 gets into an ICE when compiling this testcase (reduced from stress-ng)

typedef float stress_matrix_type_t;
typedef unsigned int size_t;
static void __attribute__((optimize("-O3"))) stress_matrix_xy_identity(
 const size_t n,
 stress_matrix_type_t a[restrict n][n],
 stress_matrix_type_t b[restrict n][n],
 stress_matrix_type_t r[restrict n][n])
{
 register size_t i;
 (void)a;
 (void)b;
 for (i = 0; i < n; i++) {
  register size_t j;
  for (j = 0; j < n; j++)
   r[i][j] = (i == j) ? 1.0 : 0.0;
   return;
 }
}

===============================

arm-yoe-linux-musleabi-gcc -mthumb -mfpu=neon -mfloat-abi=hard -mcpu=cortex-a15
-fstack-protector-strong -D_FORTIFY_SOURCE=2 stress-matrix.i
during GIMPLE pass: isel
stress-matrix.i: In function 'stress_matrix_xy_identity':
stress-matrix.i:3:46: internal compiler error: in gimple_expand_vec_cond_expr,
at gimple-isel.cc:268
    3 | static void __attribute__((optimize("-O3"))) stress_matrix_xy_identity(
      |                                              ^~~~~~~~~~~~~~~~~~~~~~~~~
0x15d4b28 internal_error(char const*, ...)
        ???:0
0x6005fb fancy_abort(char const*, int, char const*)
        ???:0
Please submit a full bug report, with preprocessed source (by using
-freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

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

* [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
@ 2022-04-20  3:31 ` pinskia at gcc dot gnu.org
  2022-04-20  7:37 ` [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520 marxin at gcc dot gnu.org
                   ` (15 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-04-20  3:31 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|attribute__((optimize("-O3" |[12 Regression] ICE in
                   |)))                         |gimple_expand_vec_cond_expr
                   |stress_matrix_xy_identity   |on arm-linux
                   |compiling stress-ng for arm |
   Target Milestone|---                         |12.0
          Component|middle-end                  |tree-optimization
           Keywords|                            |ice-on-valid-code

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

* [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
  2022-04-20  3:31 ` [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux pinskia at gcc dot gnu.org
@ 2022-04-20  7:37 ` marxin at gcc dot gnu.org
  2022-04-20  7:44 ` rguenth at gcc dot gnu.org
                   ` (14 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: marxin at gcc dot gnu.org @ 2022-04-20  7:37 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
     Ever confirmed|0                           |1
                 CC|                            |clyon at gcc dot gnu.org,
                   |                            |marxin at gcc dot gnu.org
            Summary|[12 Regression] ICE in      |[12 Regression] ICE in
                   |gimple_expand_vec_cond_expr |gimple_expand_vec_cond_expr
                   |on arm-linux                |on arm-linux since
                   |                            |r12-834-ga6eacbf1055520
   Last reconfirmed|                            |2022-04-20
             Status|UNCONFIRMED                 |NEW

--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> ---
Started with r12-834-ga6eacbf1055520.

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

* [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
  2022-04-20  3:31 ` [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux pinskia at gcc dot gnu.org
  2022-04-20  7:37 ` [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520 marxin at gcc dot gnu.org
@ 2022-04-20  7:44 ` rguenth at gcc dot gnu.org
  2022-04-20  7:44 ` rguenth at gcc dot gnu.org
                   ` (13 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-04-20  7:44 UTC (permalink / raw)
  To: gcc-bugs

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

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

_37 = vect_vec_iv_.13_32 == { 0, 0, 0, 0 };
vect_iftmp.14_38 = VEC_COND_EXPR <_37, { 1.0e+0, 1.0e+0, 1.0e+0, 1.0e+0 }, {
0.0, 0.0, 0.0, 0.0 }>;

(gdb) p debug_tree (op0)
 <ssa_name 0x7ffff642d708
    type <vector_type 0x7ffff6431888
        type <boolean_type 0x7ffff64317e0 public SI
            size <integer_cst 0x7ffff6528018 constant 32>
            unit-size <integer_cst 0x7ffff6528030 constant 4>
            align:32 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0x7ffff64317e0 precision:32 min <integer_cst 0x7ffff64326a8 -2147483648> max
<integer_cst 0x7ffff6432738 2147483647>>
        V4SI
        size <integer_cst 0x7ffff6528378 constant 128>
        unit-size <integer_cst 0x7ffff6528390 constant 16>
        align:64 warn_if_not_align:0 symtab:0 alias-set -1 canonical-type
0x7ffff6431888 nunits:4>
    visited
    def_stmt _37 = vect_vec_iv_.13_32 == { 0, 0, 0, 0 };
    version:37>

we can't do VCONDEQ, we _can_ compute op0 but do not have vcond_mask which
we assume here.  So this is a mismatch between ISEL and vector lowering
or alternatively a failure to - for non-mask vectors - provide a fallback
via masking.

For vcond_mask I see there is v2sfv2si but no v4sfv4si, so not sure whether
this can be tackled on the backend side.

Note for a masking fallback we'd have to ensure support for integer mode
bitwise ops as well as view-converting V4SF to and from V4SI.  There is

  /* Lower mask typed, non-vector mode VEC_COND_EXPRs to bitwise operations.
     Those can end up generated by folding and at least for integer mode masks
     we cannot expect vcond expanders to exist.  We lower a ? b : c
     to (b & a) | (c & ~a).  */
  if (VECTOR_BOOLEAN_TYPE_P (TREE_TYPE (lhs))
      && !VECTOR_MODE_P (mode))
    {
      gcc_assert (types_compatible_p (TREE_TYPE (op0), TREE_TYPE (op1)));
      gimple_seq stmts = NULL;
      tree type = TREE_TYPE (lhs);
      location_t loc = gimple_location (stmt);
      tree tem0 = gimple_build (&stmts, loc, BIT_AND_EXPR, type, op1, op0);
      tree tem1 = gimple_build (&stmts, loc, BIT_NOT_EXPR, type, op0);
      tree tem2 = gimple_build (&stmts, loc, BIT_AND_EXPR, type, op2, tem1);
      tree tem3 = gimple_build (&stmts, loc, BIT_IOR_EXPR, type, tem0, tem2);
      gsi_insert_seq_before (gsi, stmts, GSI_SAME_STMT);
      return gimple_build_assign (lhs, tem3);
    }

but as said the immediate failure is that veclower thinks we can handle

  _37 = vect_vec_iv_.13_32 == { 0, 0, 0, 0 };
  vect_iftmp.14_38 = VEC_COND_EXPR <_37, { 1.0e+0, 1.0e+0, 1.0e+0, 1.0e+0 }, {
0.0, 0.0, 0.0, 0.0 }>;

but ISEL thinks we cannot.  I will look into that.

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

* [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (2 preceding siblings ...)
  2022-04-20  7:44 ` rguenth at gcc dot gnu.org
@ 2022-04-20  7:44 ` rguenth at gcc dot gnu.org
  2022-04-20  8:14 ` rguenth at gcc dot gnu.org
                   ` (12 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-04-20  7:44 UTC (permalink / raw)
  To: gcc-bugs

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

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

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

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

* [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (3 preceding siblings ...)
  2022-04-20  7:44 ` rguenth at gcc dot gnu.org
@ 2022-04-20  8:14 ` rguenth at gcc dot gnu.org
  2022-04-20  8:21 ` [Bug tree-optimization/105312] [11/12 " rguenth at gcc dot gnu.org
                   ` (11 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-04-20  8:14 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
Interestingly vector lowering ends up in

can_vcond_compare_p (code=EQ, value_mode=E_V4SFmode, cmp_op_mode=E_V4SImode)

via expand_vec_cond_expr_p calling vcond_icode_p where get_vcond_icode
gets us CODE_FOR_vcondv4sfv4si.  And the key difference is that
can_vcond_compare_p uses unsigned_optab_p (code) (false for EQ) but
ISEL passes down true (the type is unsigned).  For EQ/NE whether we use
the signed or unsigned optab shouldn't matter but the query function
canonicalizes via

/* Return whether RTL code CODE corresponds to an unsigned optab.  */

static bool
unsigned_optab_p (enum rtx_code code)
{
  return code == LTU || code == LEU || code == GTU || code == GEU;
}

it's not documented that one or the other form is canonical though.

The easiest is to try both in ISEL.

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

* [Bug tree-optimization/105312] [11/12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (4 preceding siblings ...)
  2022-04-20  8:14 ` rguenth at gcc dot gnu.org
@ 2022-04-20  8:21 ` rguenth at gcc dot gnu.org
  2022-04-20  8:44 ` clyon at gcc dot gnu.org
                   ` (10 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-04-20  8:21 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|12.0                        |11.3
            Summary|[12 Regression] ICE in      |[11/12 Regression] ICE in
                   |gimple_expand_vec_cond_expr |gimple_expand_vec_cond_expr
                   |on arm-linux since          |on arm-linux since
                   |r12-834-ga6eacbf1055520     |r12-834-ga6eacbf1055520
           Priority|P3                          |P2

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
Testing a patch - the issue is latent on the GCC 11 branch at least.

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

* [Bug tree-optimization/105312] [11/12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (5 preceding siblings ...)
  2022-04-20  8:21 ` [Bug tree-optimization/105312] [11/12 " rguenth at gcc dot gnu.org
@ 2022-04-20  8:44 ` clyon at gcc dot gnu.org
  2022-04-20 11:27 ` cvs-commit at gcc dot gnu.org
                   ` (9 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: clyon at gcc dot gnu.org @ 2022-04-20  8:44 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Christophe Lyon <clyon at gcc dot gnu.org> ---
Sorry for the breakage, my patch shouldn't have modified the behavior for Neon.
I just moved the vcond_mask expander from neon.md to vec-common.md.

With Neon, I think we should have both v4sfv4si and v2sfv2si, unlike MVE where
the v2 variant does not exist.

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

* [Bug tree-optimization/105312] [11/12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (6 preceding siblings ...)
  2022-04-20  8:44 ` clyon at gcc dot gnu.org
@ 2022-04-20 11:27 ` cvs-commit at gcc dot gnu.org
  2022-04-20 11:28 ` [Bug tree-optimization/105312] [11 " rguenth at gcc dot gnu.org
                   ` (8 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-04-20 11:27 UTC (permalink / raw)
  To: gcc-bugs

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

--- 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:36f1de95a61132f63c0c07ef154abd9f435721ac

commit r12-8204-g36f1de95a61132f63c0c07ef154abd9f435721ac
Author: Richard Biener <rguenther@suse.de>
Date:   Wed Apr 20 10:17:24 2022 +0200

    tree-optimization/105312 - fix ISEL VCOND expansion

    The following aligns ISEL VEC_COND_EXPR expansion using VCOND
    with the optab query done by vector lowering.  Instead of only
    allowing the signed optab to provide EQ/NE compares we allow both
    here though since there seems to be no documented canonicalization.

    2022-04-20  Richard Biener  <rguenther@suse.de>

            PR tree-optimization/105312
            * gimple-isel.cc (gimple_expand_vec_cond_expr): Query both
            VCOND and VCONDU for EQ and NE.

            * gcc.target/arm/pr105312.c: New testcase.

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

* [Bug tree-optimization/105312] [11 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (7 preceding siblings ...)
  2022-04-20 11:27 ` cvs-commit at gcc dot gnu.org
@ 2022-04-20 11:28 ` rguenth at gcc dot gnu.org
  2022-04-20 15:28 ` raj.khem at gmail dot com
                   ` (7 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-04-20 11:28 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[11/12 Regression] ICE in   |[11 Regression] ICE in
                   |gimple_expand_vec_cond_expr |gimple_expand_vec_cond_expr
                   |on arm-linux since          |on arm-linux since
                   |r12-834-ga6eacbf1055520     |r12-834-ga6eacbf1055520

--- Comment #7 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed on trunk sofar - the target issue might still exist though.

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

* [Bug tree-optimization/105312] [11 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (8 preceding siblings ...)
  2022-04-20 11:28 ` [Bug tree-optimization/105312] [11 " rguenth at gcc dot gnu.org
@ 2022-04-20 15:28 ` raj.khem at gmail dot com
  2022-04-21  7:51 ` rguenth at gcc dot gnu.org
                   ` (6 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: raj.khem at gmail dot com @ 2022-04-20 15:28 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #8 from Khem Raj <raj.khem at gmail dot com> ---
yeah I can verify that the ICE is gone.

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

* [Bug tree-optimization/105312] [11 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (9 preceding siblings ...)
  2022-04-20 15:28 ` raj.khem at gmail dot com
@ 2022-04-21  7:51 ` rguenth at gcc dot gnu.org
  2022-05-12 11:34 ` rguenth at gcc dot gnu.org
                   ` (5 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-04-21  7:51 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|11.3                        |11.4

--- Comment #9 from Richard Biener <rguenth at gcc dot gnu.org> ---
GCC 11.3 is being released, retargeting bugs to GCC 11.4.

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

* [Bug tree-optimization/105312] [11 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (10 preceding siblings ...)
  2022-04-21  7:51 ` rguenth at gcc dot gnu.org
@ 2022-05-12 11:34 ` rguenth at gcc dot gnu.org
  2022-05-19 14:03 ` cvs-commit at gcc dot gnu.org
                   ` (4 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-05-12 11:34 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #10 from Richard Biener <rguenth at gcc dot gnu.org> ---
*** Bug 105573 has been marked as a duplicate of this bug. ***

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

* [Bug tree-optimization/105312] [11 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (11 preceding siblings ...)
  2022-05-12 11:34 ` rguenth at gcc dot gnu.org
@ 2022-05-19 14:03 ` cvs-commit at gcc dot gnu.org
  2022-05-19 14:06 ` rguenth at gcc dot gnu.org
                   ` (3 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2022-05-19 14:03 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #11 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:33914983cf3734c2f8079963ba49fcc117499ef3

commit r11-10018-g33914983cf3734c2f8079963ba49fcc117499ef3
Author: Richard Biener <rguenther@suse.de>
Date:   Wed Apr 20 10:17:24 2022 +0200

    tree-optimization/105312 - fix ISEL VCOND expansion

    The following aligns ISEL VEC_COND_EXPR expansion using VCOND
    with the optab query done by vector lowering.  Instead of only
    allowing the signed optab to provide EQ/NE compares we allow both
    here though since there seems to be no documented canonicalization.

    2022-04-20  Richard Biener  <rguenther@suse.de>

            PR tree-optimization/105312
            * gimple-isel.cc (gimple_expand_vec_cond_expr): Query both
            VCOND and VCONDU for EQ and NE.

            * gcc.target/arm/pr105312.c: New testcase.

    (cherry picked from commit 36f1de95a61132f63c0c07ef154abd9f435721ac)

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

* [Bug tree-optimization/105312] [11 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (12 preceding siblings ...)
  2022-05-19 14:03 ` cvs-commit at gcc dot gnu.org
@ 2022-05-19 14:06 ` rguenth at gcc dot gnu.org
  2022-05-20  3:50 ` sam at gentoo dot org
                   ` (2 subsequent siblings)
  16 siblings, 0 replies; 18+ messages in thread
From: rguenth at gcc dot gnu.org @ 2022-05-19 14:06 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|12.0                        |11.3.0, 12.1.0
         Resolution|---                         |FIXED
             Status|ASSIGNED                    |RESOLVED
      Known to work|                            |11.3.1, 12.1.1

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

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

* [Bug tree-optimization/105312] [11 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (13 preceding siblings ...)
  2022-05-19 14:06 ` rguenth at gcc dot gnu.org
@ 2022-05-20  3:50 ` sam at gentoo dot org
  2022-10-20 19:55 ` pinskia at gcc dot gnu.org
  2023-04-25  6:21 ` cvs-commit at gcc dot gnu.org
  16 siblings, 0 replies; 18+ messages in thread
From: sam at gentoo dot org @ 2022-05-20  3:50 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #13 from Sam James <sam at gentoo dot org> ---
I'm guessing not but is it worth adding the SPARC testcase from the dupe, given
this one is only run for arm?

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

* [Bug tree-optimization/105312] [11 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (14 preceding siblings ...)
  2022-05-20  3:50 ` sam at gentoo dot org
@ 2022-10-20 19:55 ` pinskia at gcc dot gnu.org
  2023-04-25  6:21 ` cvs-commit at gcc dot gnu.org
  16 siblings, 0 replies; 18+ messages in thread
From: pinskia at gcc dot gnu.org @ 2022-10-20 19:55 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |andrew at ishiboo dot com

--- Comment #14 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
*** Bug 107336 has been marked as a duplicate of this bug. ***

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

* [Bug tree-optimization/105312] [11 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520
  2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
                   ` (15 preceding siblings ...)
  2022-10-20 19:55 ` pinskia at gcc dot gnu.org
@ 2023-04-25  6:21 ` cvs-commit at gcc dot gnu.org
  16 siblings, 0 replies; 18+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2023-04-25  6:21 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #15 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:a4916881b74c36c613a8a7abe040bb197ea8ba75

commit r14-210-ga4916881b74c36c613a8a7abe040bb197ea8ba75
Author: Sam James <sam@gentoo.org>
Date:   Tue Apr 25 08:20:29 2023 +0200

    [PATCH v2] testsuite: Add testcase for sparc ICE [PR105573]

    r11-10018-g33914983cf3734c2f8079963ba49fcc117499ef3 fixed PR105312 and
added
    a test case for target/arm but the duplicate PR105573 has a test case for
    target/sparc that was uncommitted until now.

    2023-04-21  Sam James   <sam@gentoo.org>

            PR tree-optimization/105312
            PR target/105573
    gcc/testsuite/
            * gcc.target/sparc/pr105573.c: New test.

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

end of thread, other threads:[~2023-04-25  6:21 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-19 17:34 [Bug middle-end/105312] New: attribute__((optimize("-O3"))) stress_matrix_xy_identity compiling stress-ng for arm raj.khem at gmail dot com
2022-04-20  3:31 ` [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux pinskia at gcc dot gnu.org
2022-04-20  7:37 ` [Bug tree-optimization/105312] [12 Regression] ICE in gimple_expand_vec_cond_expr on arm-linux since r12-834-ga6eacbf1055520 marxin at gcc dot gnu.org
2022-04-20  7:44 ` rguenth at gcc dot gnu.org
2022-04-20  7:44 ` rguenth at gcc dot gnu.org
2022-04-20  8:14 ` rguenth at gcc dot gnu.org
2022-04-20  8:21 ` [Bug tree-optimization/105312] [11/12 " rguenth at gcc dot gnu.org
2022-04-20  8:44 ` clyon at gcc dot gnu.org
2022-04-20 11:27 ` cvs-commit at gcc dot gnu.org
2022-04-20 11:28 ` [Bug tree-optimization/105312] [11 " rguenth at gcc dot gnu.org
2022-04-20 15:28 ` raj.khem at gmail dot com
2022-04-21  7:51 ` rguenth at gcc dot gnu.org
2022-05-12 11:34 ` rguenth at gcc dot gnu.org
2022-05-19 14:03 ` cvs-commit at gcc dot gnu.org
2022-05-19 14:06 ` rguenth at gcc dot gnu.org
2022-05-20  3:50 ` sam at gentoo dot org
2022-10-20 19:55 ` pinskia at gcc dot gnu.org
2023-04-25  6:21 ` cvs-commit 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).