re PR target/70327 (ICE: in extract_insn, at recog.c:2287 (unrecognizable insn) with -mavx512ifma and v4ti argument)

PR target/70327
	* config/i386/i386.md (movxi): Use ix86_expand_vector_move instead
	of ix86_expand_move.
	(movoi): Ditto.
	(movti): Use general_operand for operand 1 predicate.

testsuite/ChangeLog:

	PR target/70327
	* gcc.target/i386/pr70327.c: New test.

From-SVN: r234380
This commit is contained in:
Uros Bizjak 2016-03-21 20:56:50 +01:00
parent 60d15bae0c
commit 4a148e19be
4 changed files with 46 additions and 20 deletions

View File

@ -1,3 +1,11 @@
2016-03-21 Uros Bizjak <ubizjak@gmail.com>
PR target/70327
* config/i386/i386.md (movxi): Use ix86_expand_vector_move instead
of ix86_expand_move.
(movoi): Ditto.
(movti): Use general_operand for operand 1 predicate.
2016-03-21 Martin Liska <mliska@suse.cz>
* hsa-dump.c (dump_hsa_insn_1): dump default branch of SBR
@ -32,7 +40,7 @@
2016-03-21 Kirill Yukhin <kirill.yukhin@intel.com>
PR target/70293
* config/i386/sse.md: (define_insn "*vec_dup<mode>"/AVX2):
* config/i386/sse.md: (define_insn "*vec_dup<mode>"/AVX2):
Block third alternative for AVX-512VL target,
2016-03-21 Martin Liska <mliska@suse.cz>
@ -55,7 +63,7 @@
PR rtl-optimization/69102
* sched-deps.c (sched_analyze_insn): Do not set last_args_size field
when we have a readonly dependency context.
when we have a readonly dependency context.
2016-03-18 Jeff Law <law@redhat.com>
@ -67,7 +75,7 @@
the REG_EQUIV note created in the dump file.
2016-03-16 David Wohlferd <dw@LimeGreenSocks.com>
Bernd Schmidt <bschmidt@redhat.com>
Bernd Schmidt <bschmidt@redhat.com>
* doc/extend.texi: Document more potential problems with basic asms.
@ -83,8 +91,8 @@
2016-03-18 Kirill Yukhin <kirill.yukhin@intel.com>
* config/i386/sse.md: Use vpbroadcastq for broadcasting DF
values to 128b regs.
* config/i386/sse.md: Use vpbroadcastq for broadcasting DF
values to 128b regs.
2016-03-18 Ilya Enkovich <enkovich.gnu@gmail.com>
@ -564,7 +572,8 @@
2016-03-10 Jan Hubicka <hubicka@ucw.cz>
PR lto/69589
* cgraph.c (cgraph_node::dump): Dump split_part and indirect_call_target.
* cgraph.c (cgraph_node::dump): Dump split_part and
indirect_call_target.
* cgraph.h (cgraph_node): Add indirect_call_target flag.
* ipa.c (has_addr_references_p): Cleanup.
(is_indirect_call_target_p): New.

View File

@ -1872,14 +1872,6 @@
(set_attr "mode" "<MODE>")])
;; Move instructions.
(define_expand "movxi"
[(set (match_operand:XI 0 "nonimmediate_operand")
(match_operand:XI 1 "general_operand"))]
"TARGET_AVX512F"
"ix86_expand_move (XImode, operands); DONE;")
;; Reload patterns to support multi-word load/store
;; with non-offsetable address.
(define_expand "reload_noff_store"
@ -1914,15 +1906,23 @@
DONE;
})
;; Move instructions.
(define_expand "movxi"
[(set (match_operand:XI 0 "nonimmediate_operand")
(match_operand:XI 1 "general_operand"))]
"TARGET_AVX512F"
"ix86_expand_vector_move (XImode, operands); DONE;")
(define_expand "movoi"
[(set (match_operand:OI 0 "nonimmediate_operand")
(match_operand:OI 1 "general_operand"))]
"TARGET_AVX"
"ix86_expand_move (OImode, operands); DONE;")
"ix86_expand_vector_move (OImode, operands); DONE;")
(define_expand "movti"
[(set (match_operand:TI 0 "nonimmediate_operand")
(match_operand:TI 1 "nonimmediate_operand"))]
(match_operand:TI 1 "general_operand"))]
"TARGET_64BIT || TARGET_SSE"
{
if (TARGET_64BIT)

View File

@ -1,8 +1,13 @@
2016-03-21 Uros Bizjak <ubizjak@gmail.com>
PR target/70327
* gcc.target/i386/pr70327.c: New test.
2016-03-21 Martin Liska <mliska@suse.cz>
* gcc.dg/ipa/pr70306.c: New test.
2016-03-21 Andre Vieira <andre.simoesdiasvieira@arm>
2016-03-21 Andre Vieira <andre.simoesdiasvieira@arm.com>
* gcc.target/arm/attr-align1.c: Skip if M-profile.
* gcc.target/arm/attr-align3.c: Likewise.
@ -34,7 +39,7 @@
PR rtl-optimization/69307
* gcc.target/arm/pr69307.c: New test.
2016-03-21 Andrey Belevantsev <abel@ispras.ru>
PR rtl-optimization/69102
@ -259,7 +264,7 @@
2016-03-15 Andrey Belevantsev <abel@ispras.ru>
PR rtl-optimization/63384
* g++.dg/pr63384.C: New test.
* g++.dg/pr63384.C: New test.
2016-03-15 Andrey Belevantsev <abel@ispras.ru>
@ -607,7 +612,7 @@
* gcc.target/arm/pr45701-2.c: Likewise.
2016-02-26 Richard Biener <rguenther@suse.de>
Jeff Law <law@redhat.com>
Jeff Law <law@redhat.com>
PR tree-optimization/69740
* gcc.c-torture/compile/pr69740-1.c: New test.

View File

@ -0,0 +1,12 @@
/* PR target/70327 */
/* { dg-do compile } */
/* { dg-require-effective-target int128 } */
/* { dg-options "-mavx512f" } */
typedef unsigned __int128 v4ti __attribute__ ((vector_size (64)));
void
foo (v4ti v)
{
foo(v);
}