re PR debug/45500 (ICE: in rtl_for_decl_init, at dwarf2out.c:16307 with -g -msse and using v16qi)

PR debug/45500
	* dwarf2out.c (rtl_for_decl_init): Give up for all generic vectors,
	not just generic vectors with BLKmode.

	* gcc.target/i386/pr45500.c: New test.

From-SVN: r163803
This commit is contained in:
Jakub Jelinek 2010-09-03 11:53:44 +02:00 committed by Jakub Jelinek
parent 4d948885d0
commit 2f757e4a8b
4 changed files with 19 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2010-09-03 Jakub Jelinek <jakub@redhat.com>
PR debug/45500
* dwarf2out.c (rtl_for_decl_init): Give up for all generic vectors,
not just generic vectors with BLKmode.
2010-09-03 Richard Guenther <rguenther@suse.de>
* tree.def (TARGET_MEM_REF): Merge TMR_SYMBOL and TMR_BASE.

View File

@ -16256,7 +16256,8 @@ rtl_for_decl_init (tree init, tree type)
;
/* Vectors only work if their mode is supported by the target.
FIXME: generic vectors ought to work too. */
else if (TREE_CODE (type) == VECTOR_TYPE && TYPE_MODE (type) == BLKmode)
else if (TREE_CODE (type) == VECTOR_TYPE
&& !VECTOR_MODE_P (TYPE_MODE (type)))
;
/* If the initializer is something that we know will expand into an
immediate RTL constant, expand it now. We must be careful not to

View File

@ -1,3 +1,8 @@
2010-09-03 Jakub Jelinek <jakub@redhat.com>
PR debug/45500
* gcc.target/i386/pr45500.c: New test.
2010-09-03 Mingjie Xing <mingjie.xing@gmail.com>
* gcc.target/mips/loongson-shift-count-truncated-1.c: New.

View File

@ -0,0 +1,6 @@
/* PR debug/45500 */
/* { dg-do compile } */
/* { dg-options "-g -msse" } */
typedef char V __attribute__ ((__vector_size__ (16)));
static const V s = { '\n', '\r', '?', '\\' };