diff options
author | Jakub Jelinek <jakub@redhat.com> | 2009-09-16 15:35:23 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2009-09-16 15:35:23 +0200 |
commit | e038c37bb97c516378e39af6b04625dd6751ec00 (patch) | |
tree | acd920f03875af25ce83628a925f24d939583130 | |
parent | 4928d38f15be8e82aa458635126c490cb8d8e876 (diff) | |
download | gcc-e038c37bb97c516378e39af6b04625dd6751ec00.zip gcc-e038c37bb97c516378e39af6b04625dd6751ec00.tar.gz gcc-e038c37bb97c516378e39af6b04625dd6751ec00.tar.bz2 |
integrate.c (set_block_abstract_flags): Call set_decl_abstract_flags also on BLOCK_NONLOCALIZED_VARs.
* integrate.c (set_block_abstract_flags): Call
set_decl_abstract_flags also on BLOCK_NONLOCALIZED_VARs.
From-SVN: r151753
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/integrate.c | 9 |
2 files changed, 14 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 00f964e..c8d8846 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2009-09-16 Jakub Jelinek <jakub@redhat.com> + + * integrate.c (set_block_abstract_flags): Call + set_decl_abstract_flags also on BLOCK_NONLOCALIZED_VARs. + 2009-09-16 Richard Guenther <rguenther@suse.de> PR middle-end/34011 diff --git a/gcc/integrate.c b/gcc/integrate.c index 30ef854..d92cec5 100644 --- a/gcc/integrate.c +++ b/gcc/integrate.c @@ -167,6 +167,7 @@ set_block_abstract_flags (tree stmt, int setting) { tree local_decl; tree subblock; + unsigned int i; BLOCK_ABSTRACT (stmt) = setting; @@ -175,6 +176,14 @@ set_block_abstract_flags (tree stmt, int setting) local_decl = TREE_CHAIN (local_decl)) set_decl_abstract_flags (local_decl, setting); + for (i = 0; i < BLOCK_NUM_NONLOCALIZED_VARS (stmt); i++) + { + local_decl = BLOCK_NONLOCALIZED_VAR (stmt, i); + if ((TREE_CODE (local_decl) == VAR_DECL && !TREE_STATIC (local_decl)) + || TREE_CODE (local_decl) == PARM_DECL) + set_decl_abstract_flags (local_decl, setting); + } + for (subblock = BLOCK_SUBBLOCKS (stmt); subblock != NULL_TREE; subblock = BLOCK_CHAIN (subblock)) |