diff options
author | Martin Jambor <mjambor@suse.cz> | 2011-04-15 20:20:46 +0200 |
---|---|---|
committer | Martin Jambor <jamborm@gcc.gnu.org> | 2011-04-15 20:20:46 +0200 |
commit | 8e5837bc114ab38055017e6825724ffbaa277305 (patch) | |
tree | 9a2e3a1d850e71eedb480a938fd8fa11d6d536aa /gcc | |
parent | 0dc33c3c14650fa55f60b08fdfe4aaeba5c0c9bc (diff) | |
download | gcc-8e5837bc114ab38055017e6825724ffbaa277305.zip gcc-8e5837bc114ab38055017e6825724ffbaa277305.tar.gz gcc-8e5837bc114ab38055017e6825724ffbaa277305.tar.bz2 |
re PR middle-end/48601 (ICE in lower_emutls_function_body, at tree-emutls.c:623)
2011-04-15 Martin Jambor <mjambor@suse.cz>
PR middle-end/48601
* tree-emutls.c (lower_emutls_function_body): Call
cgraph_get_create_node instead of cgraph_get_node. Do not assert the
result is non-NULL.
From-SVN: r172512
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/tree-emutls.c | 5 |
2 files changed, 10 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f047ac3..85af683 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2011-04-15 Martin Jambor <mjambor@suse.cz> + + PR middle-end/48601 + * tree-emutls.c (lower_emutls_function_body): Call + cgraph_get_create_node instead of cgraph_get_node. Do not assert the + result is non-NULL. + 2011-04-15 Nicola Pero <nicola.pero@meta-innovation.com> * c-decl.c (detect_field_duplicates): Call diff --git a/gcc/tree-emutls.c b/gcc/tree-emutls.c index cc01fb3..d295249 100644 --- a/gcc/tree-emutls.c +++ b/gcc/tree-emutls.c @@ -619,8 +619,9 @@ lower_emutls_function_body (struct cgraph_node *node) d.cfun_node = node; d.builtin_decl = built_in_decls[BUILT_IN_EMUTLS_GET_ADDRESS]; - d.builtin_node = cgraph_get_node (d.builtin_decl); - gcc_checking_assert (d.builtin_node); + /* This is where we introduce the declaration to the IL and so we have to + create a node for it. */ + d.builtin_node = cgraph_get_create_node (d.builtin_decl); FOR_EACH_BB (d.bb) { |