public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/95256] New: [11 Regression] ICE in convert_move, at expr.c:278
@ 2020-05-21 10:26 asolokha at gmx dot com
  2020-05-21 13:16 ` [Bug target/95256] [11 Regression] ICE in convert_move, at expr.c:278 since r11-263-g7c355156aa20eaec marxin at gcc dot gnu.org
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: asolokha at gmx dot com @ 2020-05-21 10:26 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 95256
           Summary: [11 Regression] ICE in convert_move, at expr.c:278
           Product: gcc
           Version: 11.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: asolokha at gmx dot com
  Target Milestone: ---
            Target: x86_64-unknown-linux-gnu

gcc-11.0.0-alpha20200517 snapshot (g:2b9a271b2d0ba340234a138b7f8289bd7dca2fc5)
ICEs when compiling the following testcase w/ -march=skylake-avx512 -O1
-ftree-slp-vectorize:

struct cy {
  long int m5;
  long int i3;
};

void
ys (struct cy *jl, float u6)
{
  jl->m5 = u6;
  jl->i3 = u6;
}

 x86_64-unknown-linux-gnu-gcc-11.0.0 -march=skylake-avx512 -O1
-ftree-slp-vectorize -c mwwf4yc9.c
during RTL pass: expand
mwwf4yc9.c: In function 'ys':
mwwf4yc9.c:9:10: internal compiler error: in convert_move, at expr.c:278
    9 |   jl->m5 = u6;
      |   ~~~~~~~^~~~
0x6212ce convert_move(rtx_def*, rtx_def*, int)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/expr.c:278
0xa27290 convert_modes(machine_mode, machine_mode, rtx_def*, int)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/expr.c:737
0xc94665 expand_fix(rtx_def*, rtx_def*, int)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/optabs.c:4991
0xa1d1c5 expand_expr_real_2(separate_ops*, rtx_def*, machine_mode,
expand_modifier)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/expr.c:9139
0xa2352a expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/expr.c:10054
0xa3056a expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier,
rtx_def**, bool)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/expr.c:8358
0xa3056a expand_expr
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/expr.h:282
0xa3056a expand_assignment(tree_node*, tree_node*, bool)
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/expr.c:5090
0x8fdf17 expand_gimple_stmt_1
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/cfgexpand.c:3749
0x8fdf17 expand_gimple_stmt
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/cfgexpand.c:3847
0x903b11 expand_gimple_basic_block
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/cfgexpand.c:5887
0x9055f6 execute
       
/var/tmp/portage/sys-devel/gcc-11.0.0_alpha20200517/work/gcc-11-20200517/gcc/cfgexpand.c:6571

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

* [Bug target/95256] [11 Regression] ICE in convert_move, at expr.c:278 since r11-263-g7c355156aa20eaec
  2020-05-21 10:26 [Bug target/95256] New: [11 Regression] ICE in convert_move, at expr.c:278 asolokha at gmx dot com
@ 2020-05-21 13:16 ` marxin at gcc dot gnu.org
  2020-05-21 18:26 ` ubizjak at gmail dot com
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: marxin at gcc dot gnu.org @ 2020-05-21 13:16 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |marxin at gcc dot gnu.org,
                   |                            |uros at gcc dot gnu.org
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2020-05-21
            Summary|[11 Regression] ICE in      |[11 Regression] ICE in
                   |convert_move, at expr.c:278 |convert_move, at expr.c:278
                   |                            |since
                   |                            |r11-263-g7c355156aa20eaec
     Ever confirmed|0                           |1

--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> ---
Started with r11-263-g7c355156aa20eaec.

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

* [Bug target/95256] [11 Regression] ICE in convert_move, at expr.c:278 since r11-263-g7c355156aa20eaec
  2020-05-21 10:26 [Bug target/95256] New: [11 Regression] ICE in convert_move, at expr.c:278 asolokha at gmx dot com
  2020-05-21 13:16 ` [Bug target/95256] [11 Regression] ICE in convert_move, at expr.c:278 since r11-263-g7c355156aa20eaec marxin at gcc dot gnu.org
@ 2020-05-21 18:26 ` ubizjak at gmail dot com
  2020-05-21 18:38 ` ubizjak at gmail dot com
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: ubizjak at gmail dot com @ 2020-05-21 18:26 UTC (permalink / raw)
  To: gcc-bugs

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

Uroš Bizjak <ubizjak at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Target Milestone|---                         |11.0

--- Comment #2 from Uroš Bizjak <ubizjak at gmail dot com> ---
The patch exposes another case of named pattern with non-conformant operand
mode. 

This time, it is:

(define_insn "fix<fixunssuffix>_truncv2sfv2di2<mask_name>"
  [(set (match_operand:V2DI 0 "register_operand" "=v")
        (any_fix:V2DI
          (vec_select:V2SF
            (match_operand:V4SF 1 "nonimmediate_operand" "vm")
            (parallel [(const_int 0) (const_int 1)]))))]
  "TARGET_AVX512DQ && TARGET_AVX512VL"
  "vcvttps2<fixsuffix>qq\t{%1, %0<mask_operand2>|%0<mask_operand2>, %q1}"
  [(set_attr "type" "ssecvt")
   (set_attr "prefix" "evex")
   (set_attr "mode" "TI")])

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

* [Bug target/95256] [11 Regression] ICE in convert_move, at expr.c:278 since r11-263-g7c355156aa20eaec
  2020-05-21 10:26 [Bug target/95256] New: [11 Regression] ICE in convert_move, at expr.c:278 asolokha at gmx dot com
  2020-05-21 13:16 ` [Bug target/95256] [11 Regression] ICE in convert_move, at expr.c:278 since r11-263-g7c355156aa20eaec marxin at gcc dot gnu.org
  2020-05-21 18:26 ` ubizjak at gmail dot com
@ 2020-05-21 18:38 ` ubizjak at gmail dot com
  2020-05-26  3:41 ` cvs-commit at gcc dot gnu.org
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: ubizjak at gmail dot com @ 2020-05-21 18:38 UTC (permalink / raw)
  To: gcc-bugs

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

Uroš Bizjak <ubizjak at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Depends on|                            |95125
                 CC|                            |crazylht at gmail dot com

--- Comment #3 from Uroš Bizjak <ubizjak at gmail dot com> ---
This PR and PR95211 will be fixed by the  for PR95125. Here, the offending
pattern should be renamed to something like

avx512dq_fix<fixunssuffix>_truncv2sfv2di2<mask_name>

and an expander should be added:

(define_expand "fix<fixunssuffix>_truncv2sfv2di2"
  [(set (match_operand:V2DI 0 "register_operand")
        (any_fix:V2DI
          (match_operand:V2SF 1 "nonimmediate_operand")))]
  "TARGET_AVX512DQ && TARGET_AVX512VL"
{
  if (!MEM_P (operands[1]))
    {
      operands[1] = simplify_gen_subreg (V4SFmode, operands[1], V2SFmode, 0);
      emit_insn (gen_avx512dq_fix<fixunssuffix>_truncv2sfv2di2 (operands[0],
operands[1]));
      DONE;
    }
})


Referenced Bugs:

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95125
[Bug 95125] Unoptimal code for vectorized conversions

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

* [Bug target/95256] [11 Regression] ICE in convert_move, at expr.c:278 since r11-263-g7c355156aa20eaec
  2020-05-21 10:26 [Bug target/95256] New: [11 Regression] ICE in convert_move, at expr.c:278 asolokha at gmx dot com
                   ` (2 preceding siblings ...)
  2020-05-21 18:38 ` ubizjak at gmail dot com
@ 2020-05-26  3:41 ` cvs-commit at gcc dot gnu.org
  2020-05-28 17:14 ` asolokha at gmx dot com
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2020-05-26  3:41 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by hongtao Liu <liuhongt@gcc.gnu.org>:

https://gcc.gnu.org/g:9d0dc47de6ed9609fe7445ea0941a6a822c80f88

commit r11-621-g9d0dc47de6ed9609fe7445ea0941a6a822c80f88
Author: liuhongt <hongtao.liu@intel.com>
Date:   Tue May 26 11:14:31 2020 +0800

    Fix non-comforming expander for
floatv2div2sf2,floatunsv2div2sf2,fix_truncv2sfv2di,fixuns_truncv2sfv2di.

    2020-05-26  Hongtao Liu  <hongtao.liu@intel.com>
                Uroš Bizjak  <ubizjak@gmail.com>

    gcc/ChangeLog:
            PR target/95211
            PR target/95256
            * config/i386/sse.md (<floatunssuffix>v2div2sf2): New expander.
            (fix<fixunssuffix>_truncv2sfv2di2): Ditto.
            (avx512dq_float<floatunssuffix>v2div2sf2): Renaming from
            float<floatunssuffix>v2div2sf2.
            (avx512dq_fix<fixunssuffix>_truncv2sfv2di2<mask_name>):
            Renaming from fix<fixunssuffix>_truncv2sfv2di2<mask_name>.
            (vec_pack<floatprefix>_float_<mode>): Adjust icode name.
            (vec_unpack_<fixprefix>fix_trunc_lo_<mode>): Ditto.
            (vec_unpack_<fixprefix>fix_trunc_hi_<mode>): Ditto.
            * config/i386/i386-builtin.def: Ditto.
            * emit-rtl.c (validate_subreg): Allow use of *paradoxical* vector
            subregs when both omode and imode are vector mode and
            have the same inner mode.

    gcc/testsuite/ChangeLog
            * gcc.target/i386/pr95211.c: New test.

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

* [Bug target/95256] [11 Regression] ICE in convert_move, at expr.c:278 since r11-263-g7c355156aa20eaec
  2020-05-21 10:26 [Bug target/95256] New: [11 Regression] ICE in convert_move, at expr.c:278 asolokha at gmx dot com
                   ` (3 preceding siblings ...)
  2020-05-26  3:41 ` cvs-commit at gcc dot gnu.org
@ 2020-05-28 17:14 ` asolokha at gmx dot com
  2020-05-29  8:31 ` crazylht at gmail dot com
  2020-05-29 10:06 ` asolokha at gmx dot com
  6 siblings, 0 replies; 8+ messages in thread
From: asolokha at gmx dot com @ 2020-05-28 17:14 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Arseny Solokha <asolokha at gmx dot com> ---
Is there some further work pending, or should this PR be closed now?

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

* [Bug target/95256] [11 Regression] ICE in convert_move, at expr.c:278 since r11-263-g7c355156aa20eaec
  2020-05-21 10:26 [Bug target/95256] New: [11 Regression] ICE in convert_move, at expr.c:278 asolokha at gmx dot com
                   ` (4 preceding siblings ...)
  2020-05-28 17:14 ` asolokha at gmx dot com
@ 2020-05-29  8:31 ` crazylht at gmail dot com
  2020-05-29 10:06 ` asolokha at gmx dot com
  6 siblings, 0 replies; 8+ messages in thread
From: crazylht at gmail dot com @ 2020-05-29  8:31 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #6 from Hongtao.liu <crazylht at gmail dot com> ---
(In reply to Arseny Solokha from comment #5)
> Is there some further work pending, or should this PR be closed now?

It's fixed.

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

* [Bug target/95256] [11 Regression] ICE in convert_move, at expr.c:278 since r11-263-g7c355156aa20eaec
  2020-05-21 10:26 [Bug target/95256] New: [11 Regression] ICE in convert_move, at expr.c:278 asolokha at gmx dot com
                   ` (5 preceding siblings ...)
  2020-05-29  8:31 ` crazylht at gmail dot com
@ 2020-05-29 10:06 ` asolokha at gmx dot com
  6 siblings, 0 replies; 8+ messages in thread
From: asolokha at gmx dot com @ 2020-05-29 10:06 UTC (permalink / raw)
  To: gcc-bugs

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

Arseny Solokha <asolokha at gmx dot com> changed:

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

--- Comment #7 from Arseny Solokha <asolokha at gmx dot com> ---
.

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

end of thread, other threads:[~2020-05-29 10:06 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-21 10:26 [Bug target/95256] New: [11 Regression] ICE in convert_move, at expr.c:278 asolokha at gmx dot com
2020-05-21 13:16 ` [Bug target/95256] [11 Regression] ICE in convert_move, at expr.c:278 since r11-263-g7c355156aa20eaec marxin at gcc dot gnu.org
2020-05-21 18:26 ` ubizjak at gmail dot com
2020-05-21 18:38 ` ubizjak at gmail dot com
2020-05-26  3:41 ` cvs-commit at gcc dot gnu.org
2020-05-28 17:14 ` asolokha at gmx dot com
2020-05-29  8:31 ` crazylht at gmail dot com
2020-05-29 10:06 ` asolokha at gmx dot com

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).