diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1996-03-18 19:14:36 -0500 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1996-03-18 19:14:36 -0500 |
commit | 8a12c32ded7c9132d2323abf501a31fa6274a3e1 (patch) | |
tree | 2712f6361ecb69685dda055e3d551712739f0d40 /gcc | |
parent | 8ba46994402301b3a92c97a3a6dadadc6b073965 (diff) | |
download | gcc-8a12c32ded7c9132d2323abf501a31fa6274a3e1.zip gcc-8a12c32ded7c9132d2323abf501a31fa6274a3e1.tar.gz gcc-8a12c32ded7c9132d2323abf501a31fa6274a3e1.tar.bz2 |
(iterator_loop_epilogue): Don't clear DECL_RTL for a static decl.
From-SVN: r11554
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/c-iterate.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/c-iterate.c b/gcc/c-iterate.c index b35a167..7fe7a12 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); |