diff options
Diffstat (limited to 'gcc/lto-streamer-out.c')
-rw-r--r-- | gcc/lto-streamer-out.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/lto-streamer-out.c b/gcc/lto-streamer-out.c index 7c0029334fd..e471d70bbcd 100644 --- a/gcc/lto-streamer-out.c +++ b/gcc/lto-streamer-out.c @@ -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), |