re PR lto/42665 (Internal compiler exception in with gfortran when using -fwhole-program -flto -fopenmp)

2010-01-14  Richard Guenther  <rguenther@suse.de>

	PR lto/42665
	* gimple.c (iterative_hash_gimple_type): Avoid hashing
	error_mark_node.

From-SVN: r155885
This commit is contained in:
Richard Guenther 2010-01-14 09:38:56 +00:00 committed by Richard Biener
parent 3c7c015805
commit 429c98c9a8
2 changed files with 12 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2010-01-14 Richard Guenther <rguenther@suse.de>
PR lto/42665
* gimple.c (iterative_hash_gimple_type): Avoid hashing
error_mark_node.
2010-01-14 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/42709

View File

@ -3707,8 +3707,12 @@ iterative_hash_gimple_type (tree type, hashval_t val,
/* For integer types hash the types min/max values and the string flag. */
if (TREE_CODE (type) == INTEGER_TYPE)
{
v = iterative_hash_expr (TYPE_MIN_VALUE (type), v);
v = iterative_hash_expr (TYPE_MAX_VALUE (type), v);
/* OMP lowering can introduce error_mark_node in place of
random local decls in types. */
if (TYPE_MIN_VALUE (type) != error_mark_node)
v = iterative_hash_expr (TYPE_MIN_VALUE (type), v);
if (TYPE_MAX_VALUE (type) != error_mark_node)
v = iterative_hash_expr (TYPE_MAX_VALUE (type), v);
v = iterative_hash_hashval_t (TYPE_STRING_FLAG (type), v);
}