aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorJakub Jelinek <jakub@redhat.com>2009-09-23 15:06:20 +0200
committerJakub Jelinek <jakub@gcc.gnu.org>2009-09-23 15:06:20 +0200
commit66f0e027f5e62a7157c7aa2f6b79f8f8979eac9c (patch)
treed9a79c4cc207b6bff07aef660ab3e1cbfc61eec3 /gcc
parentd4c74acca962d79a1c7535ad0594f658a30ea370 (diff)
downloadgcc-66f0e027f5e62a7157c7aa2f6b79f8f8979eac9c.zip
gcc-66f0e027f5e62a7157c7aa2f6b79f8f8979eac9c.tar.gz
gcc-66f0e027f5e62a7157c7aa2f6b79f8f8979eac9c.tar.bz2
re PR bootstrap/41436 (Revision 152018 failed to bootstrap on i386)
PR bootstrap/41436 * cgraphunit.c (cgraph_lower_function): Set DECL_NO_STATIC_CHAIN on non-nested functions. From-SVN: r152067
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/cgraphunit.c5
2 files changed, 11 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index ccab5ac..8771bd5 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,4 +1,10 @@
2009-09-23 Jakub Jelinek <jakub@redhat.com>
+
+ PR bootstrap/41436
+ * cgraphunit.c (cgraph_lower_function): Set DECL_NO_STATIC_CHAIN
+ on non-nested functions.
+
+2009-09-23 Jakub Jelinek <jakub@redhat.com>
Jan Hubicka <jh@suse.cz>
* dwarf2out.c (loc_list_plus_const): Only define if
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index 2ad0718..890737a 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -498,6 +498,11 @@ cgraph_lower_function (struct cgraph_node *node)
lower_nested_functions (node->decl);
gcc_assert (!node->nested);
+ /* Non-nested functions never need a static chain. */
+ if (!DECL_NO_STATIC_CHAIN (node->decl)
+ && decl_function_context (node->decl) == NULL)
+ DECL_NO_STATIC_CHAIN (node->decl) = 1;
+
tree_lowering_passes (node->decl);
node->lowered = true;
}