summaryrefslogtreecommitdiff
path: root/gcc/c/c-decl.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2014-06-15 23:38:29 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2014-06-15 23:38:29 +0000
commit5e68df578ad6cec465d80c7df9fb970b9bd4a5b8 (patch)
tree997fbc019bd9db4f0a5a593250dbf13e6ebe406e /gcc/c/c-decl.c
parent72ce53904e04cff14847c817935f942abde22d7e (diff)
downloadgcc-5e68df578ad6cec465d80c7df9fb970b9bd4a5b8.tar.gz
* c-family/c-common.c (handle_tls_model_attribute): Use set_decl_tls_model.
* cgraph.h (struct varpool_node): Add tls_model. * tree.c (decl_tls_model, set_decl_tls_model): New functions. * tree.h (DECL_TLS_MODEL): Update. (DECL_THREAD_LOCAL_P): Check that variable is static. (decl_tls_model): Declare. (set_decl_tls_model): Declare. * tree-emutls.c (get_emutls_init_templ_addr): First build decl and then set symbol prorperties. (get_emutls_init_templ_addr): Cleanup. (new_emutls_decl): Update. * lto-cgraph.c (lto_output_varpool_node): Stream TLS model (lto_input_varpool_node): Likewise. * lto-streamer-out.c (hash_tree): Likewise. * tree-streamer-in.c (unpack_ts_decl_with_vis_value_fields): Do not stream DECL_TLS_MODEL. * tree-profile.c (init_ic_make_global_vars): Use set_decl_tls_model. * tree-core.h (tree_decl_with_vis): Remove tls_model; update comments. * c-parser.c (c_parser_omp_threadprivate): Likewise. * c-decl.c (merge_decls): Likewise. * decl.c (duplicate_decls): Use set_decl_tls_model. (grokdeclarator): Likewise. * semantics.c (finish_id_expression): Check TLS only for static variables. (finish_omp_threadprivate): Use decl_default_tls_model. * decl2.c (get_guard): Likewise. * call.c (make_temporary_var_for_ref_to_temp): Likewise. * gcc-interface/utils.c (process_attributes): Use set_decl_tls_model. * trans-common.c (build_common_decl): Use set_decl_tls_model. * trans-decl.c (gfc_finish_var_decl): Likewise. (get_proc_pointer_decl): Likewise. * lto.c (compare_tree_sccs_1): Do not compare DECL_TLS_MODEL. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@211689 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c/c-decl.c')
-rw-r--r--gcc/c/c-decl.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/c/c-decl.c b/gcc/c/c-decl.c
index 4acb4f9f50d..34560308b83 100644
--- a/gcc/c/c-decl.c
+++ b/gcc/c/c-decl.c
@@ -2294,7 +2294,7 @@ merge_decls (tree newdecl, tree olddecl, tree newtype, tree oldtype)
/* Merge the threadprivate attribute. */
if (TREE_CODE (olddecl) == VAR_DECL && C_DECL_THREADPRIVATE_P (olddecl))
{
- DECL_TLS_MODEL (newdecl) = DECL_TLS_MODEL (olddecl);
+ set_decl_tls_model (newdecl, DECL_TLS_MODEL (olddecl));
C_DECL_THREADPRIVATE_P (newdecl) = 1;
}
@@ -6345,7 +6345,7 @@ grokdeclarator (const struct c_declarator *declarator,
}
if (threadp)
- DECL_TLS_MODEL (decl) = decl_default_tls_model (decl);
+ set_decl_tls_model (decl, decl_default_tls_model (decl));
}
if ((storage_class == csc_extern