re PR lto/47259 (LTO and global register variable)

2011-01-12  Richard Guenther  <rguenther@suse.de>

	PR lto/47259
	* lto-streamer-out.c (output_gimple_stmt): Do not wrap
	register variables in a MEM_REF.

From-SVN: r168713
This commit is contained in:
Richard Guenther 2011-01-12 15:01:09 +00:00 committed by Richard Biener
parent 8e38461c76
commit 4b18b3c25b
2 changed files with 8 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2011-01-12 Richard Guenther <rguenther@suse.de>
PR lto/47259
* lto-streamer-out.c (output_gimple_stmt): Do not wrap
register variables in a MEM_REF.
2011-01-12 Joseph Myers <joseph@codesourcery.com>
* config.gcc (arm*-*-linux*, bfin*-uclinux*, bfin*-linux-uclibc*,

View File

@ -1769,7 +1769,8 @@ output_gimple_stmt (struct output_block *ob, gimple stmt)
while (handled_component_p (*basep))
basep = &TREE_OPERAND (*basep, 0);
if (TREE_CODE (*basep) == VAR_DECL
&& !auto_var_in_fn_p (*basep, current_function_decl))
&& !auto_var_in_fn_p (*basep, current_function_decl)
&& !DECL_REGISTER (*basep))
{
bool volatilep = TREE_THIS_VOLATILE (*basep);
*basep = build2 (MEM_REF, TREE_TYPE (*basep),