Commit 82677400 by Richard Biener

re PR tree-optimization/43879 (-fipa-pta causes various miscompilations)

2010-04-30  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/43879
	* tree-ssa-structalias.c (type_could_have_pointers): Functions
	can have pointers.

From-SVN: r158945
parent cd71491e
2010-04-30 Richard Guenther <rguenther@suse.de>
PR tree-optimization/43879
* tree-ssa-structalias.c (type_could_have_pointers): Functions
can have pointers.
2010-04-30 Jan Hubicka <jh@suse.cz> 2010-04-30 Jan Hubicka <jh@suse.cz>
* lto-symtab.c (lto_symtab_resolve_can_prevail_p): Chose var with varpool. * lto-symtab.c (lto_symtab_resolve_can_prevail_p): Chose var with
varpool.
(lto_symtab_merge_decls_1): Remove logic looking for an initializer. (lto_symtab_merge_decls_1): Remove logic looking for an initializer.
2010-04-30 Jan Hubicka <jh@suse.cz> 2010-04-30 Jan Hubicka <jh@suse.cz>
* cgraph.h (cgraph_node_set_nonempty_p, varpool_node_set_nonempty_p): New. * cgraph.h (cgraph_node_set_nonempty_p, varpool_node_set_nonempty_p):
New.
* lto-cgraph.c (input_cgraph): Remove call to lto_mark_file_for_ltrans. * lto-cgraph.c (input_cgraph): Remove call to lto_mark_file_for_ltrans.
* lto-streamer.h (lto_file_decl_data): Remove needs_ltrans_p. * lto-streamer.h (lto_file_decl_data): Remove needs_ltrans_p.
(lto_file_needs_ltrans_p, lto_mark_file_for_ltrans, (lto_file_needs_ltrans_p, lto_mark_file_for_ltrans,
......
...@@ -2940,6 +2940,12 @@ type_could_have_pointers (tree type) ...@@ -2940,6 +2940,12 @@ type_could_have_pointers (tree type)
if (TREE_CODE (type) == ARRAY_TYPE) if (TREE_CODE (type) == ARRAY_TYPE)
return type_could_have_pointers (TREE_TYPE (type)); return type_could_have_pointers (TREE_TYPE (type));
/* A function or method can consume pointers.
??? We could be more precise here. */
if (TREE_CODE (type) == FUNCTION_TYPE
|| TREE_CODE (type) == METHOD_TYPE)
return true;
return AGGREGATE_TYPE_P (type); return AGGREGATE_TYPE_P (type);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment