public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/101788] New: [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857
@ 2021-08-05  8:21 marxin at gcc dot gnu.org
  2021-08-05  8:22 ` [Bug target/101788] " marxin at gcc dot gnu.org
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-08-05  8:21 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 101788
           Summary: [12 Regression] ICE in extract_bit_field_1 at
                    gcc/expmed.c:1857
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: marxin at gcc dot gnu.org
                CC: rsandifo at gcc dot gnu.org
  Target Milestone: ---

Must be a recent regression:

$ aarch64-linux-gnu-gcc
/home/marxin/Programming/gcc/gcc/testsuite/gcc.target/aarch64/sve/ext_2.c -O3
-c
during RTL pass: expand
/home/marxin/Programming/gcc/gcc/testsuite/gcc.target/aarch64/sve/ext_2.c: In
function ‘foo’:
/home/marxin/Programming/gcc/gcc/testsuite/gcc.target/aarch64/sve/ext_2.c:13:5:
internal compiler error: Segmentation fault
   13 |   x = __builtin_shuffle (y, y, (vnx4si) { 1, 2, 3, 4, 5, 6, 7, 8 });
      |   ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
0xbfecdf crash_signal
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/toplev.c:328
0x7ffff786239f ???
        ../sysdeps/unix/sysv/linux/sigaction.c:10
0x8d926c extract_integral_bit_field
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expmed.c:1984
0x8d926c extract_bit_field_1
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expmed.c:1857
0x8d9460 extract_bit_field(rtx_def*, poly_int<2u, unsigned long>, poly_int<2u,
unsigned long>, int, rtx_def*, machine_mode, machine_mode, bool, rtx_def**)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expmed.c:2129
0x8ee982 expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:11374
0x8ef4be expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier,
rtx_def**, bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:8713
0x8ef4be expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:10484
0x8fe005 expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier,
rtx_def**, bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:8713
0x8fe005 expand_normal
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.h:307
0x8fe005 store_field
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:7439
0x8fd4f6 store_constructor
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:7289
0x8fec81 expand_constructor
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:8634
0x8eed72 expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:10819
0x8ef4be expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier,
rtx_def**, bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:8713
0x8ef4be expand_expr_real_1(tree_node*, rtx_def*, machine_mode,
expand_modifier, rtx_def**, bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:10484
0x8f926e expand_expr_real(tree_node*, rtx_def*, machine_mode, expand_modifier,
rtx_def**, bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:8713
0x8f926e store_expr(tree_node*, rtx_def*, int, bool, bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:6064
0x8fa789 expand_assignment(tree_node*, tree_node*, bool)
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/expr.c:5796
0x7ed16a expand_gimple_stmt_1
       
/home/marxin/BIG/buildbot/buildworker/marxinbox-gcc-trunk-aarch64/build/gcc/cfgexpand.c:3945
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

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

* [Bug target/101788] [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857
  2021-08-05  8:21 [Bug target/101788] New: [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 marxin at gcc dot gnu.org
@ 2021-08-05  8:22 ` marxin at gcc dot gnu.org
  2021-08-11  8:25 ` [Bug target/101788] [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 since r12-2728-g2724d1bba6b36451404811fba3244f8897717ef3 marxin at gcc dot gnu.org
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-08-05  8:22 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Known to fail|                            |12.0
   Last reconfirmed|                            |2021-08-05
             Status|UNCONFIRMED                 |NEW
     Ever confirmed|0                           |1
   Target Milestone|---                         |12.0

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

* [Bug target/101788] [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 since r12-2728-g2724d1bba6b36451404811fba3244f8897717ef3
  2021-08-05  8:21 [Bug target/101788] New: [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 marxin at gcc dot gnu.org
  2021-08-05  8:22 ` [Bug target/101788] " marxin at gcc dot gnu.org
@ 2021-08-11  8:25 ` marxin at gcc dot gnu.org
  2021-08-11  9:05 ` rguenth at gcc dot gnu.org
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: marxin at gcc dot gnu.org @ 2021-08-11  8:25 UTC (permalink / raw)
  To: gcc-bugs

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

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

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|[12 Regression] ICE in      |[12 Regression] ICE in
                   |extract_bit_field_1 at      |extract_bit_field_1 at
                   |gcc/expmed.c:1857           |gcc/expmed.c:1857 since
                   |                            |r12-2728-g2724d1bba6b364514
                   |                            |04811fba3244f8897717ef3
                 CC|                            |rguenth at gcc dot gnu.org

--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> ---
Started with Richi's r12-2728-g2724d1bba6b36451404811fba3244f8897717ef3.

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

* [Bug target/101788] [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 since r12-2728-g2724d1bba6b36451404811fba3244f8897717ef3
  2021-08-05  8:21 [Bug target/101788] New: [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 marxin at gcc dot gnu.org
  2021-08-05  8:22 ` [Bug target/101788] " marxin at gcc dot gnu.org
  2021-08-11  8:25 ` [Bug target/101788] [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 since r12-2728-g2724d1bba6b36451404811fba3244f8897717ef3 marxin at gcc dot gnu.org
@ 2021-08-11  9:05 ` rguenth at gcc dot gnu.org
  2021-08-11 12:10 ` rguenth at gcc dot gnu.org
  2021-08-11 14:25 ` rguenth at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-08-11  9:05 UTC (permalink / raw)
  To: gcc-bugs

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

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

--- Comment #2 from Richard Biener <rguenth at gcc dot gnu.org> ---
I will have a look.

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

* [Bug target/101788] [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 since r12-2728-g2724d1bba6b36451404811fba3244f8897717ef3
  2021-08-05  8:21 [Bug target/101788] New: [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 marxin at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2021-08-11  9:05 ` rguenth at gcc dot gnu.org
@ 2021-08-11 12:10 ` rguenth at gcc dot gnu.org
  2021-08-11 14:25 ` rguenth at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-08-11 12:10 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
What forwprop does is

   <bb 2> [local count: 1073741824]:
   __asm__ __volatile__("" : "=w" y);
-  y.0_1 = y;
-  _6 = BIT_FIELD_REF <y.0_1, 32, 32>;
-  _7 = BIT_FIELD_REF <y.0_1, 32, 64>;
-  _8 = BIT_FIELD_REF <y.0_1, 32, 96>;
-  _9 = BIT_FIELD_REF <y.0_1, 32, 128>;
-  _10 = BIT_FIELD_REF <y.0_1, 32, 160>;
-  _11 = BIT_FIELD_REF <y.0_1, 32, 192>;
-  _12 = BIT_FIELD_REF <y.0_1, 32, 224>;
-  _13 = BIT_FIELD_REF <y.0_1, 32, 0>;
+  _13 = BIT_FIELD_REF <y, 32, 0>;
+  _12 = BIT_FIELD_REF <y, 32, 224>;
+  _11 = BIT_FIELD_REF <y, 32, 192>;
+  _10 = BIT_FIELD_REF <y, 32, 160>;
+  _9 = BIT_FIELD_REF <y, 32, 128>;
+  _8 = BIT_FIELD_REF <y, 32, 96>;
+  _7 = BIT_FIELD_REF <y, 32, 64>;
+  _6 = BIT_FIELD_REF <y, 32, 32>;
   _2 = {_6, _7, _8, _9, _10, _11, _12, _13};
   x = _2;

so we're processing a DECL_HARD_REGISTER here I think and we must avoid
touching / changing accesses to such.  I am testing a patch.

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

* [Bug target/101788] [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 since r12-2728-g2724d1bba6b36451404811fba3244f8897717ef3
  2021-08-05  8:21 [Bug target/101788] New: [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 marxin at gcc dot gnu.org
                   ` (3 preceding siblings ...)
  2021-08-11 12:10 ` rguenth at gcc dot gnu.org
@ 2021-08-11 14:25 ` rguenth at gcc dot gnu.org
  4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-08-11 14:25 UTC (permalink / raw)
  To: gcc-bugs

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

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

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

--- Comment #4 from Richard Biener <rguenth at gcc dot gnu.org> ---
Fixed.  With the following (I mistyped the PR number in the 2nd occurance...)

commit 2cb02e065ff015a69db918eb545a00cd6edf0194 (origin/master, origin/HEAD)
Author: Richard Biener <rguenther@suse.de>
Date:   Wed Aug 11 14:10:52 2021 +0200

    target/101788 - avoid decomposing hard-register "loads"

    This avoids decomposing hard-register accesses that masquerade as
    loads.

    2021-08-11  Richard Biener  <rguenther@suse.de>

            PR target/101877
            * tree-ssa-forwprop.c (pass_forwprop::execute): Do not decompose
            hard-register accesses.

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

end of thread, other threads:[~2021-08-11 14:25 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-08-05  8:21 [Bug target/101788] New: [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 marxin at gcc dot gnu.org
2021-08-05  8:22 ` [Bug target/101788] " marxin at gcc dot gnu.org
2021-08-11  8:25 ` [Bug target/101788] [12 Regression] ICE in extract_bit_field_1 at gcc/expmed.c:1857 since r12-2728-g2724d1bba6b36451404811fba3244f8897717ef3 marxin at gcc dot gnu.org
2021-08-11  9:05 ` rguenth at gcc dot gnu.org
2021-08-11 12:10 ` rguenth at gcc dot gnu.org
2021-08-11 14:25 ` 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).