summaryrefslogtreecommitdiffstats
path: root/gcc/c-iterate.c
diff options
context:
space:
mode:
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>1996-03-19 00:14:36 +0000
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>1996-03-19 00:14:36 +0000
commitf343e0be28b75d0afc216dd316909f178eb43a7c (patch)
tree2712f6361ecb69685dda055e3d551712739f0d40 /gcc/c-iterate.c
parent2d710b2867d4878c95881fc9ebe339ac1c608648 (diff)
downloadppe42-gcc-f343e0be28b75d0afc216dd316909f178eb43a7c.tar.gz
ppe42-gcc-f343e0be28b75d0afc216dd316909f178eb43a7c.zip
(iterator_loop_epilogue): Don't clear DECL_RTL for a static decl.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@11554 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-iterate.c')
-rw-r--r--gcc/c-iterate.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/c-iterate.c b/gcc/c-iterate.c
index b35a167a46c..7fe7a123e17 100644
--- a/gcc/c-iterate.c
+++ b/gcc/c-iterate.c
@@ -1,5 +1,5 @@
/* Build expressions with type checking for C compiler.
- Copyright (C) 1987, 1988, 1989, 1992, 1993 Free Software Foundation, Inc.
+ Copyright (C) 1987, 88, 89, 92, 93, 1996 Free Software Foundation, Inc.
This file is part of GNU CC.
@@ -343,7 +343,9 @@ iterator_loop_epilogue (idecl, start_note, end_note)
ITERATOR_BOUND_P (idecl) = 0;
/* we can reset rtl since there is not chance that this expansion */
/* would be superseded by a higher level one */
- if (top_level_ixpansion_p ())
+ /* but don't do this if the decl is static, since we need to share */
+ /* the same decl in that case. */
+ if (top_level_ixpansion_p () && ! TREE_STATIC (idecl))
DECL_RTL (idecl) = 0;
if (end_note)
*end_note = emit_note (0, NOTE_INSN_DELETED);
OpenPOWER on IntegriCloud