re PR target/35839 (Altivec with the vectorizer causes an ICE in rs6000_check_sdmode)

PR target/35839
	* config/rs6000/rs6000.c (rs6000_check_sdmode): Handle additional
	kinds of indirect references.

From-SVN: r134107
This commit is contained in:
Janis Johnson 2008-04-08 21:17:16 +00:00 committed by Janis Johnson
parent 7f62878c1d
commit a0f3928210
2 changed files with 8 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2008-04-08 Janis Johnson <janis187@us.ibm.com>
PR target/35839
* config/rs6000/rs6000.c (rs6000_check_sdmode): Handle additional
kinds of indirect references.
2008-04-08 David Edelsohn <edelsohn@gnu.org> 2008-04-08 David Edelsohn <edelsohn@gnu.org>
* config/rs6000/rs6000.c (rs6000_output_function_epilogue): Update * config/rs6000/rs6000.c (rs6000_output_function_epilogue): Update

View File

@ -11226,9 +11226,6 @@ rs6000_check_sdmode (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED)
return NULL_TREE; return NULL_TREE;
} }
gcc_assert (TREE_CODE (*tp) != ALIGN_INDIRECT_REF);
gcc_assert (TREE_CODE (*tp) != MISALIGNED_INDIRECT_REF);
switch (TREE_CODE (*tp)) switch (TREE_CODE (*tp))
{ {
case VAR_DECL: case VAR_DECL:
@ -11237,6 +11234,8 @@ rs6000_check_sdmode (tree *tp, int *walk_subtrees, void *data ATTRIBUTE_UNUSED)
case RESULT_DECL: case RESULT_DECL:
case REAL_CST: case REAL_CST:
case INDIRECT_REF: case INDIRECT_REF:
case ALIGN_INDIRECT_REF:
case MISALIGNED_INDIRECT_REF:
case VIEW_CONVERT_EXPR: case VIEW_CONVERT_EXPR:
if (TYPE_MODE (TREE_TYPE (*tp)) == SDmode) if (TYPE_MODE (TREE_TYPE (*tp)) == SDmode)
return *tp; return *tp;