[Bug target/84845] [8 Regression] ICE: in extract_insn, at recog.c:2304: unrecognizable insn at -O2 and above at aarch64

2018-03-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84845

--- Comment #5 from Jakub Jelinek  ---
Author: jakub
Date: Tue Mar 20 10:59:26 2018
New Revision: 258678

URL: https://gcc.gnu.org/viewcvs?rev=258678&root=gcc&view=rev
Log:
PR target/84845
* config/aarch64/aarch64.md (*aarch64_reg_3_neg_mask2): Rename
to ...
(*aarch64__reg_3_neg_mask2): ... this.  If pseudos can't
be created, use lowpart_subreg of operands[0] rather than operands[0]
itself.
(*aarch64_reg_3_minus_mask): Rename to ...
(*aarch64_ashl_reg_3_minus_mask): ... this.
(*aarch64__reg_di3_mask2): Use const_int_operand predicate
and n constraint instead of aarch64_shift_imm_di and Usd.
(*aarch64_reg__minus3): Rename to ...
(*aarch64__reg_minus3): ... this.

* gcc.c-torture/compile/pr84845.c: New test.

Added:
trunk/gcc/testsuite/gcc.c-torture/compile/pr84845.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/aarch64/aarch64.md
trunk/gcc/testsuite/ChangeLog

[Bug target/84845] [8 Regression] ICE: in extract_insn, at recog.c:2304: unrecognizable insn at -O2 and above at aarch64

2018-03-14 Thread ktkachov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84845

ktkachov at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 CC||ktkachov at gcc dot gnu.org
 Resolution|--- |DUPLICATE

--- Comment #4 from ktkachov at gcc dot gnu.org ---
Dup.

*** This bug has been marked as a duplicate of bug 84164 ***

[Bug target/84845] [8 Regression] ICE: in extract_insn, at recog.c:2304: unrecognizable insn at -O2 and above at aarch64

2018-03-13 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84845

Jakub Jelinek  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |jakub at gcc dot gnu.org

--- Comment #3 from Jakub Jelinek  ---
Created attachment 43645
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=43645&action=edit
gcc8-pr84845.patch

Untested fix.

[Bug target/84845] [8 Regression] ICE: in extract_insn, at recog.c:2304: unrecognizable insn at -O2 and above at aarch64

2018-03-13 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84845

--- Comment #2 from Jakub Jelinek  ---
First of all, I'd say it is very weird not to include the actual operation name
in the instruction name, that is the most important part.

So something like:
--- gcc/config/aarch64/aarch64.md.jj2018-03-13 00:38:26.0 +0100
+++ gcc/config/aarch64/aarch64.md   2018-03-13 18:08:23.513894885 +0100
@@ -4262,7 +4262,7 @@
   [(set_attr "type" "shift_reg")]
 )

-(define_insn_and_split "*aarch64_reg_3_neg_mask2"
+(define_insn_and_split "*aarch64__reg_3_neg_mask2"
   [(set (match_operand:GPI 0 "register_operand" "=&r")
(SHIFT:GPI
  (match_operand:GPI 1 "register_operand" "r")
@@ -4286,7 +4286,7 @@
   }
 )

-(define_insn_and_split "*aarch64_reg_3_minus_mask"
+(define_insn_and_split "*aarch64_ashl_reg_3_minus_mask"
   [(set (match_operand:GPI 0 "register_operand" "=&r")
(ashift:GPI
  (match_operand:GPI 1 "register_operand" "r")
@@ -4333,7 +4333,7 @@
   [(set_attr "type" "shift_reg")]
 )

-(define_insn_and_split "*aarch64_reg__minus3"
+(define_insn_and_split "*aarch64__reg_minus3"
   [(set (match_operand:GPI 0 "register_operand" "=&r")
(ASHIFT:GPI
  (match_operand:GPI 1 "register_operand" "r")

[Bug target/84845] [8 Regression] ICE: in extract_insn, at recog.c:2304: unrecognizable insn at -O2 and above at aarch64

2018-03-13 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84845

Jakub Jelinek  changed:

   What|Removed |Added

   Priority|P3  |P1
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2018-03-13
 CC||jakub at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from Jakub Jelinek  ---
Started with r249774.

[Bug target/84845] [8 Regression] ICE: in extract_insn, at recog.c:2304: unrecognizable insn at -O2 and above at aarch64

2018-03-13 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84845

Richard Biener  changed:

   What|Removed |Added

   Target Milestone|--- |8.0